Trying to use a variable as argument to .Files.Glob to get to a subdirectory

I tried this
apiVersion: v1
kind: Secret
metadata:
  name: "{{ .Values.projectName }}-secret"
type: Opaque
data:
{{ (.Files.Glob "certs/{{ .Values.env }}/*").AsSecrets | indent 2 }}

and this
apiVersion: v1
kind: Secret
metadata:
  name: "{{ .Values.projectName }}-secret"
type: Opaque
data:
{{ (.Files.Glob (printf "certs/%s/*" .Values.env | quote)).AsSecrets | indent 2 }}

helm install --dry-run --debug . --set env=deva-fas,projectName=testing
ls certs/deva-fas/*
certs/deva-fas/keystore.jks
certs/deva-fas/truststore.jks
I don't get any errors with either of the above but data: is empty {}
I'm stuck on this for a couple days.  I couldn't find any examples on the web using a variable as an arugment to .Files.Glob
Any help is much appreciated

A colleague just helped me out.
This is working.
apiVersion: v1
kind: Secret
metadata:
  name: "{{ .Values.projectName }}-secret"
type: Opaque
data:
{{- $path := printf "certs/%s/*" .Values.env }}
{{ (.Files.Glob $path).AsSecrets | indent 2 }}


Remove TritonGPUToLLVMBase.h to be synchronize with upstream

OpenAI upstream commit https://github.com/intel/intel-xpu-backend-for-triton/commit/2dd9d74527f431e5e822b8e67c01900e4d0bfef3 removes TritonGPUToLLVMBase.h, we added Target target in ConvertTritonGPUOpToLLVMPatternBase, so TritonGPUToLLVMBase.h cannot be easily removed.
The upstream commit is temporarily reverted in https://github.com/intel/intel-xpu-backend-for-triton/pull/452/commits/1c917d3d246b0dacac4a5e3f23c5c061b32001f4.
This issue is to properly handle the removal of TritonGPUToLLVMBase.h.

Do you plan to do that for all lowering patterns, or limit to the ones that we specialized for Target::GENX?
And what happens to patterns that we specialized only partially? My main concern is when merging new commits from upstream, it could make it more difficult to ensure our copied pattern is with the updated code.

Only for those specialized for the target.

And what happens to patterns that we specialized only partially?

Those will exist as they are in the upstream by default. Some duplication will be present in our implementation.
Here's a simple example https://github.com/intel/intel-xpu-backend-for-triton/compare/llvm-target...pakurapo/target-removal I suspect this might be even easier for merging since we only add stuff. It complicates tracking original changes in partially specialized ones, but only in a way that the code is now not in one place.

My concern is that often we have common code after or before those switch(target) sections. Currently we are able to leverage code changes, improvement, bug fixes from OpenAI exactly because of the way we have specialized only some code sections.
Factoring out functions that we have specialized in their entirety is fine. But we do not want to replace functions with our own copy if they contain common code.

Agreed, this is my last point from the previous comment. We can avoid duplicating by some abstraction, but that would not help with merging.
There's an option to put the target in the type converter, however the solution is not great. Conceptually, these conversions are different, so it makes sense to factor them out. So I wonder if the risk of missing the updates to these partially changed conversions is realizable. I found one update in the history that improves implementation, however it was a complete rewrite.

Putting the target into the type converter is also not an option. It is replaced by the default one in the upstream.
I tried reverting the reverted commit. Spent a couple of hours fixing conflicts, added some hacky target resolution, and still ended up with a completely broken code. Will try to do it step by step now.

One more find. There are regressions when I switch to the new utils implementations. I'll peel off everything without regressions and push it. Then work through the rest.

Alright, this doesn't make any sense to do. I'll migrate our code to Triton's current backend layout instead.


Use newest version of pyright, ignored a lot of errors, identified some bugs

I worked through the errors pyright raises on the newest version. I used very small commits to be able to cherry pick if we only want to go with some of the decisions I made. You can rerun stuff with pyright locally (you can also find the errors in the CI run).
I believe that the remaining errors are actual errors for which we don't have unit tests currently (I tagged the people who seem to be responsible for those parts of the code):

@gmoss13 Error in analysis/conditional_density.py:
https://github.com/sbi-dev/sbi/blob/1d25046a6a9834df28df7c142d2b072442921836/sbi/analysis/conditional_density.py#L209
Here you assume that the network of your new DensityEstimator has the same interface as Flow. As an example, I would assume that the general nn.Module doesn't necessarily has the _distribution attribute we access later on:
https://github.com/sbi-dev/sbi/blob/1d25046a6a9834df28df7c142d2b072442921836/sbi/utils/conditional_density_utils.py#L179
@gmoss13 Error in neural_nets/mnle.py:
https://github.com/sbi-dev/sbi/blob/c347d5c3415effef2b8ff296f23c1bb4128cd5e9/sbi/neural_nets/mnle.py#L96
This error currently only says that the __init__ of MixedDensityEstimator doesn't expect aNFlowsFlow:
https://github.com/sbi-dev/sbi/blob/c347d5c3415effef2b8ff296f23c1bb4128cd5e9/sbi/neural_nets/mnle.py#L217
The obvious thing would be to add it as a possible type but the problem is that the used calls to sample, e.g.
https://github.com/sbi-dev/sbi/blob/c347d5c3415effef2b8ff296f23c1bb4128cd5e9/sbi/neural_nets/mnle.py#L265
are not compatible to your DensityEstimator.
@janfb Errors in utils/user_input_checks.py and user_input_checks_utils.py:
https://github.com/sbi-dev/sbi/blob/c347d5c3415effef2b8ff296f23c1bb4128cd5e9/sbi/utils/user_input_checks_utils.py#L151
You assume that univariate and multivariate random variables have the same interface. I've already added a failing test in https://github.com/sbi-dev/sbi/commit/b455a7f116e2aeb0f60ae33a0b64bbb2fc3a38f3
Maybe it's worth having another look into e9d8dff7e65513ed994ec0117e70ea06cb2e2431 as it was unclear to me if LazyTransform and AffineTransform | Unconditional are compatible.

Feel free to fix things directly in this PR or create issues for those problems. We won't be able to merge this PR before fixing them.
Fixes #847
Checklist

[x] I agree with re-licensing my contribution from AGPLv3 to Apache-2.0.
[x] I performed linting and formatting as described in the contribution
guidelines

Thanks @Baschdl, great work! Some comments:

@gmoss13 Error in analysis/conditional_density.py:
sbi/sbi/analysis/conditional_density.py
Line 209 in 1d25046
logits, means, precfs, _ = extract_and_transform_mog(net=mdn.net, context=x_o)
Here you assume that the network of your new DensityEstimator has the same interface as Flow. As an example, I would assume that the general nn.Module doesn't necessarily has the _distribution attribute we access later on:
sbi/sbi/utils/conditional_density_utils.py
Line 179 in 1d25046
dist = net._distribution

These functions only apply to mixture density networks - and should only be called when the density estimator is an MDN. Our implementation of MDN is using normflows, and so this function should only be called when the DensityEstimator is specifically an instance of NFlowsFlow. I can jump in here and explicitly change the type for the mdn argument, and clarify this point in the docstring.

@gmoss13 Error in neural_nets/mnle.py:
sbi/sbi/neural_nets/mnle.py
Line 96 in c347d5c
continuous_net=cont_nle,
This error currently only says that the init of MixedDensityEstimator doesn't expect aNFlowsFlow:
sbi/sbi/neural_nets/mnle.py
Line 217 in c347d5c
continuous_net: flows.Flow,
The obvious thing would be to add it as a possible type but the problem is that the used calls to sample, e.g.
sbi/sbi/neural_nets/mnle.py
Line 265 in c347d5c
continuous_x = self.continuous_net.sample(
are not compatible to your DensityEstimator.

Yes - this should resolved by updating the MixedDensityEstimator to the new DensityEstimator interface (see #968) - so I suggest we wait for #968 to be resolved before merging this.


241 coregistration

Closes #248
Closes #224
Closes #241
The coregistration operation has been overhauled. It now handles NaN values properly, does more extensive input checking, as well as works on arbitrary data subsets.
UC09 notebook has been updated and is again working. In addition, UC09 scripts for Windows and *nix have been finished and tested to work on Linux. @forman can you check if the Windows one works as well?

Codecov Report

Merging #253 into master will increase coverage by 0.11%.
The diff coverage is 96.96%.

@@            Coverage Diff             @@
##           master     #253      +/-   ##
==========================================
+ Coverage   71.17%   71.29%   +0.11%
==========================================
  Files          69       69
  Lines        9420     9458      +38
==========================================
+ Hits         6705     6743      +38
  Misses       2715     2715

Impacted Files
Coverage Δ

cate/ops/coregistration.py
97.82% <96.96%> (-2.18%)
:arrow_down:

cate/core/workflow.py
94.28% <0%> (-0.04%)
:arrow_down:

cate/core/workspace.py
53.19% <0%> (+0.15%)
:arrow_up:

cate/ops/resampling.py
62.71% <0%> (+0.28%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 18a80f3...c40947e. Read the comment docs.

I'll take the liberty and merge this. We can always open new issues for improvements.


format has no effect

Giving a format has no effect. It still puts the default format to the input after selecting a date.
Initialized like this:
jQuery('.datepicker').datepicker({
format: 'yyyy-mm-dd'
});

Please check your own code for the reason.


New Grammars Compiler

Alright! Here's the new grammars compiler I've been working on. The old Ruby script/convert-grammars has been replaced by an actual compiler written in Go. The source code can be found in tools/grammars/.
To note:

The compiler is being distributed as a Docker image, linguist/grammars-compiler:latest on Docker.io. The image is self-contained (duh) and includes all the dependencies, most notably NPM and the CSON parser it needs to run. package.json has been removed from this repository because eek.

The new script/grammars-compiler is a thin wrapper over running the Docker image with the arguments you pass in.

The main goal of the compiler is ensuring that all the grammars we add to Linguist are sensible and not malformed. This was not the case previously. I've had to manually send PRs to many upstream repositories with different fixes for issues that the compiler has detected. Their corresponding submodules have been upgraded in https://github.com/github/linguist/commit/d08375d11bff726762b087bf0a1947f8903d74fd

The compiler also normalizes the grammars into a fixed schema, removing superfluous keys and unifying content structures. This schema is serializable to JSON (like the old compiler) or to a Protobuf library, which we're going to start using internally.

As it stands, this build is now green, although the compilation step is not fully "clean" yet. I'm going to open another issue with a list of outstanding issues in the existing grammars.

cc @github/linguist

The new compiler can output

Here are all the known issues in existing grammars that the compiler is detecting:
$ ./script/grammar-compiler
 299 / 299 [===================================================================================================================] 100.00% 7s
done! 437 scopes converted from 299 grammars (34 errors)

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/sublime-spintools/Spin.tmLanguage
	keys: [bundleUUID]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/pike-textmate/Pike.tmbundle/Syntaxes/Pike.plist
	keys: [Patterns[5].swallow Patterns[6].swallow foregroundColor backgroundColor increaseIndentPattern]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/idl.tmbundle/Syntaxes/IDL.tmLanguage
	keys: [isDisabled]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/c.tmbundle/Syntaxes/Platform.tmLanguage
	keys: [hideFromUser]

- unknown keys in grammar
	file: Clams-sublimesystemverilog-8c37a53ac265/SystemVerilog.tmLanguage
	keys: [hidden]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/sublime-glsl/GLSL.tmLanguage
	keys: [Patterns[3].beginCapture]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/sublime-MuPAD/MuPAD.tmLanguage
	keys: [highlightPairs smartTypingPairs]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/Lean.tmbundle/Syntaxes/Lean.tmLanguage
	keys: [Patterns[3].pattern]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/TypeScript-TmLanguage/TypeScript.YAML-tmLanguage
	keys: [variables]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/language-jison/grammars/jisonlex-injection.cson
	keys: [injectionSelector]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/language-typelanguage/grammars/typelanguage.tmLanguage.json
	keys: [$schema]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/MagicPython/grammars/MagicPython.cson
	keys: [first_line_match]

- unknown keys in grammar
	file: /src/linguist/vendor/grammars/objective-c.tmbundle/Syntaxes/Platform.tmLanguage
	keys: [hideFromUser]

- scope 'comment.block' cannot be found in library
	included from grammar: text.html.mako

- scope 'source.smarty' cannot be found in library
	included from grammar: text.html.basic

- scope 'source.js.jquery' cannot be found in library
	included from grammar: source.scaml

- scope 'source.ruby.rails' cannot be found in library
	included from grammar: text.slim

- scope 'meta.scope.any.mathematica' cannot be found in library
	included from grammar: source.mathematica

- scope 'source.smarty' cannot be found in library
	included from grammar: file.lasso

- scope 'source.ruby.rails' cannot be found in library
	included from grammar: source.yaml

- scope 'text.html.textile' cannot be found in library
	included from grammar: source.shell

- scope 'source.ruby.rails' cannot be found in library
	included from grammar: text.html.liquid

- scope 'source.js.jquery' cannot be found in library
	included from grammar: source.crystal

- scope 'source.ruby.rails' cannot be found in library
	included from grammar: text.haml

- scope 'text.slm' cannot be found in library
	included from grammar: text.html.vue

- scope 'text.pug' cannot be found in library
	included from grammar: text.html.vue

- scope 'source.postcss' cannot be found in library
	included from grammar: text.html.vue

- scope 'source.ruby.rails' cannot be found in library
	included from grammar: source.yaml-ext

- scope 'source.js.jquery' cannot be found in library
	included from grammar: source.ruby

- scope 'source.AtLilyPond' cannot be found in library
	included from grammar: text.roff

- scope 'source.asm' cannot be found in library
	included from grammar: source.nim

- scope 'text.html.markdown.multimarkdown' cannot be found in library
	included from grammar: source.nim

- scope 'js-expression' cannot be found in library
	included from grammar: source.mask

- scope 'meta.define.event' cannot be found in library
	included from grammar: source.netlinx.erb

As you can see, all the grammar now parse successfully. The main remaining issues are regarding keys which we don't know how to handle, and missing dependencies.
For the unknown keys, there's already a whitelist in the compiler with keys which we don't handle but are "acceptable" (namely, comment, uuid and things like that which we don't need to load the grammar). The remaining reported keys are just weird stuff -- and some of them typos.
The dependencies are a trickier thing. Lots of grammars in the existing library attempt to include grammars that don't exist. The biggest offender was javadoc, which I've manually added in this PR because lots of grammars use it. The other ones would need to be added too, or blacklisted (when blacklisting includes, the compiler will fix the grammar so it doesn't attempt to bring them in).

Thanks for this @vmg!
For the remaining issues in grammars, do you want to fix them all before merging this? Do you need help to report them upstream and try to fix them?
I'm not very familiar with Go, but is it necessary to commit the dependencies (tools/grammars/vendor/)? In particular, since there's a Gopkg.toml file, I though dep could use it to retrieve dependencies.

Excellent work! :D 👍 Does the compiler handle any PCRE-incompatible regex extensions, such as Oniguruma's \h escape? If not, it'd be awesome if it did. \h is one particularly problematic case which surfaces often in many grammars. In PCRE/Perl, \h matches a horizontal whitespace character (space or tab, but not a newline). In Oniguruma, \h matches a hexadecimal digit ([A-Fa-f0-9]).
There are other incompatibilities between regular expression engines, but I'd say the matter of \h is the most glaring one, and certainly the one most likely to appear with future updates upstream.

Thanks @pchaigno @Alhadis!

For the remaining issues in grammars, do you want to fix them all before merging this?

They are non-blocking issues, since the compiler can work around them (e.g. by removing the unknown dependencies), so I'll merge this before they are fully fixed.

Do you need help to report them upstream and try to fix them?

I would love that. I don't have the time to fix them myself like I did for the parsing errors because I'm working on the backend this week.

I'm not very familiar with Go, but is it necessary to commit the dependencies (tools/grammars/vendor/)?

It is not necessary, but it is customary. Since we're distributing a pre-built Docker image, I think I can just not commit all these code. I'll remove it!

Does the compiler handle any PCRE-incompatible regex extensions, such as Oniguruma's \h escape?

It does not, and this is a fantastic suggestion I hadn't thought of. I'll try to work on this today.

I've not played with this yet, but one thing that did cross my mind is this adds a new little barrier to entry when adding new grammars as it now requires Docker be installed.
We definitely need to add this requirement to the CONTRIBUTING.md file

this adds a new little barrier to entry when adding new grammars as it now requires Docker be installed

It does remove the requirement of having Node.js and NPM installed, so overall I'm not concerned about bringing in a Docker dependency.

For the remaining issues in grammars, do you want to fix them all before merging this? Do you need help to report them upstream and try to fix them?

I better explain why this one is happening, since it's coming from one of my grammars:
- scope 'source.AtLilyPond' cannot be found in library
	included from grammar: text.roff

source.AtLilyPond is the scopeName used by Atom's LilyPond package,
while source.lilypond is the scopeName used by TextMate's bundle (which GitHub/Linguist is using).
To enable embedded LilyPond highlighting in both Atom and on GitHub, I simply included them both.
Whichever grammar is available will be used to match the sembedded LilyPond snippet. So I'd say this error should be ignored.
On a related note, see the recent discussion over at Atom concerning their new grammar-parsing system that's nearing completion soon... you might need to update the list of unrecognised properties at some point.

Does the compiler handle any PCRE-incompatible regex extensions, such as Oniguruma's \h escape?

It does not, and this is a fantastic suggestion I hadn't thought of. I'll try to work on this today.

Does that mean we can now update to the most recent version of https://github.com/gandm/language-babel and finally deal with https://github.com/github/linguist/issues/3044?
Will this also help with russian characters as detailed in https://github.com/github/linguist/issues/3291?

Does that mean we can now update to the most recent version of https://github.com/gandm/language-babel and finally deal with #3044?

Looking at the output of the compiler, it seems like the JSX grammar we're currently running (i.e. the pinned fork) is also broken. I tried upgrading to upstream and the grammar has the same (trivially fixable) issues:
Lots of grammar rules use Oniguruma-specific syntax \k<-1>, which according to the Oniguruma docs, means relative group backreferences. As an example \k<-3> would be "a backreference to the 3rd group before this position" (counting backwards that is). The way to make this work in any regexp engine is to actually give a name to the group you're pointing at and using \k<name>. That also has the added benefit of making the regexp look slightly less insane.
It seems like a trivial enough fix if somebody would like to attempt to upstream it. It would definitely be backwards compatible, and I think it'd allow us to switch back to master.

Will this also help with russian characters as detailed in #3291?

This is an unrelated issue, I'm afraid. PCRE supports the syntax just fine, it just doesn't interpret characters in the extended Unicode range like Russian.

Will this also help with russian characters as detailed in #3291?

In brighter news, I've just tried enabling support for Unicode properties and I don't see a significant performance regression -- less than 5%. We may be able to leave them turned on as we roll out the new service.

Following up on https://github.com/github/linguist/issues/3924 with all the issues that the compiler detected.

Just played with this again today and thought of https://github.com/github/linguist/issues/3924 whilst doing so.
I think it would be useful for the long-term health of Linguist and the grammars if we output the grammar issues for the grammar that is being added so peeps know right away that we've detected problems.
What do you think @vmg?

@lildude: As far as I can tell, this is the case. When calling script/add-grammar, the compiler will be ran and if the grammar has any outstanding issues they will be reported. Is this functionality broken?

@vmg I've not tested with adding a new grammar, but I did test with replacing a grammar (our longest serving desirable):
$ script/add-grammar --replace language-babel https://github.com/gandm/language-babel
cp lib/linguist/samples.json tmp/x86_64-darwin16/stage/lib/linguist/samples.json
install -c tmp/x86_64-darwin16/linguist/2.4.0/linguist.bundle lib/linguist/linguist.bundle
cp tmp/x86_64-darwin16/linguist/2.4.0/linguist.bundle tmp/x86_64-darwin16/stage/lib/linguist/linguist.bundle
$

After doing the above, I ran script/bootstrap (to ensure new submodule is pulled down and used)  and then when I run script/grammar-compiler, I see this grammar has problems:
[...]
- [ ] repository `vendor/grammars/language-babel` (from https://github.com/gandm/language-babel) (14 errors)
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<=^|{|,)\s*+(\b[_$a-zA-Z][$\w]`...": subpattern name expected (at offset 281))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<=^|{|,)\s*+(\b[_$a-zA-Z][$\w]`...": subpattern name expected (at offset 271))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<=^|{|,)\s*+(('|\")([^"']*)(\k`...": subpattern name expected (at offset 33))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<=^|{|,)\s*+(('|\")([^"']*)(\k`...": subpattern name expected (at offset 33))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<!:)\s*+(\bstatic\b)?\s*+(\bas`...": subpattern name expected (at offset 78))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?<=^|{|,)\s*+(('|\")([^"']*)(\k`...": subpattern name expected (at offset 33))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`\s*+(\basync\b)?\s*+(?=(<(?:(?>[`...": subpattern name expected (at offset 240))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`\s*+(\b[_$a-zA-Z][$\w]*)\s*+(=)\`...": subpattern name expected (at offset 271))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`\s*+(\b[A-Z][$\w]*)?(\.)(prototy`...": subpattern name expected (at offset 304))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`\s*+(\b_?[A-Z][$\w]*)?(\.)([_$a-`...": subpattern name expected (at offset 291))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(^\s*+(?=([$\w]*\s*+\??\s*+(:|=(`...": nothing to repeat (at offset 73))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`\s*+((("|').*?(?<=[^\\])\k<-1>)|`...": subpattern name expected (at offset 27))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(^|:|;|=|(?<=:|;|=))\s*+(\((?=((`...": subpattern name expected (at offset 52))
    - [ ] Invalid regex in grammar: `source.js.jsx` (in `grammars/Babel Language.json`) contains a malformed regex (regex "`(?:^|;)\s*+(\bstatic\b)?\s*+(\ba`...": subpattern name expected (at offset 422))
[...]

On a side note,  it would be nice to be able to query just a single grammar too.
I also noticed that the script doesn't exit if Docker isn't available/running:
$ script/add-grammar --replace language-babel https://github.com/gandm/language-babel
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
cp lib/linguist/heuristics.rb tmp/x86_64-darwin16/stage/lib/linguist/heuristics.rb
cp lib/linguist/vendor.yml tmp/x86_64-darwin16/stage/lib/linguist/vendor.yml
install -c tmp/x86_64-darwin16/linguist/2.4.0/linguist.bundle lib/linguist/linguist.bundle
cp tmp/x86_64-darwin16/linguist/2.4.0/linguist.bundle tmp/x86_64-darwin16/stage/lib/linguist/linguist.bundle
$

Want new issues for all of these points?

I've not tested with adding a new grammar, but I did test with replacing a grammar (our longest serving desirable)

I see. The compiler is outputting error messages, but I'm afraid that the add-grammar Ruby script is not very robust and discards stderr from the commands it runs. I'll send you a PR.


resourceQuery and oneOf examples

Adding some examples.

Fixed comma. Its interesting how trailing commas are polarizing akin to tabs vs spaces.

@skipjack ping.

Fixed comma. Its interesting how trailing commas are polarizing akin to tabs vs spaces.

@nojvek thanks for fixing, and yeah I know what you mean. Similar to semicolons vs no semicolons as well 😆 ! Everyone has a different preference it seems but my main concern is just that we keep it consistent, at some point we may enforce some styling via eslint on markdown code blocks again (though it has caused issues in the past).


20H2 Build: 19041.789 Not working

termsrv 10.0.19041.789.zip

Thanks for your hard work

try this

no solution so not good (

yeah for now 789 build not in the wrapper ini file. so if you have autoupdater when they update the ini you will have it

Can someone post the new INI please?

@yuasa54 can you please post your new ini file or copy the lines? thank you

[10.0.19041.789]
LocalOnlyPatch.x86=1
LocalOnlyOffset.x86=B59D9
LocalOnlyCode.x86=jmpshort
SingleUserPatch.x86=1
SingleUserOffset.x86=3BC45
SingleUserCode.x86=nop
DefPolicyPatch.x86=1
DefPolicyOffset.x86=3E7C9
DefPolicyCode.x86=CDefPolicy_Query_eax_ecx
SLInitHook.x86=1
SLInitOffset.x86=67BF8
SLInitFunc.x86=New_CSLQuery_Initialize

LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=88F41
LocalOnlyCode.x64=jmpshort
SingleUserPatch.x64=1
SingleUserOffset.x64=0CA4C
SingleUserCode.x64=Zero
DefPolicyPatch.x64=1
DefPolicyOffset.x64=18A15
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
SLInitHook.x64=1
SLInitOffset.x64=1D5BC
SLInitFunc.x64=New_CSLQuery_Initialize

[10.0.19041.789-SLInit]
bInitialized.x86=D0954
bServerSku.x86=D0958
lMaxUserSessions.x86=D095C
bAppServerAllowed.x86=D0964
bRemoteConnAllowed.x86=D096C
bMultimonAllowed.x86=D0970
ulMaxDebugSessions.x86=D0974
bFUSEnabled.x86=D0978

bInitialized.x64=106028
bServerSku.x64=10602C
lMaxUserSessions.x64=106030
bAppServerAllowed.x64=106038
bRemoteConnAllowed.x64=106040
bMultimonAllowed.x64=106044
ulMaxDebugSessions.x64=106048
bFUSEnabled.x64=10604C

thx
perfect

It fully works! Thanks!!!!

Nice reverse engineering job. Thank you.

MarcinWerra's change worked for me.

It fully works! Thanks MarcinWerra !!!!

MarcinWerra Thank you. It works great.

@MarcinWerra there is any guide/tutorial/article where i can try to learn how to update the ini file by myself?
Thx :)

When I tried to create the parameters for the .ini file myself for the first time, I watched the video on Youtube very carefully "Practical reverse engineering (for RDP Wrapper)"
You can read the issue "How to add support to a new Windows build? How to get the offset for the ini file? #1098"
or malicon's answer.
Recommended tools:

PDB Downloader
Ghidra

Single session per user
doesn't work
best regards

Single session per user
doesn't work
best regards

SingleUserOffset.x64=0CB22
[10.0.19041.789]
LocalOnlyPatch.x86=1
LocalOnlyOffset.x86=B59D9
LocalOnlyCode.x86=jmpshort
SingleUserPatch.x86=1
SingleUserOffset.x86=3BC45
SingleUserCode.x86=nop
DefPolicyPatch.x86=1
DefPolicyOffset.x86=3E7C9
DefPolicyCode.x86=CDefPolicy_Query_eax_ecx
SLInitHook.x86=1
SLInitOffset.x86=67BF8
SLInitFunc.x86=New_CSLQuery_Initialize

LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=88F41
LocalOnlyCode.x64=jmpshort
SingleUserPatch.x64=1
SingleUserOffset.x64=0CB22
SingleUserCode.x64=Zero
DefPolicyPatch.x64=1
DefPolicyOffset.x64=18A15
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
SLInitHook.x64=1
SLInitOffset.x64=1D5BC
SLInitFunc.x64=New_CSLQuery_Initialize

[10.0.19041.789-SLInit]
bInitialized.x86=D0954
bServerSku.x86=D0958
lMaxUserSessions.x86=D095C
bAppServerAllowed.x86=D0964
bRemoteConnAllowed.x86=D096C
bMultimonAllowed.x86=D0970
ulMaxDebugSessions.x86=D0974
bFUSEnabled.x86=D0978

bInitialized.x64=106028
bServerSku.x64=10602C
lMaxUserSessions.x64=106030
bAppServerAllowed.x64=106038
bRemoteConnAllowed.x64=106040
bMultimonAllowed.x64=106044
ulMaxDebugSessions.x64=106048
bFUSEnabled.x64=10604C

wciąż się nie poprawiło
pozdr

it works OK
best regards
działa
gosciu wymiatasz
pozdrowienia

here more precise test
in both cases ie
SingleUserOffset.x64=0CA4C
and
SingleUserOffset.x64=0CB22
setting Single session per user has no effect
---testing from host computer
i'm using client 5.1.2600.2180 (distibution client doesn’t connect)
connecting with user name and password entered In client  works as  Single session per user  set active
disconected session is reused
connecting with user name and password entered In at logon screen  works as  Single session per user  set inactive
always new session is opened
---testing from remote computer
5.1.2600.2180 and distibution client works the same
behaviour is as above
regards

In the rdpconf.exe application, set:
[ ] Single session per user
(o) GUI Authentication Only

After that, run the command:
RDPWInst -r
(to restart the remote desktop service)
I tested multi-session per user by connecting using client applications from Windows 10 and XP.

I stand by my opinion
setting Single session per user has no effect
however
Authentication mode works as follows
GUI authentication only (windows login screen) - enables many sessions for same user, each login creates a new session, disconected sessions are not reused, disconected users should be logged out via (fe.) task manager->users->logoff user
Network level authentication (client login dialog) - makes that user can open one (mostly)  rdp session,  disconected session (one) is reused, if there is more disconeccted sessions, then system behaves as above.
question is: do code which handles "Single session per user"  functionality could be patched ?
if it doesn't  works it is possible that it changes some random code
so maybe
SingleUserPatch.x64 set to 0
see RDPWrap.cpp line 723 and below
regards

@lha314981 setting Single session per user has no effect

I cannot reproduce your problem.
I tested RDPWrap on dozens of computers with version 19041.789 and it works fine with Single session per user.

do code which handles "Single session per user" functionality could be patched ?
if it doesn't works it is possible that it changes some random code

https://github.com/stascorp/rdpwrap/blob/a5c64a43319e4e375b391ad42c41504bcb349b4a/src-x86-x64-Fusix/RDPWrap.cpp#L722-L740
The code between lines 722 and 740 looks fine to me.
This function does not randomly change the code.
With the patch SingleUserOffset.x64 = 0CA4C, SingleUserCode.x64 = Zero is patched CSessionArbitrationHelperMgr::IsSingleSessionPerUserEnabled

With the patch SingleUserOffset.x64 = 0CB22, SingleUserCode.x64 = Zero is patched CSessionArbitrationHelper::IsSingleSessionPerUserEnabled

But the strangest thing is that, with the patch disabled by SingleUserPatch.x64 = 0, it also works fine for single session per user and multi session connections.
PS.  @lha314981 :-) Może prędzej się dogadamy po polsku. (Proszę odezwać się przez Messenger https://www.facebook.com/WerraMarcin/)

So at least RDP Wrapper is working on half way.
RDP multisession working, but not printer redirection :( and its very saaaad.
When copyring old rdpwrap ini file - printers working, but not RDP multissesion,
if but I changing ini file to support [10.0.19041.789] Windiws 10 20H2 multissesions - after restarting pc - printers are dissapiering, only leaving to redirect "Pdf creators", One notes and others non real printers.
Termsrv.dll I havent modyfied.


bug: toggle sidebar component flaw

Describe the bug
The toggle sidebar button couldn't wrap the items into compact counterparts, and leaves a annoying scroll bar.
To Reproduce
Click the toggle sidebar button in full-width mode.
Expected behavior
Icons or labels instead of full names in compact mode.
Screenshots

谢谢您对项目的关注和参与，我们将安排时间解决处理


Not working on RX 5600XT

Tried normal method and ENB, neither did work

Try to enable MSAA in settings.

Should be fixed in 1.0.2
Please reply if it works

Now everything is working on RX 5600XT, but on 3200U (Vega 3) only Performance and Quality seems to work, Ultra Quality and Balanced doesnt work at all, and have no idea at all why, if you want a log or something, tell me on which way can I do it, since I'm not familiar with GTA V modding, thanks for you work!

Check this section for log instruction


almost working.

There is some weird involved with the copy_to_user call. I'm getting reasonable values going into the call, and then an oops.

example works,
user@ubuntu:~/x$ uname -a
Linux ubuntu 4.4.0-97-generic #120-Ubuntu SMP Tue Sep 19 17:28:18 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

user@ubuntu:~/x$ make
make -C /lib/modules/4.4.0-97-generic/build M=/home/user/x modules
make[1]: Entering directory '/usr/src/linux-headers-4.4.0-97-generic'
  CC [M]  /home/user/x/procfs_hw.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/user/x/procfs_hw.mod.o
  LD [M]  /home/user/x/procfs_hw.ko
make[1]: Leaving directory '/usr/src/linux-headers-4.4.0-97-generic'
user@ubuntu:~/x$ sudo insmod procfs_hw.ko
user@ubuntu:~/x$ cat /proc/procfs_hw
Hello World

user@ubuntu:~/x$ sudo rmmod procfs_hw
Hello World

@doomers anything else to close this out?

nopes great work, actually i was not active from last 2-3 days on github.
Thanks for contributing


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/91899

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/92559

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/93822

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114434

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/119831

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/121532


Upgrading a Gold subscription causes two recurring charges

Details

Read the Docs username (if applicable): UniversalSuperBox

Expected Result
When changing from one subscription level to another, the difference between the two levels is charged. Alternatively, the previous subscription level is kept until the renewal where the new subscription amount is charged.
Either way, only one level is charged on the next renewal.
Actual Result
I subscribed to Read the Docs Gold with a $10 subscription on July 8. The next day, I upped my subscription to $50. I was charged for both transactions, first for $10 and then for $50. Yesterday (August 8), I was charged $10 for my first subscription renewal. Today, I was charged $50 for the second.
I'm all for putting in the extra $10, but I'd rather get another two adoptable projects. :P

Thanks for supporting rtd, hope the team can debug this and see what is happening soon.

@davidfischer Probably related to #4504.

@RichardLitt, it's related but I tried the steps in #4504 to fix this.

Thanks for reporting this. From a charging (Stripe) perspective, here's what I see:

4 total charges:

$10 on 2018-07-08
$50 on 2018-07-09
$10 on 2018-08-08
$50 on 2018-08-09

There is not an active "subscription" so unless action is taken you will not be charged in September.

So it looks to me like there are definitely some erroneous charges. Which ones would you like refunded? If you're planning to sign up again, perhaps refunding the 2018-07-08, 2018-08-08, and 2018-08-09 charges is right?
I haven't yet dug into the code but my guess is that the subscription code is a bit naive and it didn't delete/change the previous subscription. It just added a new one. When updating a subscription, it should probably just change the existing subscription (eg. $10/mo -> $50/mo) and not try to charge immediately or pro-rate it somehow.

I haven't yet dug into the code but my guess is that the subscription code is a bit naive

It isn't actually! The code is supposed to upgrade the subscription correctly which I believe won't charge until the next period. However, I can see from the Stripe logs that source didn't make it into the request and Stripe rejected the request after that. Then it defaulted to a new subscription.
Long story short, this is definitely a bug.

@davidfischer, It'd be great if 07-08, 08-08, and 08-09 could be refunded. Thank you for digging in to this so quickly!

Ok, I have refunded those 3. According to Stripe:
Refunds take 5-10 days to appear on a customer's statement.

I'm going to leave this ticket open until we fix it.


VisualStudio toolchain should handle broken legacy versions

See discussion at https://github.com/gradle/gradle-native/issues/508#issuecomment-370764883.  vswhere can report an older version of VisualStudio even if that version is only partially installed (i.e. cannot be found in the registry).  When this happens, we can fail to find the appropriate information in the registry, ultimately causing an NPE.
Expected Behavior
We should detect this situation, and discard the candidate install, logging a debug message about the rejected installation and reason.
Current Behavior
We blow up with an NPE.
Steps to Reproduce (for bugs)
We should be able to mock this in our unit tests with a version returned from vswhere but no corresponding registry entries.

This is very similar to #391 (legacy installations versus VS2017).

PR: https://github.com/gradle/gradle/pull/4890

This should be fixed in Gradle 4.7.


Make MAXLINES and PASTEBIN setting more globally available

For one, it moves it from just plumbed channels to all all private channels.
Then it also adds a global default setting for it.
All the logic for doing the pasting is already there, so it was really just a matter of exposing the setting.
While testing this, I also ran into an error being spammed into my logs, of which I'm not sure if it's related, but the fix was trivial no matter what, so it's included here.
This should close issue #165

LGTM, thanks! I'll just get around to test these and will happily merge. Good catch the issue with lazy members list!


Run "Project Anywhere XR" from blank project for Hololens doesn't work

Hi everyone,
I downloaded today UE4.27 and installed in that engine version both "Cesium for Unreal" and "Mixed Reality UX Tools" as plugin in order to test "Project Anywhere XR" downloaded from the Marketplace from the free category.
Then from the yellow arrow near to "Launch" > "Options" and chechked the box "HoloLens 2" as target platform.
Once the project is loaded, without adding anything, I set up from File > Package Project > Packagin Settings.. > Platforms > HoloLens and generated the Signing Certificate (after editing the Publisher Company Name on "Description") with Windows 10 SDK version 10.0.18362.0
I left as default:
Default GameMode "BP_AnywhereXRGameMode",
in "Engine - Navigation Mesh" > Runtime Generation > Static
Then tried File > Package Project > HoloLens but then had those errors:
LogCesium: Error: [2021-10-05 16:19:17.584] [error] [IonRasterOverlay.cpp:78] Ion raster overlay metadata response type is not 'IMAGERY', but unknown
LogCesium: Error: [2021-10-05 16:19:17.597] [error] [Tileset.cpp:164] Received status code 401 for asset response https://api.cesium.com/v1/assets/1/endpoint
LogCesium: Error: [2021-10-05 16:19:17.597] [error] [Tileset.cpp:164] Received status code 401 for asset response https://api.cesium.com/v1/assets/96188/endpoint
LogCesium: Error: [2021-10-05 16:19:17.597] [error] [Tileset.cpp:164] Received status code 401 for asset response https://api.cesium.com/v1/assets/354307/endpoint
LogCesium: Error: [2021-10-05 16:19:17.597] [error] [Tileset.cpp:164] Received status code 401 for asset response https://api.cesium.com/v1/assets/69380/endpoint

Then some warnings and
UATHelper: Packaging (HoloLens):   ERROR: Missing precompiled manifest for 'CesiumRuntime'. This module was most likely not flagged for being included in a precompiled build - set 'PrecompileForTargets = PrecompileTargetsType.Any;' in CesiumRuntime.build.cs to override.
Is there something I'm missing?
Thank you!
P.S.: I tried to edit CesiumRuntime.build.cs as said (in the first lines of code) and to move the whole folder in the filesystem from C:\Program Files\Epic Games\UE_4.27\Engine\Plugins\Marketplace to the project folder (as someone in the past solved for similar errors) but didn't work.
I saw that code tips from https://forums.unrealengine.com/t/unrealed-dependency-causes-package-failure/19940/8 are already implemented in the actual version of CesiumRuntime.build.cs and can't find something else online

@GiovanniTurri Thanks for reaching out. Have you followed and completed the Project Setup instructions for Project Anywhere https://docs.unrealengine.com/4.27/en-US/Resources/Showcases/ProjectAnywhereXR/#projectsetup?

Hi @shehzan10 thank you so much!
Yes this guide is great to solve the second issue I found (the missing token) and following that now I can see the map!
Unfortunately the errors I'm reporting seems to be uncorrelated.
(I try to be specific so that others in the future can benefit)

Hi @GiovanniTurri
If I understand correctly what you are trying to do, you seem to be aiming at packaging the application for native execution on the Hololens Device itself.
This application is meant to be running on a PC, and streamed to the device in realtime using HoloRemoting. The different steps are explained in the documentation, but basically, you have to package it for Windows platform, and run the executable with the following parameters : -vr -HoloLensRemoting=<IP_ADDRESS> -RemotingBitRate=15000
We did this choice because when we started this project, the Cesium and Georeferencing plugins were not available for the HL2 platform. We upgraded the GeoReferencing plugin to run natively on HL2 as of 4.27. @shehzan10 do we expect native support for Hololens 2 at some point?
I hope it helps.

@AlbanBERGERET-Epic Thanks for chiming in. We haven't yet explored running Cesium for Unreal natively on Hololens 2, but could add it into a roadmap. We want to be enabling all possible devices from Unreal Engine.


go/types: validity of program depends on method declaration order

https://play.golang.org/p/WCktUidLyc_ is accepted while the equivalent program https://play.golang.org/p/Z-B9rBhYILd fails with an error. The only difference is the order of the method declarations.
Esoteric case, but may not be too hard to get right. Marking for 1.11 in case we get to it.
See also #23202.

See TODO in go/types/decl.go (Checker.typeDecl). The solution might be to simply add the methods (call addMethodDecls) before we call check.typExpr (so that the methods are present when we look for the type to be declared). To avoid other errors we may need to defer the check for conflicting struct and methods names to the end of type-checking.

Investigated a bit more: While it is easy to add methods before type-checking, type-checking those methods at that time may lead to cycles. Type-checking the methods later will lead to crashed because the methods have missing types (but have already been associated with the base type).
This may require more work on how we handle cycles in the first place.
Postponing for now as non-urgent since the (gc) compiler cannot handle this case, either.

For future use: https://play.golang.org/p/UWtk6oeJ2ZH .


RHOAIENG-10023: Adding note to address RHOAIENG-11084

Description
Adding note to address RHOAIENG-11084
How Has This Been Tested?
Local Build
Preview

/lgtm


Update translation strings as of 20200609T205925

Please do not manually merge this pull request.  It will either be automatically merged or withdrawn.

Test errors found. See https://jenkins-aws.indexdata.com/job/folio-org/job/ui-plugin-find-packages-titles/job/PR-7/1/


Is there a way to distinguish between formula errors and empty cells?

I'm reading sheets using method 1, the reader methods.
When a cell contains a formula error, I want to reject the operation and report an error to the user, so they can correct the sheet before importing it.
Formula errors return null for the cell type, but so do empty cells.
How do I tell the difference between the two?

Hi, unfortunately there is currently no way to tell apart empty cells and formula errors.
A related idea came up in https://github.com/ExcelDataReader/ExcelDataReader/issues/329#issuecomment-548267233 but nothing has been done about it so far

What would happen if formula errors were treated as strings with the value set to the error code, "#DIV/0!" or whatever?  I don't know all the possible formula errors Excel has.  Maybe ExcelDataReader could provide a predicate that reports if the string matches an error code.
I think that would work for me.  No one is going to enter #DIV/0! as a value.

Afaik there are already users who depend on cells with errors being empty, so we can't just change that behavior. But there are no problems adding some new reader method GetCellError(i) to determine if a cell has an error.
Please note this will remain in the backlog unless you'd like to have a go at it. Should be relatively easy to add, although should be supported in all of XLS, XLSX, XSLB and with tests for all errors in all formats.

So you would call GetCellError(i) when GetCellType(i) returns null?  What would GetCellError() return?  A string?

What would GetCellError() return? A string?

Yes, a string sounds good to me. And can return null if there is no error in the cell. (alternatively an enum, but not sure if that would always work)

Yeah, of course, the method would return the inner text of the v element.  Well, I don't know about the other formats.  XLS and XSLB formats must contain the same information, huh?

I could give it a shot.

XLSX and XLSB have common parsing code, and I agree both should do the equivalent of returning the inner text of the v element when the t attribute of the containing c element is "e".
The XLS formula error code is apparently already parsed, but not converted to a string nor exposed publicly:
https://github.com/ExcelDataReader/ExcelDataReader/blob/b0ad266dc76976e8bbe22509cba7a3e7047e6bce/src/ExcelDataReader/Core/BinaryFormat/XlsBiffFormulaCell.cs#L46
A reference for XLS is here: https://www.openoffice.org/sc/excelfileformat.pdf
Relevant XLS sections:
2.5.6 Error Codes
5.50 FORMULA

Awesome, thank you!  This doesn't sound too hard.


Remove GLES2.0 from shaders

Shaders cleanup removing GLES2.0
GearVRf-DCO-1.0-Signed-off-by: Ragner Magalhaes<EMAIL_ADDRESS>

seems as though you could remove the ifdefs for USE_GLES3 as well

Should I also remove the line  #define GVRF_USE_GLES3  1 from jni/util/gvr_gl.h?

theoretically, that define would no longer be necessary so it could be removed.

Done.

ok, code looks like what i would expect now.  just needs testing.

builds.  tested with several samples.  things look fine.  nothing blew up :).


Create Node.js and Python http samples for fuctions

These examples dont require any additional modules to perform a http request and can be run as inline functions

@reggeenr Good points extended the examples to support post 👍  wouldn`t extend any more in order to keep the sample small


Electrum-ZCL-Z_1.0.4-win seed new wallet

when I finish typing my 12-word seed the next button is not active and doesn't take me to the next step to create my Zclassic wallet.

This means that the seed wasn't recognized. Double check it. lib/wordlist/english.txt has a list you can reference against too.

Thank you very much. The wallet recognized the seed, and the wallet is fully operational now.

Can we use seed for new BCTP wallet or do we have to use private key from electrum
Sent from my iPhone

On Mar 1, 2018, at 6:41 PM, cryptoreble<EMAIL_ADDRESS>wrote:
Thank you very much. The wallet recognized the seed, and the wallet is fully operational now.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Add system context diagram

This PR adds a C4 system context diagram for the current architecture.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 97.119%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
3840

Relevant Lines:
3957

💛  - Coveralls


Does it support for mutil wifi wlan card

I have two wifi device.
One in my computer is "Qualcomm Atheros AR9285 Wireless Netword Adapter"
Another is "802.11n USB Wireless LAN Card"
I can use either of them to connect wifi for Internet.
BUT, I use
ifacelist=pywifi.PyWiFi().interfaces()
in this list, I can only get one iface. Sometimes it is the first device, sometimes it is the second device. This confussed me, How could I get both of them?

by the way i'm using windows and python 365


[CMake][cuBLAS]Unable to build cublas backend with a default CMake command

Summary
I am not able to build the cuBLAS backend without working around some CMake logic and adding CMake flags.
Version
I am using the latest commit on develop https://github.com/oneapi-src/oneMKL/commit/6aa5924d8d781ccba5fd7697f8b57b40b6c0d203.
Environment
I am using Ubuntu 22.04, and the compilers from oneAPI 2024.0.1. I am using module load compiler to set up my environment.
I have tried with:

CUDA toolkit 12.3.0 and CMake 3.26.3
CUDA toolkit 11.8.0 and CMake 3.13.5

Steps to reproduce
$ cmake -Bbuild-blas-cuda -GNinja -DTARGET_DOMAINS=blas -DENABLE_MKLCPU_BACKEND=OFF -DENABLE_MKLGPU_BACKEND=OFF -DENABLE_CUBLAS_BACKEND=ON -DBUILD_FUNCTIONAL_TESTS=OFF .
-- CMAKE_BUILD_TYPE: None, set to Release by default
-- C compiler: icx was found in PATH, using icx
-- The CXX compiler identification is IntelLLVM 2024.0.2
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /path/to/oneapi/2<IP_ADDRESS>/compiler/2024.0/bin/compiler/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- TARGET_DOMAINS: blas
-- Looking for dpc++
-- Performing Test is_dpcpp
-- Performing Test is_dpcpp - Success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found CUDA: /path/to/cuda/12.3.0 (found suitable version "12.3", minimum required is "10.0")
CMake Error at /path/to/cmake/3.26.3/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find cuBLAS (missing: OPENCL_INCLUDE_DIR)
Call Stack (most recent call first):
  /path/to/cmake/3.26.3/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  cmake/FindcuBLAS.cmake:54 (find_package_handle_standard_args)
  src/blas/backends/cublas/CMakeLists.txt:22 (find_package)

Observed behavior
The issue is that cmake/FindcuBLAS.cmake requires some variables which are not set anymore. In general and from my previous experience I don't think the files cmake/FindcuBLAS.cmake and similar are needed anymore. It would be simpler to use a solution similar to how cuFFT is linked here.
I can workaround that by removing the required variables OPENCL_INCLUDE_DIR and CUDA_CUDA_LIBRARY. I am then running into a different issue where the CMake logic chooses to use clang++ by default instead of icpx and is not setting CXX_STANDARD 17 because of this. I believe the recommendation is to use icpx so shouldn't CMake select this compiler by default if it is found in the PATH, like it does for MKLCPU or MKLGPU backends?
To work around this, I first need to add /path/to/intel/oneapi/2<IP_ADDRESS>/compiler/2024.0/bin/compiler to PATH so that oneAPI clang++ is used instead of system clang++. The module script does not seem to add the path to clang++ anymore since a recent release.
The compilation still fails because -std=gnu++11 is used so we need to add -DCMAKE_CXX_STANDARD=17 to the CMake command.
Expected behavior
I believe the cuBLAS backend should be able to compile using icpx and with recent CMake and CUDA version using a "default" CMake command like:
$ cmake -Bbuild-blas-cuda -GNinja -DTARGET_DOMAINS=blas -DENABLE_MKLCPU_BACKEND=OFF -DENABLE_MKLGPU_BACKEND=OFF -DENABLE_CUBLAS_BACKEND=ON -DBUILD_FUNCTIONAL_TESTS=OFF .
$ ninja -Cbuild-blas-cuda

Thank you @Rbiessy for highlighting it.
Regarding the first observation, right now the cmake cannot find the necessary headers. This is due to the deprecation of clang support in the 2024 oneAPI release and subsequent change of clang++ directory and adding an extra layer. For now, it is possible to work around it adding another hint in cmake/FindcuBLAS.cmake at line 28, add ${SYCL_BINARY_DIR}/../../include/sycl.
Updating the compiler from clang++ to icpx would require further investigation and modification in cmake, but the minimum changes required would be to modify the following line: https://github.com/oneapi-src/oneMKL/blob/develop/CMakeLists.txt#L138-L140

Thanks for the quick answer. Do you know if there is any plan to properly fix these issues?


Compile DLib with AVX or SSE4 enabled

I'd like to compile dlib for my android application with SSE4 or AVX enabled, but it doesn't seem like there's an option in the makefile to enable it.

SSE4 and AVX instruction sets are available on Intel and AMD processors, not ARM processors. Android devices are generally built with ARM processors, that's why you can't compile for, let's say armeabi-v7a with SSE4 or AVX instructions enabled.

Some devices do have Intel Atom processors and that's why I'd like to take advantage of those accelerations.

What device with Intel Atom processor runs Android? I don't know any.

Do you know how to use the openBlas library on android studio? Just add an item on cmakelists.txt, -ddlib_use_blas =1? Doesn't seem to work? There is no good solution. I don't know how to add it right now, let's say I have the dlib code and I have the openblas library that's cross-compiled, okay?

I wanted to know how to add openblas to the android version of dlib for speed optimization of the matrix. thank you


Let’s demonstrate that Node.js 16 pass the tests

Please Squash and merge to consolidate all the commits.
Recommendations:

Do not run npm test
macOS and Ubuntu: Node.js v20.x and Python 3.12
Windows: Node.js v16.x and Python 3.11 -- Do not run node-gyp rebuild

Lessons learned:

Node.js >= v21 fails
Node.js >= 18 fails on Windows
Python >= 3.12 fails on Node.js 16 because of distlib fixed in node-gyp v10.0
npm test fails with: npm ERR! Missing script: "test"
node-gyp rebuild fails on Node.js 16

why this has not been merged, also unmantained? 😂

Please look at node-ffi-napi/node-ffi-napi#269 as mentioned above for workarounds.


Fix for #4775

[ ] Tests added / passed
[ ] Passes flake8 dask

PS: you are failing on the following lint issues
dask/dataframe/io/tests/test_sql.py:158:27: E128 continuation line under-indented for visual indent
dask/dataframe/io/tests/test_sql.py:159:27: E128 continuation line under-indented for visual indent

Suggest
    data = read_sql_table('test', db, columns=list(df.columns),
                          bytes_per_chunk=250,
                          index_col='number',
                          head_rows=1)
    assert data.npartitions == 2

Excellent, thank you!


Update VideoState.hx

WARNING: I did not fix the whole thing I only fixed a partial amount

Simple errors thank you!!


Contributors Not Receiving Credit on this Project

It has come to my attention that due to the way github used to handle squash and merge, there are PRs which I continued from someone else's work, where the original author did not receive credit for the contributions he/she made.
If anyone thinks this might have happened to them, please comment here. I plan to combat this by creating a separate ATTRIBUTIONS page which will provide any of those affected with the proper credit.
It was never my intent to deprive anyone of proper credit for their work. I think it's important for anyone that helps out to be recognized for having done so. Community is an important part of any open source project.
This should no longer be a problem moving forward, as github has updated how they handle squash and merge, but I will need to make it right for anyone before this point.

“Stop treating Open Source like a product you purchased and start treating it like a team you belong to.”
https://twitter.com/GetSource/status/1190286739014901761

That's a wonderful thing to say.


Should I worry about my code getting overwritten Studio?

Would it be possible to add comments to generated files that show which parts Studio will overwrite?

The Studio only overrides the model file (ex: Article.settings.json) and generate new API folder.

No you don't need to worry about your code being overridden by the Studio. As @Aurelsicoko said the Studio only write your JSON models and config files with the default controllers. You can update your controllers as much as you want-- the Studio will never update them.


Updates to readme file.

Some updates to correct elements of readme that are out of date.

Current coverage is 99.40% (diff: 100%)

Merging #259 into master will decrease coverage by 0.11%

@@             master       #259   diff @@
==========================================
  Files            23         23
  Lines          1693       1693
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           1685       1683     -2
- Misses            8         10     +2
  Partials          0          0

Powered by Codecov. Last update 8e1d014...07e34cd


Mybatis-plus v3.1.2 无法正确执行多列组合查询语句

MyBatis version
3.1.2
Database vendor and version
mysql5.7
Test case or example project
dkpkMap: Map<Stirng, String>

Steps to reproduce
也尝试过用@Select

但是也是报错
Expected result
预期结果是可以查出来

Actual result
实际结果

Hello @lingshao9537 ,
mybatis-plus is not our product.
Report it in their repository.
https://github.com/baomidou/mybatis-plus/
And please do not use images unless it is absolutely necessary.


[Feature Request] Add option for Open in new tab in group

Describe the bug
I would like to suggest a new feature for the browser. It's been a really helpful feature in Chrome and I don't use the new tab since I have been using this new feature. It's really helpful as well during the time of switching the tabs, and I think could be a great feature for DuckDuckGo. It's called "Open in new tab in group", to open a new tab but being on the same window and shift between the tabs by changing them from the bottom group.
How to Reproduce
This option can be added here (when long pressing a link) : ![DuckDuckGo ScreenShot]

Expected behavior

Environment
- DDG App Version: 5.162.0
- Device: Google Pixel 6A
- OS: Android 13

@oyeraghib, as stated in our Contribution Guidelines, requests for feedback should be addressed via the Feedback section in the Android app.


Define the type for Model._meta field.

Thanks for the PR.  Can you add an example in the polls app, maybe?  I am assuming the stubs are for Django 1.9.5?


The console shows in loop when monster is attacking you : [Info   : Unity Log] Player is not targetable
You can still be killed by fall damage, or I guess environmental stuff like explosion (I only tried falling to my death while the bug is active).
Just so I'm sure this isn't a compatibility issue with another mod, I tried in a modpack with only chatcommands.
You can reproduce this easily :

Enable godmode with /god command
Spawn a mouthdog with /spawnenemy command
Get attacked by mouthdog
DIsable godmode with /god command
Try to get killed by mouthdog

The update seems to have fixed this bug.


Create HTML Styleguide

We have multiple workshops which are now using HTML for content. For the sake of consistency we should come up with a singular styleguide and implement that across all of the code

https://github.com/hackclub/meta/pull/436

Closing due to #436 being merged.


Fix Factorial for big numbers

In Factorial calculator, if large numbers are given, the result comes when the page looks very bad and not responsive.
For large numbers, make the result should come exponentially and after a certain value it will show Infinity.

@Srijita-Mandal I want to work on this issue under JWOC

@priyanka1551 Go for it.

@priyanka1551 Is this done? Make your PR by today.

I want to work on this issue under JWOC

@deepbeatz You are assigned. Go for it.

Thanks ma'am , will get back to you tomorrow itself

i have made the changes as you can see, i have taken the limit input number as 52 because after 52 the responsiveness starts disturbing, so 52 and above whatever no. we give we will get answer in terms of "e", and above 170 it will show infinity as answer. plz let me know if i can raise a PR now

what i have done is highlighted here , plz check @Srijita-Mandal

i raised a PR maam @Srijita-Mandal


Fix active_server for multi-cluster deployments

Description
When addressing multiple clusters at once within a play, the active_server would only be determined once - when processing the very first cluster.
active_server would then be used to delegate the task to, to wait for all nodes and pods to be ready again.
When all clusters are sized equally, this wouldn't cause any real troubles (yet still be incorrect in terms of actually verifying the state of the cluster's nodes), since the number of nodes in the first cluster would match the number of nodes in any other cluster checked for the nodes to be up.
But as soon as a cluster with a different number of nodes is present, this would cause failures/timeouts, since the check waiting for all nodes to be up and running again would never reach the expected number.
By not utilizing run_once and verifying for the include of first_server.yml, whether active_server is a member of the current cluster, this problem can be prevented.
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
[ ] Small minor change not affecting the Ansible Role code (GitHub Actions Workflow, Documentation etc.)

How Has This Been Tested?

added multiple clusters with different numbers of nodes to my inventory
utilized the rke2 successfully with those changes
saw the rke2 role fail without those changes

Found a few issues with the current approach. Reworking it and will update the PR as soon as possible.

Pushed now a new iteration which worked as expected in multiple local tests here so far.


Loaders should allow overriding if there are multiple possible sources

I'd think if the loader looks in XDG CONFIG HOME and XDG CONFIG DIRS, then creating a new file in XDG CONFIG HOME should override the previously-loaded file in XDG CONFIG DIRS. Or creating a file in one of the higher-priority XDG CONFIG DIRS should override the lower-priority ones.
Right now it simply ignores those unless you touch the originally loaded file's timestamp. This happens both with a ChoiceLoader of FileSystemLoaders and just a FileSystemLoader with multiple paths.

Python version: 3.7.3
Jinja version: 2.10.1

I think you're looking for a new loader implementation, Jinja currently doesn't use XDG. That would probably be more appropriate as an extension rather than in Jinja core.

xdg_data_dirs = get_xdg_data_dirs()
loader = FileSystemLoader([xdg_data_home] + xdg_data_dirs)

this can be reproduced with just 2 random dirs instead of xdg. point being it doesn't work as expected.

I think the answer here is to disable the template cache if you want to get newly added templates taken into account without restarting the application. At least for the most common use case (web apps) this is rarely needed..

do I need to write my own loader if I want this?


Question about v4

Your Question
What are the features being added in Geode v4? I'm just curious.
-BouncingBall

developer stuff that is epic


Address warning about the usage of astro/content in client-side

Header.DsRVD11t.js:9 astro:content is only supported running server-side. Using it in the browser will lead to bloated bundles and slow down page load. In the future it will not be supported.
(anonymous)	@	Header.DsRVD11t.js:9

Testing mention to username that is not suggested @marcospri

@shlinkio can I mention an org?


allow to use non-eager shared and remote modules in the initial page load

bundle will become async to load the required remotes and chunks
fix a bug with circular remote module loading
fix duplicate remote and shared runtime module when using plugin multiple times

What kind of change does this PR introduce?
feature, bugfix

Did you add tests for your changes?
yes

Does this PR introduce a breaking change?
no. This caused an error before.

What needs to be documented once your changes are merged?
Using shared modules in initial chunks is now possible, but this will delay bootstraping of the application until all remotes and the shared modules are loaded. For performance reasons this should be avoided if possible.
Currently the performance is lacking behind what's possible: (need to be improved in further PRs)

Shared and remote modules are loaded sequencially instead of in parallel
When using a single runtime chunk, all remote and shared modules for all entrypoints are loaded.

works on example repos, but errors out on something like a next.js build.
https://github.com/ScriptedAlchemy/nextv5
Looks like it might not cater for multiple entrypoints?

This resolves most cases IMO, with requiring import(bootstrap) no longer a most
I do see some edge cases / challenges with entry point loaders where multiple entry points are used over a code splitting. (Next.js)

@sokra in order to make this work with multi-entrypoints.
Would we need to add some startup requirements to single entry points we well?
In cases where runtimeChunk: single exists, when the chunk is pushed into webpack, we would need a form of startup module. Correct?


404 rewrite not working for SPAs like React

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d31a6aysrans3d
Region
us-east-1
Amplify Console feature
Redirects
Describe the bug
Setting up a 404 rewrite via Amplify for SPAs like React, is not working. Instead of sending a HTTP status code of 404, a 200 is returned after the redirect.
Expected behavior
404 rewrite should send the 404 status code instead of 200
Reproduction steps

Setup 404 rewrite on Amplify with source: /not-found and target: /error.html
Setup a catch-all route in React that does a redirect: window.location.href = "/not-found";

Basically, when React sees any route that is not already defined, it will redirect the user to /not-found. This request will come to Amplify distribution, where we will rewrite the HTTP status to 404 and send the user back to /error.html.
First, set this up as the Rewrite rules on Amplify:
[
    {
        "source": "/not-found",
        "target": "/error.html",
        "status": "404-200",
        "condition": null
    },
    {
        "source": "</^[^.]+$|\\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|woff2|ttf|map|json)$)([^.]+$)/>",
        "target": "/index.html",
        "status": "200",
        "condition": null
    }
]

Then, create NotFoundRedirect function:
const NotFoundRedirect = () => {
  window.location.href = "/not-found";
};

export default NotFoundRedirect;

Then, add these routes in App.js:
<Route component={NotFoundRedirect} />

Here's the full implementation in my Github repo: https://github.com/Narrator/reactRoutesAmplify

Build Settings
No response
Additional information
No response

Would love to see this issu resolved - we're dealing with this exact situation.

Hi @scolestock thank you for commenting, this issue has been reproduced and we will be prioritizing this bug. We will update this issue once it's been fixed. Thank you!

Any ETA for a resolution here? 6 months later 404 rewrites are still not working.

Any news here?

This worked for me:

Source address
Target address
Type

/<*>
/
404 (Rewrite)


yarn binary exists in multiple repositories

Yarn did a split some time ago, where multiple versions exists in two repositories

yarnpkg/yarn (classic, v1)
yarnpkg/berry (current, v2;v3)

How should this be handled?

Yarn Classic is well maintained and will most likely never release anything else than v1, so you could possibly do some sort of version comparison; yarn^1 would use classic Yarn, and yarn would default to latest v3.
However, when you link to a GitHub tags page for versions, Yarn Classic could release a v2 there and there would be name and version collisions.

I would say those are probably two different packages: yarnpkg.com and yarnpkg.com/berry. Easy to do it that way, since they have separate GitHub repos.

With tea magic, the issue is which repository should be used when calling yarn?

My gut says yarnpkg.com will get picked up before yarnpkg.com/berry.  Assuming the preferred default is the latter, I'd do
cd {{prefix}}/bin
ln -s yarn yarn1

provides:
  - bin/yarn1

In the former. Then you can get it using the magic command yarn1 or you can inject the package specifically using any of the methods and invoke it as yarn, while magic will give you berry.

It is my opinion that versioning the binary is not the way to go.
In this example it is about Yarn, but a similar scenario could just as well happen with the decentralized approach of pantries in the future? (If I understood decentralized pantries correctly)

This versioning would only apply to pure-magic invocations. You can still always do yarn^1 install or yarn'>=2' install as needed, or be specific with tea +yarnpkg.com/berry yarn install.

Without significant changes to how tea (currently) works, we need to use the same package.yml.
Possibly in the future these should be separate yamls, but we can't do that RN without failing to find versions based on whichever yaml is picked non-determistically.

Without significant changes to how tea (currently) works, we need to use the same package.yml.

For different github repos? How?

I am interested in how tea magick would work with a decentralized pantry in the future. If I create my own pantry with my own binary yarn, how would it be differentiated from that belonging tro +yarnpkg.com?

Without significant changes to how tea (currently) works, we need to use the same package.yml.

For different github repos? How?

My thinking has been something like:
distributable:
  ^1: URL
  ^2: OTHER-URL

I expect there’s a better way to do this out there, but I haven't come up with it yet.

I am interested in how tea magick would work with a decentralized pantry in the future. If I create my own pantry with my own binary yarn, how would it be differentiated from that belonging tro +yarnpkg.com?
(bit off-topic, not related directly to this issue)

Yes I have been thinking about this too. We would need some kind of ping step that adds an entry to some datastore.
So ping, then add a note that foo can be fetched from this other source.
Users would obv. have to confirm they are cool with the other source before we would auto-fetch though.


Restructure and fix links for pipelines docs

This PR:

cleans up cross-section links
cleans up some documentation language
moves v2 docs to a v2 namespace (will be removed after GA) and adds redirect for v1 --> this will allow us to release these docs before v2 is fully ready
makes custom container component language consistent throughout

Not merging into master.
/lgtm
/approve


[i18nIgnore] Fix links

What kind of changes does this PR include?

Minor content fixes (broken links, typos, etc.)

Description

Fixes several broken links and makes sure links all point to the current locale (e.g. on /es/ pages, all relative links should be to /es/ versions of pages).
Caught the broken links with https://github.com/HiDeoo/starlight-links-validator.
Caught the wrong-locale links with some RegExp searching in the project (e.g. find \]\(/(?!ru) in docs/src/content/docs/ru/).

P.S. I considered if we could integrate the link checker into the docs site but https://github.com/HiDeoo/starlight-links-validator/issues/9 is blocking us currently from doing that I think.

size-limit report 📦

Path
Size

/index.html
5.13 KB (0%)

/_astro/*.js
19.27 KB (0%)

/_astro/*.css
9.72 KB (0%)

Thanks for the reviews and testing! Yeah, this is definitely something it would be nicer to stay on top of with each CI check.
@HiDeoo Saw you added the extra context https://github.com/HiDeoo/starlight-links-validator/issues/9 — thank you!

@HiDeoo Saw you added the extra context HiDeoo/starlight-links-validator#9 — thank you!

Yeah, I also played a little bit with it this morning as I had my head in the code while releasing a new version. The logic should be relatively straightforward altho I think the smart move is to wait for plugins so I can turn the integration into a plugin and easily have access to the Starlight config to check if the site is multilingual or not and check which locales are configured.

the smart move is to wait for plugins so I can turn the integration into a plugin and easily have access to the Starlight config to check if the site is multilingual or not and check which locales are configured.

Absolutely. I’d also love a rule to enforce use of same-language links, which were a bunch of what I’d caught… wait I guess I should make a feature request 😁


gtk: use iota where applicable

Instead of explicitly calling out the type and enumeration, we can rely
on iota to increase the count for us automatically. This is done at
compile-time and has no performance drawback.

Rebased and addressed review issues.

@mattn Should I rebase and squash?

Ah, sorry. I thought I had merged this already.

thanks!


[FrameIt] Add missing HTML tag

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context

Description
Fix FrameIt documentation adding a missing HTML tag.

Sorry about this, but we had an issue in our unit tests, which has since been fixed on master.  That should fix the CI error and allow me to merge your PR. Thanks!

Thanks for reviewing @mpirri.
I have just rebased the pull request off of master and CI seems to be happier now.


Ambiguous column name for sql queries with joins

I get a sqlite3.OperationalError when doing read_sql_query from a sqlite database with a join, but it seems work with pandas.
Example:
import dask.dataframe as dd
from sqlalchemy.sql import select
import sqlalchemy as sa
import pandas as pd
import os

# generate empty db, make engine
dbname = "db.sqlite"
open(dbname, 'a').close()
path = os.getcwd()
db_uri = "sqlite:///" + path + "/" + dbname

engine = sa.create_engine(db_uri)

# generate two tables, add to db
df1 = pd.DataFrame(data = {'id': [1, 2, 3, 4], 'value1': [10, 20, 30, 40]})
df2 = pd.DataFrame(data = {'id': [4, 3, 2, 1], 'value2': [50, 60, 70, 80]})

df1.to_sql('table1', con=engine)
df2.to_sql('table2', con=engine)

# check
engine.execute("select * from table1 inner join table2 using(id)").fetchall() # works

# prepare queries
metadata = sa.MetaData()
table1 = sa.Table("table1", metadata, autoload_with = engine)
table2 = sa.Table("table2", metadata, autoload_with = engine)

query = (select(table1.c.id, table1.c.value1, table2.c.value2).
        select_from(table1).
        join(table2, table1.c.id == table2.c.id))

# make queries
pd_df = pd.read_sql(con = db_uri, sql = query, index_col = "id")
pd_df.head() # works
dask_df = dd.read_sql_query(con = db_uri, sql = query, index_col = "id")
dask_df.head() # fails

Traceback:
Traceback (most recent call last):
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1819, in _execute_context
    self.dialect.do_execute(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 732, in do_execute
    cursor.execute(statement, parameters)
sqlite3.OperationalError: ambiguous column name: id

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/dataframe/core.py", line 1225, in head
    return self._head(n=n, npartitions=npartitions, compute=compute, safe=safe)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/dataframe/core.py", line 1259, in _head
    result = result.compute()
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/base.py", line 312, in compute
    (result,) = compute(self, traverse=False, **kwargs)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/base.py", line 600, in compute
    results = schedule(dsk, keys, **kwargs)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/threaded.py", line 81, in get
    results = get_async(
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/local.py", line 508, in get_async
    raise_exception(exc, tb)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/local.py", line 316, in reraise
    raise exc
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/local.py", line 221, in execute_task
    result = _execute_task(task, data)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/core.py", line 119, in _execute_task
    return func(*(_execute_task(a, cache) for a in args))
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/utils.py", line 41, in apply
    return func(*args, **kwargs)
  File "/home/flavio/.local/lib/python3.10/site-packages/dask/dataframe/io/sql.py", line 423, in _read_sql_chunk
    df = pd.read_sql(q, engine, **kwargs)
  File "/home/flavio/.local/lib/python3.10/site-packages/pandas/io/sql.py", line 592, in read_sql
    return pandas_sql.read_query(
  File "/home/flavio/.local/lib/python3.10/site-packages/pandas/io/sql.py", line 1557, in read_query
    result = self.execute(*args)
  File "/home/flavio/.local/lib/python3.10/site-packages/pandas/io/sql.py", line 1402, in execute
    return self.connectable.execution_options().execute(*args, **kwargs)
  File "<string>", line 2, in execute
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/util/deprecations.py", line 402, in warned
    return fn(*args, **kwargs)
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3176, in execute
    return connection.execute(statement, *multiparams, **params)
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1306, in execute
    return meth(self, multiparams, params, _EMPTY_EXECUTION_OPTS)
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/sql/elements.py", line 332, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1498, in _execute_clauseelement
    ret = self._execute_context(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1862, in _execute_context
    self._handle_dbapi_exception(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2043, in _handle_dbapi_exception
    util.raise_(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 208, in raise_
    raise exception
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1819, in _execute_context
    self.dialect.do_execute(
  File "/home/flavio/.local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 732, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) ambiguous column name: id
[SQL: SELECT table1.id, table1.value1, table2.value2
FROM table1 JOIN table2 ON table1.id = table2.id
WHERE id >= ? AND id <= ?]
[parameters: (1, 4)]
(Background on this error at: https://sqlalche.me/e/14/e3q8)

I have little experience with dask and sqlalchemy, but I suspect it has to do with https://github.com/dask/dask/blob/95fdd3fe127fe116e02c222c3d38303c3375af4b/dask/dataframe/io/sql.py#L170.
and the sql query should include the table name, as in:
[SQL: SELECT table1.id, table1.value1, table2.value2
FROM table1 JOIN table2 ON table1.id = table2.id
WHERE table1.id >= ? AND table1.id <= ?]
[parameters: (1, 4)]

Environment:

Dask version:  2022.6.0
Python version: 3.10.4
Operating System: ubuntu 22.04
Install method (conda, pip, source): pip

@f-hafner Welcome to Dask, and thanks for a well-written bug report! I can reproduce this. :)

Hi @f-hafner, thanks for the report.
The way Dask handles SQL queries is by assuming we have an indexed column that we can easily and quickly partition along. Internally, we create a series of sub-queries based upon your initial query that gets subsets of the data for each partition. This is the snippet that you correctly identified as the problem. This is quite difficult to do in general, and you've come across one limitation -- if the index_col that you specify doesn't unambiguously refer to a column in the result, sqlalchemy rightfully complains.
I'm not sure if I can see a good way for Dask to handle all SQLAlchemy queries which might be based on arbitrarily complex subqueries. But I do think we can solve your particular use-case by ensuring that we unambiguously refer to the index column in your resulting joined table. Here I rename the resulting index column to "result_id", then partition along that:
query = (select(table1.c.id.label("result_id"), table1.c.value1, table2.c.value2).
        select_from(table1).
        join(table2, table1.c.id == table2.c.id))

dask_df = dd.read_sql_query(con = db_uri, sql = query, index_col = "result_id")
dask_df.head() # succeeds!

This works with both pandas and Dask. Does that seem like a reasonable way forwards for your use-case?

Some more docs on how dask handles SQL indexes and SQLAlchemy expressions can be found here, in case you are not already aware of it.

Hi @ian-r-rose. I had not been thinking far enough to try to rename the column, but that works well for my use-case. Thanks!

Is there also a solution for postgresql, since it does not support column aliases in where clauses?
If I use the same approach with postgres, i always get
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedColumn) column "result_id" does not exist LINE 3
Any help would be appreciated!


[feat] Ability to force a node to a dead/failed state

An issue (most likely with the controller)
My feature request is related to a problem:
I've been working with this USB stick for a while, going through different reincarnations of HA, and was really glad to take ZWaveJS for a spin.
I decided to hard-reset my Z-Wave controller and start the network from scratch, as it was a mess from previous manipulations.
(BTW, ZWave-JS is AWESOME! - fast, clear, easy to understand)
When adding a smoke detector (First Alarm ZCOMBO) with low battery, the inclusion started, introducing a node (node 22) but never completed.
After replacing the batteries, exclusion didn't remove the Node from the Controller, and to following inclusion introduced a new node (node 23).
Now I have an Unknown node with stuck in the ProtoclInfo state marked as Asleep, and nothing I do gets it out of this state.

I've tried Failed Nodes: Check, Re-Interview, Remove Associations - nothing changes the state of the node from Asleep to failed or dead.
Describe the solution you'd like
I recall in the Sigma windows application, there is a way to mark a node as dead, and then remove it.
I was hoping to find something like this in ZWaveJS2MQTT
Describe alternatives you've considered
I'm not sure what the overall negative impact is, other than an eye sore.
If this discussion provides more info, I might end up connecting the USB to a windows machine, clearing the dead node, and then hoping that when I plug it back to the HA server, everything will still work.
Additional context
Z-Wave JS to MQTT Home Assistant Add-On v0.15.0*
Z-Wave controller : Nortek Control | HUSBZB-1 | GoControl QuickStick Combo Purchased on amazon August 2017.
*currently not integrated (on purpose) from home-assistant.
Node #1 (Controller) Debug Info Json
Node #22 (Broken) Debug Info Json
Node #23 (Good) Debug Info Json
Let me know if you need me to collect anything else.

@Lockszmith Could you upload also logs from both z2m and zwavejs please?

I knew I was missing something in my report: 🤦
Here are the logs: https://lksz.me/zwjs-1226logs
I switched on Silley logs, stopped the service, cleared the log, and then started the service - so it should show you full initialization.
The node in question is Node 22.
I see the following in the logs in relation to node 22.
Part of the initialization of the controller:
2021-05-17T14:02:58.600Z CNTRLR   received node information:
                                    controller role:            primary
                                    controller is a SUC:        true
                                    controller is a slave:      false
                                    controller supports timers: false
                                    nodes in the network:       1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 1
                                  5, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 33

and then later:

2021-05-17T14:02:58.809Z CNTRLR   [Node 022] The node is asleep.
2021-05-17T14:02:58.810Z CNTRLR   [Node 022] Beginning interview - last completed stage: ProtocolInfo
2021-05-17T14:02:58.810Z CNTRLR » [Node 022] querying node info...

And afterwards as part of return-routes when querying other nodes, here is an example:
2021-05-17T14:02:58.833Z SERIAL « [ACK]                                                                   (0x06)
2021-05-17T14:02:58.834Z SERIAL « 0x012001803e0063070000000000000000000000000000000000000000000000000 (34 bytes)
                                  004
2021-05-17T14:02:58.834Z SERIAL » [ACK]                                                                   (0x06)
2021-05-17T14:02:58.835Z DRIVER « [RES] [GetRoutingInfo]
                                    node ids: 2, 3, 4, 5, 6, 17, 18, 22, 23, 25, 26, 27
2021-05-17T14:02:58.837Z SERIAL » 0x010700801100000069                                                 (9 bytes)
2021-05-17T14:02:58.837Z DRIVER » [REQ] [GetRoutingInfo]
                                    remove non-repeaters: false
                                    remove bad links:     false
2021-05-17T14:02:58.838Z CNTRLR « [Node 001] node neighbors received: 2, 3, 4, 5, 6, 17, 18, 22, 23, 25, 26, 27

I do see that the GetRoutingInfo has remove non-repeaters and remove bad links as false
I thought Remove Association would do the trick, but I see in the logs that a call to Node 002 goes out, but nothing else.
2021-05-17T14:25:40.987Z SERIAL » 0x010b001302048e04001625134b                                        (13 bytes)
2021-05-17T14:25:40.987Z DRIVER » [Node 002] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      19
                                  └─[MultiChannelAssociationCCRemove]
                                      group id: undefined
                                      node ids: 22
2021-05-17T14:25:40.990Z SERIAL « [ACK]                                                                   (0x06)
2021-05-17T14:25:40.994Z SERIAL « 0x0104011301e8                                                       (6 bytes)
2021-05-17T14:25:40.994Z SERIAL » [ACK]                                                                   (0x06)
2021-05-17T14:25:40.994Z DRIVER « [RES] [SendData]
                                    was sent: true

Bottom Line
While I don't think the issue is any way with ZWave-JS, it's probably more to do with the controller, I do believe exposing some additional functionality (forcibly mark a node as dead) would help tidy things up.

To mark a node as failed you should use removeFailedNode api. Check docs https://zwave-js.github.io/node-zwave-js/#/api/controller?id=removefailednode

@robertsLando, the way I understand it - removeFailedNode will only remove a node the controller has marked failed, but in my case, the node is never marked that way.


Composition: ensure layer is disposed with its render target

What does the pull request do?
When a render target is marked as corrupted, the ServerCompositionTarget disposes it. However, the layer created from it isn't disposed: this PR fixes that.
Example
In my case, I have a frame with a fixed physical size, that can't change at all. However, DPI can still change: the render target is marked as invalid, the client size gets adjusted, the scaling too, but Size * Scaling still returns the same frame size at the end and layerSize != _layerSize is always false here:
https://github.com/AvaloniaUI/Avalonia/blob/e0e23c251007e88d561d7cd867280283f80565d9/src/Avalonia.Base/Rendering/Composition/Server/ServerCompositionTarget.cs#L161
However, the layer is dependent on the current scaling, so it should be invalidated.
(Even without this quite specific case, since the layer was created from the render target, I think it probably shouldn't outlive it.)

You can test this PR using the following package version. 11.0.999-cibuild0036408-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]


When using setOrigin() on a Phaser.GameObjects.Group each object origin is adjusted instead of setting the an origin for the group

Version

Phaser Version: 3.70.0

Operating system: MacOS 13.5.2

Browser: Chrome 120.0.6099.129

Description

Example Test Code

create(): void {
    const textArray: Phaser.GameObjects.Text[] = [] // This is an array with Text Objects
    this.textGroup = new Phaser.GameObjects.Group(this, textArray);
    this.textGroup.setOrigin(0,0) // I am expecting this to set a new local origin for all the objects in the array
}

update(): void {
    this.textGroup.rotate(1, 1); // This is causing each text object to rotate along their local origin instead of the whole group being rotated
}

What I am expecting
When using setOrigin() on Phaser.GameObjects.Group I am expecting this to set a single origin for the all the game objects in this group. I want to rotate all the objects in relation to this single origin.
What is happening
When using setOrigin() on Phaser.GameObjects.Group the local origin of each object is changed. When I try to rotate the group all the objects are rotating individually based on their local origin.
Additional Information

I think calling setOrigin() on Phaser.GameObjects.Group should create a new origin for the group of objects.
A good analogy is how shapes are grouped in a common 2D image editor. The origin of the group then can be used for rotating and resizing in relation to its origin. I think Unity also works similarly. When grouping objects in a prefab you can rotate all the objects in relation to the prefab's origin.

Update: I discovered rotateAround() method which is sort of doing what I needed which is Text objects moving around an origin.
The problem with rotateAround() is that it is not adjusting the rotation of the child objects when rotating. See the example here.
My expectation is that the objects would still change their rotation with the group origin.

A Phaser Group isn't a Game Object in its own right, so you cannot set an origin for it. Think of it being more like an advanced pool, for quickly grabbing, using and releasing objects into. If you want a transform hierarchy (like this issue implies), then I would recommend using a Container instead. With careful positioning of Container children you can create them to function the way your code was expecting. See the Labs examples for further details.

@photonstorm Thanks for your note. Will keep this in mind to use a container for next time I want to manipulate a group of objects.
As per the solution I ended up incrementing the rotation angle of each letter to to the radius interval change of rotateAround to get the effect of all the letters rotating around a given centre coordinate.


cask: Add TODOs to deprecate integrated cask commands

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?

Move deprecation from cask cmds and into cmd.rb.
When deprecating the run method of each command, tests had to be rewritten to avoid calling the run method since otherwise a deprecation exception was thrown. By deprecating at the Cask::Cmd level, all cask cmd tests continue to pass.

Nice cleanup, thanks again @whoiswillma!


Loggable :  ManyToMany

How to log an existing ManyToMany relation without having to refactor to OnToMany etc...
thx

with this extension it is not possible to do so.

ok, I will thanks for the answer.


Compiler plugin validation for Links with enum method fails

Description:
The following sample gives a compiler error saying that the link cannot be resolved without method but the method is given as enum object :
import ballerina/http;

service on new http:Listener(9090) {

   @http:ResourceConfig {
     name: "Resource1"
   }
   resource function get path1() returns string {
     return "Path1";
   }

   @http:ResourceConfig {
     name: "Resource1"
   }
   resource function post path1() returns string {
     return "Path1";
   }

   @http:ResourceConfig {
     linkedTo: [
      // No compiler error
      { name: "Resource1", relation: "Relation1", method: "GET"},
      // Compiler error : cannot resolve linked resource without method(HTTP_149)
      { name: "Resource1", relation: "Relation2", method: http:GET}
    ]
   }
   resource function get path2 () returns string {
     return "Path2";
   }
}

Affected version:
The latest master

The compiler plugin validation for links is currently limited to values with string tokens. And if there is a reference value, then the errors for that particular value are hidden at compiler level and if the validation fails then these samples will end up in runtime error.
The above bug occurs when the error is not hidden for methods with reference values.