Expected curly rule schema in IDE different from what is documented

Bug Report

5.4.3
2.3.4
Webstorm 2017.1.4

TypeScript code being linted
The tslint.json configuration itself is where the warning happens:
{
    "defaultSeverity": "error",
    "extends": [
        "tslint:recommended"
    ],
    "jsRules": {},
    "rules": {
        "array-type": [true, "generic"],
        "ban-types": [true, ["Object", "Use {} instead."]],
        "curly": [true, "ignore-same-line"],
        "interface-name": [true, "never-prefix"],
        "no-namespace": [true, "allow-declarations"],
        "no-shadowed-variable": false,
        "quotemark": [true, "single", "jsx-single"]

    },
    "rulesDirectory": []
}

Actual behavior
"curly": [true, "ignore-same-line"] works when linting and single-line if statements do not show an error, however, Webstorm shows the "Type is not allowed" warning for the setting when editing tslint.json.
Expected behavior
The curly rule should accept the given data type correctly like the one documented in https://palantir.github.io/tslint/rules/curly/ for its options.

There's nothing tslint can do to fix this.
This is an issue with Webstorm and Webstorm probably uses the schema from http://json.schemastore.org/tslint which is maintained externally.
If you really need it, you can contribute that change to https://github.com/schemastore/schemastore/

So I looked into the issue a bit more this morning because I also thought it might be Webstorm (hence why I edited the title), but I was able to reproduce the issue in VS Code, with only vscode-tslint enabled. In Webstorm I am using the tslint installation from the node_modules folder and not the global or IDE built-in one.
I was going to close this as a non-issue since the error is being given when linting a JSON and not a .ts file, however I also looked at the node_modules/tslint/rules folder, and noticed that even thought the rule works (I see no problem with /rules/curlyRule.d.ts or /rules/curlyRule.js), curly is a boolean in recommended.d.ts:
export declare const jsRules: {
    "align": {
        options: string[];
    };
    "class-name": boolean;
    "curly": boolean;
...
}

And in recommended.js notice how align has the proper strings option array but curly is a boolean, again, contrary to the documentation:
exports.jsRules = {
    "align": {
        options: [
            "parameters",
            "statements",
        ],
    },
    "class-name": true,
    "curly": true,
...
}

So even though the issue started in a JSON file, I think this needs to be fixed to avoid any other possible problems in the future; I'll look into the fix and make a PR later on.

Closing for expected behavior and looking into the issue on the IDE side.

Looks like this was fixed with the following PR: https://github.com/SchemaStore/schemastore/pull/318

Im still getting this bug, and also finding it happens for multiple rules.
How exactly did you fix it?

Let me clarify.
The schema checking in IDEs are not managed by this project. I believe VS Code uses the SchemaStore's schema, and IntelliJ uses their own schema (which is probably based on SchemaStore's).
The issue is that both of those schemas are out of date and inaccurate. The commit I referenced above fixes this specific issue in the original schema, but the schema still needs to updated in VS Code and IntelliJ.
The reason you're still getting the correct behavior is because these schemas are just used for checking the structure of the tslint.json file. The actual linting is done by TSLint which is not managed by the IDE, so it should be up to date.


Downloads

Any way of onDownloadStart() {} in webview_flutter? Thanks.

Duplicate of https://github.com/flutter/flutter/issues/28257


maybe something wrong

core@master ~ $ systemctl status setup-network
● setup-network.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
core@master ~ $ systemctl status setup-network-environment -l
● setup-network-environment.service - Setup Network Environment
Loaded: loaded (/etc/systemd/system/setup-network-environment.service; static; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2015-05-25 17:49:37 ; 54s ago
Docs: https://github.com/kelseyhightower/setup-network-environment
Process: 956 ExecStartPre=/usr/bin/curl -Ls -o /opt/bin/setup-network-environment -z /opt/bin/setup-network-environment https://github.com/kelseyhightower/setup-network-environment/releases/download/v1.0.0/setup-network-environment (code=exited, status=7)
Process: 953 ExecStartPre=/usr/bin/mkdir -p /opt/bin (code=exited, status=0/SUCCESS)
May 25 17:49:35 master systemd[1]: Starting Setup Network Environment...
May 25 17:49:37 master systemd[1]: setup-network-environment.service: control process exited, code=exited status=7
May 25 17:49:37 master systemd[1]: Failed to start Setup Network Environment.
May 25 17:49:37 master systemd[1]: Unit setup-network-environment.service entered failed state.
May 25 17:49:37 master systemd[1]: setup-network-environment.service failed.

hi, can yoy please provider more data, for context ? hypervisor in use, host OS, etc.
thanks in advance

virtualbox and osx10.10.4

humm. this may be a transient issue derivated from some weird github beahviour. can you try again please ? (vagrant destroy -f; vagrant up)

core@master ~ $ journalctl -xe
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master docker[1351]: Error response from daemon: no such id
May 25 18:09:16 master docker[1351]: time="2015-05-25T18:09:16Z" level=fata
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: No such image: quay.io/coreos/flannel:
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master sdnotify-proxy[1366]: Unable to find image 'quay.io/
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: invalid registry endpoint https://quay
May 25 18:09:16 master dockerd[971]: v2 ping attempt failed with error: Get
May 25 18:09:16 master dockerd[971]: v1 ping attempt failed with error: Get
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master docker[1372]: time="2015-05-25T18:09:16Z" level=fata
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: invalid registry endpoint https://quay
May 25 18:09:16 master dockerd[971]: v2 ping attempt failed with error: Get
May 25 18:09:16 master dockerd[971]: v1 ping attempt failed with error: Get
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=info
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master systemd[1]: docker-cache.service: control process ex
May 25 18:09:16 master systemd[1]: Failed to start Docker cache proxy.
-- Subject: Unit docker-cache.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- Unit docker-cache.service has failed.
-- The result is failed.
May 25 18:09:16 master systemd[1]: Dependency failed for Docker Application
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- Unit docker.service has failed.
-- The result is dependency.
May 25 18:09:16 master systemd[1]: Job docker.service/start failed with res
May 25 18:09:16 master systemd[1]: Unit docker-cache.service entered failed
May 25 18:09:16 master systemd[1]: docker-cache.service failed.
May 25 18:09:16 master dockerd[971]: time="2015-05-25T18:09:16Z" level=erro
May 25 18:09:16 master sdnotify-proxy[1366]: time="2015-05-25T18:09:16Z" le
May 25 18:09:16 master systemd[1]: flanneld.service: main process exited, c
May 25 18:09:16 master systemd[1]: Failed to start Network fabric for conta
-- Subject: Unit flanneld.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- Unit flanneld.service has failed.
-- The result is failed.
May 25 18:09:16 master systemd[1]: Unit flanneld.service entered failed sta
May 25 18:09:16 master systemd[1]: flanneld.service failed.
lines 2990-3054/3054 (END)

is that in second boot ? i mean - so in your case this is reproducible ?

yes ,maybe the reason is GFW in china,i will try proxy

ah, ok. do plz. afaict it should just work ... (will be afk in next few hours). will look at your finding early tomorrow.

@alexwhen i strongly suspect that you were right. Github hosted content is being blocked in-transit before you can consume it by PRC's GFW... using a proxy should fix it afaict. :-)

==> node-01: Importing base box 'coreos-alpha'...
==> node-01: Matching MAC address for NAT networking...
==> node-01: Checking if box 'coreos-alpha' is up to date...
==> node-01: Setting the name of the VM: kvc_node-01_1432704358802_78637
==> node-01: Fixed port collision for 22 => 2222. Now on port 2200.
==> node-01: Clearing any previously set network interfaces...
==> node-01: Preparing network interfaces based on configuration...
node-01: Adapter 1: nat
node-01: Adapter 2: hostonly
==> node-01: Forwarding ports...
node-01: 22 => 2200 (adapter 1)
==> node-01: Running 'pre-boot' VM customizations...
==> node-01: Booting VM...
==> node-01: Waiting for machine to boot. This may take a few minutes...
node-01: SSH address: <IP_ADDRESS>:2200
node-01: SSH username: core
node-01: SSH auth method: private key
node-01: Warning: Connection timeout. Retrying...
==> node-01: Machine booted and ready!
==> node-01: Setting hostname...
==> node-01: Configuring and enabling network interfaces...
==> node-01: Running provisioner: file...
==> node-01: Running provisioner: shell...
node-01: Running: inline script
==> node-01: Running triggers after up...
==> node-01: waiting for node-01 (<IP_ADDRESS>) to be ready...
WARNING: something going wrong - http://<IP_ADDRESS>:10250 (node-01 (<IP_ADDRESS>)) taking too long to respond.
==> node-02: Importing base box 'coreos-alpha'...
==> node-02: Matching MAC address for NAT networking...
==> node-02: Checking if box 'coreos-alpha' is up to date...
==> node-02: Setting the name of the VM: kvc_node-02_1432704882435_41550
==> node-02: Fixed port collision for 22 => 2222. Now on port 2201.
==> node-02: Clearing any previously set network interfaces...
==> node-02: Preparing network interfaces based on configuration...
node-02: Adapter 1: nat
node-02: Adapter 2: hostonly
==> node-02: Forwarding ports...
node-02: 22 => 2201 (adapter 1)
==> node-02: Running 'pre-boot' VM customizations...
==> node-02: Booting VM...
==> node-02: Waiting for machine to boot. This may take a few minutes...
node-02: SSH address: <IP_ADDRESS>:2201
node-02: SSH username: core
node-02: SSH auth method: private key
node-02: Warning: Connection timeout. Retrying...
==> node-02: Machine booted and ready!
==> node-02: Setting hostname...
==> node-02: Configuring and enabling network interfaces...
==> node-02: Running provisioner: file...
==> node-02: Running provisioner: shell...
node-02: Running: inline script
==> node-02: Running triggers after up...
==> node-02: waiting for node-02 (<IP_ADDRESS>) to be ready...
WARNING: something going wrong - http://<IP_ADDRESS>:10250 (node-02 (<IP_ADDRESS>)) taking too long to respond.

Volumes/project/kvc $ flm
The authenticity of host '[<IP_ADDRESS>]:2200' can't be established.
RSA key fingerprint is 29:83:ff:99:d5:f7:ec:6c:5b:1e:96:23:f8:40:f5:64.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[<IP_ADDRESS>]:2200' (RSA) to the list of known hosts.
MACHINE		IP		METADATA
001c2cf6...	<IP_ADDRESS>	role=master
45e8a433...	<IP_ADDRESS>	role=minion
9e5911f6...	<IP_ADDRESS>	role=minion
:+1:
Thank you very much!

:+1:  :100:


Allow unique to work with NA values

Very small change
Edit: failed checks for nightly build; can't figure out why or how to fix. I'm guessing the switch from DataArray to Array is related to the nullable business in 0.4 ?

I'm not sure that you can know that an NA is not unique. I'll let those who have thought more about the semantics of Julia's NA field this.

Hmm, I can see what your saying. But I feel like unique is less about redundant values than about redundant information, at least to me.

I've just merged #817 that addresses the problem of NA in nonunique(), among the other things, so I would close this one.
As for NA semantics -- failing if the data frame has NAs is definitely not what we expect. #817 considers that NA=NA. That conforms to R logic.
There is the logic in NA!=NA approach, but in practice it would just complicate the things. Also, it leads to some weird results. E.g. if you have boolean array Bool[ NA, NA, NA ] in principle you cannot have more than two nonunique entries, but with NA!=NA every element would be unique.


radsecproxy: init at 1.6.9

Motivation for this change
Missing package. Specially useful in combination with freeradius, e.g. for eduroam setups.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[x] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Thank you


Search error: ENAMETOOLONG

When I press on Ctrl + P and enter the name of some JS or TS file, the files are not found. Only the last opened files are available. This is a recent problem, that appeared on the 1.45.1 version of Visual Studio code.

Can you share some more details and check whether the tips in https://github.com/microsoft/vscode/wiki/Search-Issues#missing-search-results help?

Hello Rob,
I have read the tips. The files that I try to open with Ctrl + P are not in a seach.exclude setting, files.exclude settings or in .gitignore settings. If I try to search them with Ctrl + shift + F, the files are found. The files are encoded in UTF.
I have notice that when I try to quick open with Ctrl + P a file, a message "spawn ENAMETOOLONG"  is displayed in the status popup window.
I some logs can be enabled to get more information, could you tell me how to enable them and find them ?

I have notice that when I try to quick open with Ctrl + P a file, a message "spawn ENAMETOOLONG" is displayed in the status popup window.

Ah, that's a good clue. We are probably generating a command line command which is too long.
Please do the following

Run the command "Set log level" and change it to "Trace"
Run the search again
Show the search-related messages in the "Log (Window)" output panel

Here is the log output.
quick-search.log

Ok, yeah you seem to have tons of excluded folders, so the command that we generate is too long. I should try to improve this experience so I'll leave this open.

You can work around it by getting rid of some excluded patterns, or moving those patterns to a .ignore file.

Hello,
Thank you for your advices of workaround by removing some excluded patterns. He have also noticed that when the paths overrides 70 characters, there are some problems to search.
Regards,
Xavier

As mentioned in the linked issue #149727: introducing an option to not add the excluded files to the search command parameters would solve this issue (for me). The files you want to exclude from the search can be added to an .ignore file

Does anyone have a temporary fix or something so I could try debugging this problem? It's really annoying since I use the search option very often.

This problem JUST started happening to me today.  It comes/goes based on the setting of the exclude button in search:
However, my list of exclusions seems short:
.dbb,.evt,.log,.err,.rec,.asmdump,.symmap,.map,*.wrn
and it happens when the exclusions are NOT excluding anything (i.e. when all files are searched).
I have seen other reports based on number of open files, or number of source-control-pending files, but I have neither.
Can someone please provide more details about the cause and workarounds/fixes here?  This has apparently been a long-standing bug.
Thanks!
2023-05-26 16:03:02.918 [error] A system error occurred (spawn ENAMETOOLONG): Error: A system error occurred (spawn ENAMETOOLONG)
at M (vscode-file://vscode-app/c:/Users/bradlit/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1829:6480)
at vscode-file://vscode-app/c:/Users/bradlit/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1837:4256
at async vscode-file://vscode-app/c:/Users/bradlit/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1837:2747
at async e.SearchService.textSearch (vscode-file://vscode-app/c:/Users/bradlit/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1837:2022)
at async e.SearchModel.H (vscode-file://vscode-app/c:/Users/bradlit/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:2246:10010)


build(shared): update from Azure.core

Description
Some files were updated in Azure.core
ran .\eng\DownloadSharedSource.ps1 to get them up to date.
Checklist
To ensure a quick review and merge, please ensure:

[ ] The PR has a understandable title and description explaining the why and what.
[ ] The PR is opened in draft if not ready for review yet.

If opened in draft, please allocate sufficient time (24 hours) after moving out of draft for review

[ ] The branch is recent enough to not have merge conflicts upon creation.

Ready to Land?

[ ] Build is completely green

Submissions with test failures require tracking issue and approval of a CODEOWNER

[ ] At least one +1 review by a CODEOWNER
[ ] All -1 reviews are confirmed resolved by the reviewer

Override/Marking reviews stale must be discussed with CODEOWNERS first

Close this, since it will be handled in https://github.com/Azure/autorest.csharp/pull/1902


Alternative parallel execution frameworks in xarray

Is your feature request related to a problem?
Since early on the project xarray has supported wrapping dask.array objects in a first-class manner. However recent work on flexible array wrapping has made it possible to wrap all sorts of array types (and with #6804 we should support wrapping any array that conforms to the array API standard).
Currently though the only way to parallelize array operations with xarray "automatically" is to use dask. (You could use xarray-beam or other options too but they don't "automatically" generate the computation for you like dask does.)
When dask is the only type of parallel framework exposing an array-like API then there is no need for flexibility, but now we have nascent projects like cubed to consider too. @tomwhite
Describe the solution you'd like
Refactor the internals so that dask is one option among many, and that any newer options can plug in in an extensible way.
In particular cubed deliberately uses the same API as dask.array, exposing:

the methods needed to conform to the array API standard
a .chunk and .compute method, which we could dispatch to
dask-like functions to create computation graphs including blockwise, map_blocks, and rechunk

I would like to see xarray able to wrap any array-like object which offers this set of methods / functions, and call the corresponding version of that method for the correct library (i.e. dask vs cubed) automatically.
That way users could try different parallel execution frameworks simply via a switch like
ds.chunk(**chunk_pattern, manager="dask")

and see which one works best for their particular problem.
Describe alternatives you've considered
If we leave it the way it is now then xarray will not be truly flexible in this respect.
Any library can wrap (or subclass if they are really brave) xarray objects to provide parallelism but that's not the same level of flexibility.
Additional context
cubed repo
PR about making xarray able to wrap objects conforming to the new array API standard
cc @shoyer @rabernat @dcherian @keewis

This sounds great! We should finish up https://github.com/pydata/xarray/pull/4972 to make it easier to test.

Another parallel framework would be Ramba
cc @DrTodd13

Sounds good to me. The challenge will be defining a parallel computing API that works across all these projects, with their slightly different models.

at SciPy i learned of fugue which tries to provide a unified API for distributed DataFrames on top of Spark and Dask. it could be a great source of inspiration.

Thanks for opening this @TomNicholas

The challenge will be defining a parallel computing API that works across all these projects, with their slightly different models.

Agreed. I feel like there's already an implicit set of "chunked array" methods that xarray expects from Dask that could be formalised a bit and exposed as an integration point.

Might I propose Arkouda?
https://github.com/Bears-R-Us/arkouda
https://chapel-lang.org/presentations/Arkouda_SIAM_PP-22.pdf

Might I propose Arkouda?
https://github.com/Bears-R-Us/arkouda https://chapel-lang.org/presentations/Arkouda_SIAM_PP-22.pdf

Have they improved recently to support more than 1D arrays?

Not really a generic and parallel execution back-end, but Open-EO looks like an interesting use case too (it is a framework for managing remote execution of processing tasks on multiple big Earth observation cloud back-ends via a common API). I've suggested the idea of reusing the Xarray API here: https://github.com/Open-EO/openeo-python-client/issues/334.

@rabernat just pointed out to me that in order for this to work well we might also need lazy concatenation of arrays.
 Instead dask is what does lazy concatenation under the hood right now.
This is a problem - it means that concatenating two cubed-backed DataArrays will trigger loading both into memory, whereas concatenating two dask-backed DataArrays will not. If #4628 was implemented then xarray would never load the underlying array into memory regardless of the backend.

Cubed should define a concatenate function, so that should be OK

Cubed implements concat, but perhaps xarray needs richer concat functionality than that?

IIUC the issue Ryan & Tom are talking about is tied to reading from files.
For example, we read from a zarr store using zarr, then wrap that zarr.Array (or h5Py Dataset) with a large number of ExplicitlyIndexed Classes that enable more complicated indexing, lazy decoding etc.
IIUC #4628 is about concatenating such arrays i.e. neither zarr.Array or ExplicitlyIndexed support concatenation, so we end up calling np.array and forcing a disk read.
With dask or cubed we would have dask(ExplicitlyIndexed(zarr)) or cubed(ExplicitlyIndexed(zarr)) so as long as dask and cubed define concat and we dispatch to them, everything is 👍🏾
PS: This is what I was attempting to explain (not very clearly) in the distributed arrays meeting. We don't ever use dask.array.from_zarr (for e.g.). We use zarr to read, then wrap in ExplicitlyIndexed and then pass to dask.array.from_array.


Make diffable output.

Hi @myronmarston I would like to use the suggested values_match?-helper in a matcher which should be diffable - on another project.
RSpec::Matchers.define :have_option_value do |expected|
  match do |actual|
    values_match? subject.public_send(actual.to_sym), expected
  end

  diffable

  failure_message do |actual|
    format(%(expected that option "%s" has value "%s"), actual, expected)
  end

  failure_message_when_negated do |actual|
    format(%(expected that option "%s" does not have value "%s"), actual, expected)
  end
end

The diff should be done by using the value of subject.public_send(actual.to_sym) leaving the actual-value untouched because I need it for the failure messages.
Is there a way to express this using the dsl? While reading the rspec sources I didn't find a proper way to do it. Thanks a lot in advance.

First off, it's important that you pass expected as the first argument to values_match? and actual as the second argument, so your match block should be:
  match do |actual|
    values_match? expected, subject.public_send(actual.to_sym)
  end

The order matters because internally RSpec uses the === protocol, which is not a symmetrical operator.  (As an example, consider that be > 10 knows how to match 20, but 20 does not know how to match be > 10 nor should it).
As to your question about diffing -- it simply calls expected and actual on the matcher.  To redefine actual, you could do:
attr_reader :actual

match do |option|
  @actual = subject.public_send(option.to_sym)
  values_match? expected, actual
end

Cool. Thanks, ok. And to make the "old" value available within
failure_message do |actual|
    format(%(expected that option "%s" has value "%s"), @old_actual, expected)
end

I use  just another instance variable, correct?

Just for the protocol. This works and makes the "old" value available for error messages.
RSpec::Matchers.define :have_option_value do |expected|
  match do |actual|
    @old_actual = actual
    @actual     = subject.public_send(actual.to_sym)
    values_match? expected, @actual
  end

  diffable

  failure_message do |actual|
    format(%(expected that option "%s" has value "%s"), @old_actual, expected)
  end

  failure_message_when_negated do |actual|
    format(%(expected that option "%s" does not have value "%s"), @old_actual, expected)
  end
end


When in watch mode, do not show any completer

Start the DiceDB server with --enable-watch --enable-multithreading and fix the following issue in DiceDB CLI.
Right now, we see completer when in WATCH mode, do not show that. For regular mode, it should be shown.

@arpitbbhayani Can I pick this up ?

@arpitbbhayani  can I pick this

@arpitbbhayani Is there any issue with the dicedb client's watchConn ? I am not receiving any messages in the watchConn.Channel().

https://github.com/DiceDB/dicedb-cli/pull/18


underscore.js dependency required?

ReferenceError: _ is not defined
.constant('_', _)
I am getting this error while using the demo code.
After searching i guess it need underscore.js library?
Is it required?
Its not mentioned in description about the dependency of underscore js.

I think that's lodash which has superseeded underscore. Lodash is in the dependencies in bower.json, so you need to load all the dependencies. An example of the order is in the  element here. Hope this helps.


Possible incorrect Network usage in augmentLabels

https://github.com/istio/istio/blob/a26b3a14451971f3acde32e3c57eba0213020328/pilot/pkg/serviceregistry/kube/controller/controller.go#L1132
It seems like it should take into a account proxy.Metadata.Network and/or use c.Network()?
c.network == istio-system label while c.Network() can read from pod label, system namespace, or meshNetworks.
I just stumbled upon this doing something else, so not directly impacted and haven't heard any real user reports. These days I think the vast majority of users are using system namespace labels, which makes it probably not a concern in practice.
fyi @ramaraochavali @hzxuzhonghu

c.Network() is used by endpoint builder, it may rely on the labels set by labelutil.AugmentLabels
proxy.Metadata.Network is from ISTIO_META_NETWORK, we set it into proxy.Labels in setTopologyLabels
So we prioritize ISTIO_META_NETWORK env over pod label.

it's currently using c.network though which is exclusively from the system namespace

I read the opposite, c.network is also referring system ns label.
// setNetworkFromNamespace sets network got from system namespace, returns whether it has changed
func (n *networkManager) setNetworkFromNamespace(ns *v1.Namespace) bool {
	nw := ns.Labels[label.TopologyNetwork.Name]
	n.Lock()
	defer n.Unlock()
	oldDefaultNetwork := n.network
	n.network = network.ID(nw)
	return oldDefaultNetwork != n.network
}

yeah that's what I mean - it's only considering the namespace label. shouldn't it also include things like MeshNetworks

Good catch MeshNetworks  is not respected here, one reason should be that when we implemented system ns. meshNetworks  is to be deprecated?


Fix typo in README

Messages

:book:

Thank you very much for making our website better :heart:!

  Generated by :no_entry_sign: dangerJS against 5ba9b5cc91dbe5ccc46b0e56e7d7be66e1081f3d


DDOSLogger user guide

I used the DDOSLogger, but the console.app don't show the log.

Can you provide some sample code or a sample project where you see the issue?
Can you try the following code:
DDLog.add(DDOSLogger.sharedInstance)
DDLogError("Test Error Message")

Closing due to lack of response. Feel free to reopen


Android - Page scrolls down when i start typing

Until typing everything is ok. However after starting typing page scrolls down(shifting). I am not able to solve this whatever i do...
<ImageBackground
          source={bgSrc}
          style={styles.background}
          resizeMode="cover">

         <StatusBar hidden={true} />

          <KeyboardAwareScrollView
            showsVerticalScrollIndicator={false}
            enableOnAndroid
          >

            {screenToShow}

          </KeyboardAwareScrollView>

</ImageBackground>

const styles = StyleSheet.create({
  container: {
    width: '100%',
    height: height,
    backgroundColor: '#555',
  },
  background: {
    flex: 1,
    width: null,
    height: null,
    justifyContent: 'center',
    alignItems: 'center'
  }
});

After typing in password field page moves down as u see:

Hi...
Even i am facing the same issue. Any updates on this issue?

This issue is still found in Android version 7.0 and above. It is perfectly working fine in android version below 7.

Facing same issue

same issue but on ios also :)

Was anyone able to find a workaround to this issue? This is happening on iOS as well for me.

+1 facing same issue, don't know how to fix it :(

+1

+1 still facing this issue

hello Facing same issue any solution?

+1

+1

this library is buggy try this library instead https://www.npmjs.com/package/react-native-keyboard-manager

this library is buggy try this library instead https://www.npmjs.com/package/react-native-keyboard-manager

changing android:windowSoftInputMode mode to
    android:windowSoftInputMode="adjustResize"
    in androidmanifest fixed this issue for me.

+1

+1

Did anyone managed to work around this?

Same issues on Android.

Still actual

1

1


GEM-164: move the security tests in gemfire-test module inside the co…

…m.gemstone.gemfire.security packages to the open side.
and related resource files

Can you remove the Pivotal copyright and add the ASF license header?

created another pull request to address this.


Increase the default value for MinPartitionSize variable

'32' seems like a very small value for such a variable.
I personally doubt that we would actually need 4 partitions for a dataframe with the shape of (nrows=256, columns=4) as the overhead of the execution engine will likely overdo all the benefits we can get from parallelization on such small data:
https://github.com/modin-project/modin/blob/d6a6cf380e29ad236d1d8e2004f124bf586069dd/modin/config/envvars.py#L602-L611
We should run some tests and reconsider the default value for this

@dchigarev it seems that at first it makes sense to increase the size only by row. However, now changing this parameter will also affect the data columns. Here, apparently, it will also be necessary to revise the approach of minimal square partitions towards rectangular ones (a set of values describing two dimensions).


Use snake_case for naming Python files

Closes https://github.com/github/copilot-codespaces-demo/issues/12.

@joshaber — can you take a look?

Thanks @dkmiller! Mind updating the code tour too? https://github.com/github/copilot-codespaces-demo/blob/68a6c40f949fa8f11a7d2a4054496ae5780d7951/.tours/JSONtoUser.tour

@joshaber done! Take another look?


What do you think about doing npm install only?

Hi team!
Thank you for your commitment to cnb.
by the way, I think, we not always need npm start.
For example, I usualy make architecture with  javascript for frontend and  php for backend.
In this case use the web server is httpd or nginx, that's why I can't need npm start
do you have a plan for npm only use npm install?
Please confirm where necessary:

[ ] I have included a log output
[ ] My log includes an error message
[ ] I have included steps for reproduction

So in this case, npm-cnb would just be used for compiling the frontend app, served by php backend?

You are right.
In this case, only javascript library install to node_modules by npm .

You should be able to specify the buildpacks you want to run as an argument to pack ie something like pack build --buildpacks=org.cloudfoundry.node-engine,org.cloudfoundry.npm,org.cloudfoundry.php-web,org.cloudfoundry.nginx

What'll happen in that case is that npm insstall will occur, and then later cnbs will provide app start commands.

oh!! I understand.
Since php-web-cnb and npm-cnb have the same value processes-> type = web written in launch.toml, Thats' why When php-web-cnb is executed after npm-cnb, npm start is overwritten and not executed
https://github.com/cloudfoundry/npm-cnb/blob/master/modules/modules.go#L97
https://github.com/cloudfoundry/php-web-cnb/blob/master/phpweb/contributor.go#L173
Thank you for your answer!

Glad I could help. Closing this issue
On Fri, Aug 23, 2019 at 11:52 PM Kazuhiko Yamashita <
<EMAIL_ADDRESS>wrote:

oh!! I understand.
Since php-web-cnb and npm-cnb have the same value processes-> type = web
written in launch.toml, Thats' why When php-web-cnb is executed after
npm-cnb, npm start is overwritten and not executed
https://github.com/cloudfoundry/npm-cnb/blob/master/modules/modules.go#L97
https://github.com/cloudfoundry/php-web-cnb/blob/master/phpweb/contributor.go#L173
Thank you for your answer!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/cloudfoundry/npm-cnb/issues/11?email_source=notifications&email_token=ABNGTYZLM7TFOGOVTPMMRXLQGCWBHA5CNFSM4IODDNY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5BXXWA#issuecomment-524516312,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABNGTYY75ACPQGHRWUFV7T3QGCWBHANCNFSM4IODDNYQ
.


[PE-D][Tester D] NRIC format is not correct

In the UG, it was mentioned that "NRIC need to be in the correct format. The first letter must be either ‘S’, ‘T’ or ‘G’ (E.g. S9935010Y)". However, when I tried to add an entry for NRIC with a different format (e.g. all digits), it worked.

This could be addressed by using a more stringent regex restriction.

Labels: type.FunctionalityBug severity.Medium
original: Jun-How/ped#3

Done in personal branch, will do for duplicate then merge

Fix


Upgrade to babel-7 and jest 24

Description

Update all babel packages to @babel scope and version 7.x
Update jest to version 24

Types of changes

[ ] 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 change)
[x] Chore, documentation, cleanup

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Checklist:

[x] My code follows the code style of this project.
[x] I have updated the documentation (if required).
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Pull Request Test Coverage Report for Build 344

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 100.0%

Totals

Change from base Build 333:
0.0%

Covered Lines:
60

Relevant Lines:
60

💛  - Coveralls


first-commits: Initialize AMI with base Windows Server 2022

Initialize project with a base windows image and a bootstrap winrm file for packer to be able to connect to the instance via WinRM.
🗣 Description
This PR only contains the base Windows Server 2022 image for initializing the project.
The Windows Administrator password for this AMI is set by AWS SSM Parameter Store.
💭 Motivation and context
This project can eventually be used to be able to create machine images of Windows Commando VM.
🧪 Testing
Need to have proper credentials set as repository secrets
✅ Pre-approval checklist

[x] This PR has an informative and human-readable title.
[x] Changes are limited to a single goal - eschew scope creep!
[x] All future TODOs are captured in issues, which are referenced in code comments.
[x] All relevant type-of-change labels have been added.
[x] I have read the CONTRIBUTING document.
[x] These code changes follow cisagov code standards.
[x] All relevant repo and/or project documentation has been updated to reflect the changes in this PR.
[x] All new and existing tests pass.

@itsmostafa - Can you please elaborate on why you closed out this PR?


Please add tailscale upgrade instructions

Love this guide. I've used it on three units without a hitch.
Please add instructions for updating the tailscale service to the latest version (as updated become available).

That's a good call.
I need to check if the Debian repo they host has ARM packages, which will make it easier than the binary download we do now. From the download page it does say they have packages for ARM 32-bit and 64-bit so hopefully that'll work.

I've just tested using the Debian repo and it works great on my ERL. I'll try on the ER4 later, but I think that should work fine. This means upgrading should be a simple sudo apt-get upgrade.
I'll try and figure out the right modifications to the instructions but it's quite straightforward. Via #1 I'm also investigating tailscaled not properly reconnecting after reboot so I'll coordinate updating the instructions with both of these tickets.

Very quick notes on setting up the Debian repo:
configure
set system package repository tailscale url https://pkgs.tailscale.com/stable/debian
set system package repository tailscale distribution stretch
set system package repository tailscale components main
commit
sudo bash
curl -fsSL https://pkgs.tailscale.com/stable/debian/stretch.gpg | apt-key add -
exit
sudo apt-get update
sudo apt-get install tailscale

should the readme then be updated to use the debian distribution instead? Wondering whether I should change since I have set my ERX up using the instructions in README.

I have a branch which has a rough cut of that method, if you'd like to try it out: https://github.com/jamesog/tailscale-edgeos/tree/package-repo
I haven't had a lot of free time to fully test it, hence it's not in the main branch yet.

@jamesog Thanks for the great guide and scripts!
In the README present in the package-repo branch you refer to a script: /config/scripts/post-config.d/tailscale.sh
However this script doesn't seem to be anywhere in your repo, what should this file contain?

@esolitos this is generated by the firstboot script: https://github.com/jamesog/tailscale-edgeos/commit/edee1367d0b4b91d29460ca78ee0ab0e348f9bb5#diff-be787cd2908ede311fdeb2dbe14d2c12b7cc24224d5ccf95712d94d7c5b7e852
Thanks for testing the package-repo branch!

Ah! I see, I did not notice you updated the firstboot script so following the guide I downloaded the "old" file from the main branch. :)
Downloaded now the new one and all works out. 👍🏼
Already setup 2 edgerouter x with your giude, all seems to be ok.
But worry not: I will come here and scream very loudly if everything breaks at the first upgrade, considering the 2 routers are 3000km apart. 😆

It's been a long time (sorry about that!) but I've finally sorted out a proper process for using the package repo as of cb7f10c760e5f10187970a09312658cb28ec8726. There's a note on how to upgrade near the bottom.
I haven't written up a migration guide for moving from the old manual method but hopefully people can figure it out. The new process is mostly automated 🎉 .

Thank you again, no worries about the delay, the final result seems really solid. :)


Key Vault Dimensions for Newer Alerts

When will Key Vault support dimensions for newer alerts?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e93c2ad0-495f-434e-cb12-f108dee20590
Version Independent ID: 536af97d-2da1-c252-ad35-03f3103cf52a
Content: Supported resources for metric alerts in Azure Monitor
Content Source: articles/azure-monitor/platform/alerts-metric-near-real-time.md
Service: azure-monitor
Sub-service: alerts
GitHub Login: @snehithm
Microsoft Alias: snmuvva

@bdschaap Thanks for the comment! We will check on this request and get back to you with an update.
@snehithm Your comments please.

Key Vaults is included when I checked today.
#please-close

#assign:rboucher

#please-close


Empty arrays removed during request using form_params

I am sending a multidimensional array as a POST form parameter to my own url endpoint. My request looks like this:
$client->post($url, ["form_params" =>
    ["groups" => ["new"=> [2,5,7], "removed" => [], "others" => [3,8]]
];

Upon arrival all empty arrays within the array have been removed:
$groups = ["new"=> [2,5,7], "others" => [3,8]];
Changing the request option from "form_params" to "json" (and using json_decode()) upon arrival keeps the empty array intact.
Is that expected behaviour? Or am I doing something wrong?

This is a known behaviour of http_build_query which is used internally to create the form.
Although the RFC says nothing about empty values (which mean they are not forbidden => should be valid), I cannot say that similar libraries out there have obvious support for empty values.


Header not scrollable.

I use datatables with bootstrap3. If there are too many columns I want to have an horizontal scrolling. It works very fine, but only for my table-body. My table-head is always full shown and breaks out of my surrounding div. The body is scrollable and inside my surrounding div. As example I see all 10 columns of the head but only the first 5 columns of the table body - which I can scroll to see all columns.
$('#datatableid').dataTable( {
"bProcessing": true,
"aaData": dataSet,
"scrollX": true,
"fixedHeader": true
});
Attribute dataSet contains the correctly displayed data. If I change the options like "fixedHeader":false there isn't any change to my problem.

FixedHeader is not compatible with scrollX at this time - see the compatibility table.

Thanks for this response, but like I wrote the problem is not the fixedHeader:
"change the options like "fixedHeader":false there isn't any change to my problem."

Can you link to a page showing the issue please.

Can you link to a page showing the issue so I can debug it please.

I'm afraid not (and I know it's very difficult to get help without an live-page). Hope there is an idea without a debugging site. The table has correct content and it's correctly displayed if all columns can be displayed at once. Only if my columns are too big there is this issue.
This is the html-Snippet:

Results

The datatable part (without fixedHeader):
$('#datatableid').dataTable( {
"bProcessing": true,
"aaData": dataSet,
"scrollX": true,
"fixedHeader": false
});
This is the first line of table-definition:

I'm afraid there is very little help I can offer without being able to debug a page showing the issue. I'll try to make some time myself in the next couple of weeks to product a page that shows the issue, but I can't promise anything. If you can use JSFiddle or http://live.datatables.net to show the issue, that would be very useful.

Here's an example on JSFiddle where you can see the problem: http://live.datatables.net/pikifuqu/1/edit
Trying to scroll the table while your cursor is on the table scrollHead, it won't work. For it to work, you need to have your cursor over the table scrollBody.
Hope this helps!

An easy workaround is to add the following CSS (assuming that .dataTables_scrollHead is 50px tall):
// `.dataTables_scrollHead` is 50px tall
.dataTables_scrollBody {
  padding-top: 50px;
  margin-top: -50px;
}

However, if the columns change width, which in turn affect height of the header row, this code won't update..

Thanks for the test case - I'm not sure that it shows the original issue, however, yes I can see that the header does not scroll the table. Interestingly this is the first time this has been raised, so I'm not going to commit a fix for it just yet, but will look for additional feedback on this one.

Thanks for your support @nddery. But it's not the original issue. Your example shows the problem that the header isn't scrollable if I select it. Like you can see on the screenshot the header in my case breaks out of the design and is shown in the full length while the body is scrollable and fits to the design.
However I tried your workaround but for my issue it doesn't work.

@DataTables I've opened an issue in the forums for the issue I've mentioned.
@Gersee Have you tried removing your own CSS from the equation ? Sounds like a CSS issue.

I solved this problem. It was like you both assumed a wrong css-setting. Went through all linked files and found in an external plug-in a css part with:
    .dataTables_scrollHead {
      overflow: visible !important;
    }

After deleting this part the problem was gone. Thanks for your help!

I am having this same issue as well.


Make rich-text-editor-plugin plugin compatible with OpenJDK 17

See https://issues.appian.com/browse/INFRA-24966

@ddtobiasz FYI

Noted, we got a bunch of these for other plugins too..

Is there a playbook or cheat sheet on the best way to upgrade?  Is it just changing from JavaVersion.VERSION_1_8 to JavaVersion.VERSION_17 in build.gradle?

HA -- so I did what I do best with anything Java-build related and delegated 😉
I asked CS to update their "plugin template" repo since this affects all plugins, and was going to apply changes to all our plugins after that.
@marcoamador was kind enough to put out this PR -- there's still some discussion open on it, but my plan was to copy that paradigm in this and a few other ones when it's complete.

WAITTTTT a minute -- @marcoamador's first comment in the PR I linked above was that he tested that specific change with this repo! @marcoamador is that something you can push to here as a PR??

@ddtobiasz yep, can do that. The branch I tested still did not have the latest accessibility changes. I'll merge that into my branch and submit a PR.
The build was fine but we should probably validate the JAR in an env to play it safe.

@ddtobiasz @jedfonner here it is - https://github.com/appian/rich-text-editor-plugin/pull/7


Improved build on OSX, update to lighter-weight SeqLib

This PR address issue 334 which noticed an issue with compiler flags not being passed to the SeqLib build. In addition:
-- separates CXXFLAGS from CFLAGS, and separates out the BAMTools build into src/Makefile.bamtools
-- addresses a few minor compiler warnings
-- update to lighter SeqLib, which removes some heavy files from the repos

So I updated my Bioconda PR to point to your latest @walaj/freebayes master, but I'm now hitting some vtable issues during the build: https://travis-ci.org/bioconda/bioconda-recipes/jobs/177811399#L972

Update: I added back in a patch (CXX=g++ ${CXXFLAGS}; https://github.com/bioconda/bioconda-recipes/pull/2815/commits/ecd35801bef8d7cf7f83353d59446252bc0c8418) on top of your latest commit, and things appear to be back in working order.

I see what's happening. The sub-modules like the Smith-Waterman library also have CFLAGS instead of CXXFLAGS. The ideal solution would be to update the flags on the submodules, but the patch from @kyleabeauchamp is sufficient for now. I just updated the PR with this fix.

Thanks @walaj, I have updated my recipe to use your latest commit (b6041c6).  I think it's great that things should now build out-of-the-box on all the platforms, I will update when the build finishes successfully in a few hours.

Bioconda builds passed using your latest commit.  Thanks!

Great, thank you @kyleabeauchamp !

As far as I can see from my tests, this now fixes issues #346 and PR #341. This also separates the BamTools build into a separate Makefile so that CMake is only needed now if one wants the BamTools version. Also updated README with instructions for how to optionally build with BamTools. Either build approach works for me.
@mmokrejs suggests switching from O3 to O2, and some other build suggestions. I'll try not to mess more with the build in this PR, but these could be incorporated in the next update.

This also separates the BamTools build into a separate Makefile so that CMake is only needed now if one wants the BamTools version. Also updated README with instructions for how to optionally build with BamTools. Either build approach works for me.

Look into https://github.com/gentoo/gentoo/tree/72bcf8aa8b3c95da31c4ae6bf4ccec376a7ec3ea/sci-biology/bamtools for additional changes Gentoo Linux currently contains. I tried to contribute some stuff but these changes should be attributed to @SoapGentoo . The ebuild file should still be improved because nobody realized "CMake is only needed now if one wants the BamTools version". Now it requires cmake for everybody.
Bundling 3rd-party code is just a waste of resources on all sides. That is all I can add.

@ekg just wanted to bump this since it resolves the bug with bamleftalign and makes an easier build. Am thinking of disentangling BWA/Fermi (unless you would like to use someday) from the build to make packaging FB easier, but don't want to do too much in one step.

@walaj This PR has a conflict in src/Makefile now, can you update it?

@nsoranzo Thanks for pointing this out. Done.

would you guys consider moving away from handwritten makefiles? In practice, handwritten Makefiles are non-portable, because adding the boilerplate codefor all platforms is hard and oftentimes not worth it. How about if I send in a PR for CMake, Autotools or Meson?

A cmake based build would be amazing. I have never learned how to use it
effectively so we have retained the handmade makefile.
On Tue, Apr 25, 2017, 9:59 PM David Seifert<EMAIL_ADDRESS>wrote:

would you guys consider moving away from handwritten makefiles? In
practice, handwritten Makefiles are non-portable, because adding the
boilerplate codefor all platforms is hard and oftentimes not worth it. How
about if I send in a PR for CMake, Autotools or Meson?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ekg/freebayes/pull/338#issuecomment-297147275, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAI4ETdpQx75hr6RaX5c1ezuHjdmivb7ks5rzlCRgaJpZM4K4v8L
.


deduplicate limit orders

possible to spam limit orders by splitting limit orders like @franklinbaldo :)

although currently split limit orders apparently behave differently? don't think they should

tbh it'd be nice to squash consecutive market orders by the same person too

Server-side order deduplication can create issues with trading bots, as they would lose track of trades.

client-side deduplication would be sufficient. Mostly just concerned about the website UI being overwhelming due to the number of orders on some markets

ok i just made it a collated order book. check it out


chore : fix failed unit tests

Fix failed 4 unit tests
Remove dedicated header load test code in HttpResponseMessage constructor

Thank you!


[Bug] for loops with blank bodies

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
for (i in 1..2)
for (j in 1..2)
print i+j
generates Internal consistency error: Please contact developer. [Explanation: compiling an unexpectedly blank node [run with debugger]].
Expected behavior
Should either generate a warning:
"For loop with blank body"
Or compile as nested for loop.
Additional context
This is an edge case for semicolon suppression. Normally, morpho accepts an end of line as a semicolon anywhere it would be valid.
for loops with blank bodies are occasionally useful (tho not for..in loops?)

Throw compiler error for blank body

Fixed in 0.5.4


tf-nightly: 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 16.04
TensorFlow installed from (source or binary): binary
TensorFlow version: tf_nightly-2.1.0.dev20191114
Python version: 3.6
Installed using virtualenv? pip? conda?: pip
CUDA/cuDNN version: 10.0
GPU model and memory: NVIDIA p100

Looks like the latest nightly builds of TensorFlow require CUDA 10.1 for GPU support, is that intentional?
> import tensorflow as tf

2019-11-14 16:21:07.535467: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/local/lib:/usr/local/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64
2019-11-14 16:21:07.535493: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.

If the commit message is anything to go by, it is intentional: https://github.com/tensorflow/tensorflow/commit/183c4b74a932c281b4f80dba4ab7e005dc154481

Good catch. Thanks!


Set to snapshot

Signed-off-by: Matthew de Detrich<EMAIL_ADDRESS>

Codecov Report

Merging #96 into 0.2.x will decrease coverage by 0.19%.
The diff coverage is n/a.

@@           Coverage Diff            @@
##            0.2.x     #96     +/-   ##
========================================
- Coverage   74.59%   74.4%   -0.2%
========================================
  Files          22      22
  Lines         500     500
  Branches        9       9
========================================
- Hits          373     372      -1
- Misses        127     128      +1

Impacted Files
Coverage Δ

...n/scala/org/zalando/kanadi/api/Subscriptions.scala
69.29% <0%> (-0.44%)
:arrow_down:

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 7bd8ea5...af106a5. Read the comment docs.


Stitched call graph contains improper URIs

Hi team,
I'm testing the fasten-pypi-plugin and I'm observing that the FASTEN URIs in the stitched call graphs are not quite right. I'm running the following:
python -m fasten \
  --product fasten-pypi-plugin \
  --pkg_name fasten-pypi-plugin
  --project_path ./ \
  --timestamp 42 \
  --version 1.0 \
  --requirements requirements.txt \
  --fasten_data revisionCallGraphs/ \
  --scg_path mergedCallGraphs/

In the file fasten-pypi-plugin/mergedCallGraphs/fasten-pypi-plugin.json the following URIs appear:
"URI": "//fasten-pypi-plugin/..\\build\\lib\\fasten\\createAdjacencyList/CreateAdjacencyList.createAdjacencyList()"
"URI": "//fasten-pypi-plugin/..\\build\\lib\\fasten\\createAdjacencyList/CreateAdjacencyList.print_agraph()"
"URI": "//fasten-pypi-plugin/..\\build\\lib\\fasten\\createAdjacencyList/CreateAdjacencyList.getNumberOfVertices()"

These are not proper FASTEN URIs. Instead, they should look something like:
fasten://PyPI!fasten-pypi-plugin$1.0/createAdjacencyList/CreateAdjacencyList.createAdjacencyList()

@gdrosos This seems caused by how PyCG and the stitcher construct the FASTEN URIs. At least it seems the plugin just passes along the contents of the graphs.

So if I understand correctly we need to add the forge in the URI of stitched nodes in order to be fully consistent with the naming conversion?

It seems yes.
curl -X POST -d '["fasten://edgar3$1.1.7/edgar3.filing/Filing.__repr__()"]' -H 'Content-Type: application/json' https://api.fasten-project.eu/api/pypi/metadata/callables?allAttributes=true

Does not work.
But the following does:
curl -X POST -d '["fasten://PyPI!edgar3$1.1.7/edgar3.filing/Filing.__repr__()"]' -H 'Content-Type: application/json' https://api.fasten-project.eu/api/pypi/metadata/callables?allAttributes=true

Fixed on the latest pycg-stitch docker image & pypi version 0.0.9. Tested also an example node,  by querrying the rest-api and I could recieve quality metadata:
gdrosos@monster:~/pycg-stitch$ curl -X POST -d '["fasten://PyPI!pycparser$2.09.1/pycparser.ply.cpp/Preprocessor.parsegen()"]' -H 'Content-Type: application/json' https://api.fasten-project.eu/api/pypi/metadata/callables?allAttributes=true
{"fasten://PyPI!pycparser$2.09.1/pycparser.ply.cpp/Preprocessor.parsegen()":{"quality":{"quality_analysis_timestamp":"1653540128.142197","callable_long_name":"parsegen( self , input , source = None )","quality_analyzer_version":"1.17.10","callable_parameters":["self","input","source"],"rapid_plugin_version":"1.2.4","metrics":{"nloc":107,"complexity":44,"token_count":586,"parameter_count":3,"length":123},"quality_analyzer_name":"Lizard","callable_name":"parsegen"}}}

PyPI Pakckage:https://pypi.org/project/pycg-stitch/0.0.9/
Docker image: ghcr.io/fasten-project/pycg-stitch/fasten.pycgstitch@sha256:2842a749eaa3b1ffe9f4eaf5292c063dbf1db08be54bc5ed7d6595274ba2dbe9
Related commit: https://github.com/fasten-project/pycg-stitch/commit/aed9b205844aa8fe26634bcaa6082e0bbd175867

Thanks @gdrosos that is very convenient.
I wonder how in the pypi-plugin the FASTEN URIs are totally different however, they don't even start with fasten://, have no package version included, and the file path/namespace looks off.

The root cause of the issue is this line: https://github.com/fasten-project/fasten-pypi-plugin/blob/01de7280efab995b6fedc21d049faaac1bf2e540/src/fasten/stitchCallGraphs.py#L13
The Sticher class recieves as a second value a binary value, which if true will produce the Nodes in the Simple format, otherwise it will produce them in the fasten format. The plugin uses the Stitcher Class From PyCG-Stitch by passing a String argument, which is interpreted in Python as true, thus recieving the node URIs in a wrong format. I will submit a PR fixing this issue.


Question: print only median results in output path

This might already exist but I couldn't decipher from the README. Is there a way to limit printing only the median results in my output path?
Also, generally how many runs are considered accurate enough? 10, 100? Any info could be helpful for new lighthouse devs.

This might already exist but I couldn't decipher from the README. Is there a way to limit printing only the median results in my output path?

Looks like an issue.

Also, generally how many runs are considered accurate enough? 10, 100? Any info could be helpful for new lighthouse devs.

I'd say from 3 to 5 runs :) Personally, I use 3)


set gst exempt variable

gst exempt variable now comes from ticdi endpoint

Your Pull Request code is being promoted!  Please follow the link below.
Main Merge Workflow


Confirmation of what docker-makemkv does

I would like to remove the computer I use in the process of transcoding my Blu-ray discs. So, with this software, I can install the Docker application on my Synology, install the docker-makemkv container, connect my Blu-ray optical drive to my Synology via USB, setup the container parameters and, without the use of a computer, rip the movie I purchased directly to my NAS. Is that correct?

The performance should be the same as if MakeMKV runs natively on a Linux system.
I would say that ripping a Blu-ray disc is more I/O intensive than CPU intensive.  So if you can have a USB3 connection it would help speeding up the ripping.   And yes, having a good CPU and a good amount of RAM is always useful, especially if you want to run a couple of Docker apps...

Closing this issue, please re-open if needed.


Typescript Support - add declaration files and add fixes

Seeing all these types with their corresponding tests has me craving:

'catalog.test-d.ts'
'constructorio.test-d.ts'
'quizzes.test-d.ts'
'tasks.test-d.ts'
'tracker.test-d.ts'

^ I'd feel much more confident shipping their corresponding types if we had these test-d.ts files

Thanks a 100 for your feedback ❤
Comments addressed. Didn't add tests only for tracker and constructorio since these don't have response examples types that I use to test against @deomsj

Nice work @mocca102! Code looks great and this looks ready to launch to me. We may have some quick, small follow-up PRs needed to iterate on these types a bit, but this is passing all my tests and with the supportive, non-blocking patterns in place like extends Record<string, any> I believe this will already start adding a lot of value in current state
Before merging anything, please double check me on these most recent changes, @mocca102 🙏🏻
Note: I pushed two small commits to address outstanding issues surfaced by npm run tes:types taking us from this:
to this:

This is ❤ ❤ ❤


How to use socket.io interact with sails.js

I know there are sails.io.js as web client. but here I need to use

socket.io-java-client
socket.io-swift-client
on mobile devices

So I tried to use the raw socket.io library with sails server. according to this https://github.com/balderdashy/sails.io.js/blob/v0.13.7/sails.io.js#L573
var io = global.io = require('socket.io-client');
var s = global.s = io(':1400');
s.emit('get', {
  method: 'get',
  url: '/hello/world'
}, function(err, res){
  console.log(arguments);
});

but I failed with the server response with
code: "SAILS:HOOK:SOCKETS:PARSE_VIRTUAL_REQ"
details: "Sails v0.11.x is not compatible with the socket.io/sails.io.js client SDK version you are using (0.9.0). Please see the v0.11 migration guide on http://sailsjs.org for more information."
message: "Failed to parse incoming socket.io request."
name: "Error (SAILS:HOOK:SOCKETS:PARSE_VIRTUAL_REQ):"
stack: "Error (SAILS:HOOK:SOCKETS:PARSE_VIRTUAL_REQ):: Failed to parse incoming socket.io request. ...
status: 400

And using
sails: 0.12.3
socket.io-client 1.4.6
And works well with sails.io.js too(sails.io.js 0.13.7). It just cause there are no
sails.io-java-client / sails.io-swift-client, and also no documentation refer how to use socket.io to do this.

No need to fix

I found answer here https://github.com/balderdashy/sails.io.js/issues/99
So I understand, the framework is designed to only work with sails.io.js
for Android / iOS device, we need to construct the fake query string to fool sails.js framework


Duped Titles in TitleDB

I updated FBI and went to TitleDB and many titles were duplicated a decent amount. Not all, I have a few photos, here

TitleDB returns multiple versions of the same app, and expects the client to filter them out. Code is in place to do so based on title version, pending a merge of this pull request to TitleDB.

An alternative has been implemented based on the time at which the app was updated.


Improve server profile idempotency

Scenario/Intent
On some usage scenarios, when running with the 'present' ensurable, the server profile does not behave idempotently as expected and makes calls when it shouldn't.
Environment Details
Puppet module for HPE OneView Version: 2.0.0
OneView SDK Version: 3.1.0
OneView Appliance Version: 3.0
OneView Client API Version: 300
Puppet Version: 4.8
Ruby Version: 2.2.6
Platform: Windows
Steps to Reproduce
Run complete scenarios with server profile, specifying as many options as possible.
Expected Result
If there are no changes between manifest runs, or if the change is something which should not matter, like order on a hash, then no create/update/patch calls should be made to OneView since it should be able to notice nothing has changed.
Actual Result
On some scenarios it actually does not act as expected and runs update calls.

Reopening this issue, the module doesn't seem idempotent.
I have a manifest to create a server profile with connections and deployment settings:
oneview_server_profile{'server_profile_present':
  ensure  => 'present',
  data    =>
  {
    name                  => 'Server Profile with DP',
    serverHardwareTypeUri => 'SY 480 Gen9 1',
    enclosureGroupUri     => 'DCS-i3s-EG',
    osDeploymentSettings  => {
      osDeploymentPlanUri => '/rest/os-deployment-plans/18d42e6d-f64e-422b-affd-7185603ab9c4'
    },
    bootMode              => {
      manageMode    => true,
      mode          => 'UEFIOptimized',
      pxeBootPolicy => 'Auto'
    },
    connections           => [{
      id            => 1,
      portId        => 'Mezz 3:1-a',
      name          => 'Deployment Network A',
      functionType  => 'Ethernet',
      networkUri    => 'Deployment Network',
      requestedMbps => 2500,
      requestedVFs  => 'Auto',
      boot          => {
        priority            => 'Primary',
        initiatorNameSource => 'ProfileInitiatorName'
      }
    }, {
      id            => 2,
      portId        => 'Mezz 3:2-a',
      name          => 'Deployment Network B',
      functionType  => 'Ethernet',
      networkUri    => 'Deployment Network',
      requestedMbps => 2500,
      requestedVFs  => 'Auto',
      boot          => {
        priority            => 'Secondary',
        initiatorNameSource => 'ProfileInitiatorName'
      }
    }]
  }
}

Every time I run this manifest (with no changes), the resource is being updated due to the differences found at:
{
  "connections": [
    {
      "id": 1,
      "portId": "Mezz 3:1-a",
      "name": "Deployment Network A",
      "functionType": "Ethernet",
      "networkUri": "/rest/ethernet-networks/36b9d48f-853c-4485-bdc9-4e57f92339c7",
      "requestedMbps": 2500,
      "requestedVFs": "Auto",
      "boot": {
        "priority": "Primary",
        "initiatorNameSource": "ProfileInitiatorName"
      }
    },
    {
      "id": 2,
      "portId": "Mezz 3:2-a",
      "name": "Deployment Network B",
      "functionType": "Ethernet",
      "networkUri": "/rest/ethernet-networks/36b9d48f-853c-4485-bdc9-4e57f92339c7",
      "requestedMbps": 2500,
      "requestedVFs": "Auto",
      "boot": {
        "priority": "Secondary",
        "initiatorNameSource": "ProfileInitiatorName"
      }
    }
  ],
  "osDeploymentSettings": {
    "osDeploymentPlanUri": "/rest/os-deployment-plans/18d42e6d-f64e-422b-affd-7185603ab9c4"
  }
}

More details about the issue:

Appliance: OneView 3.0
API Version: 300
Hardware Variant: Synergy

I guess the Server Profile Template would have the same behaviour with similar data.

@marikrg
Could you highlight exactly what points do you think the module is classifying as changes?
It could be by comments like:
{
  a: 1,
  b: 2,  # Considering this line as a change, but it is not since it's the same value for 'b' in Integer
  c: 3
}

@tmiotto
Yes, I'm going to investigate it later. At this point, I just realised that the difference is located at the connections list and osDeploymentSettings.

The current merge/diff works well only for the string/integer/boolean values in the first depth.
In case of hashes (e.g. connections, bios/boot settting, osDeploymentSettings, etc), the value  must be exactly the same from the OneView appliance, otherwise the resource will be updated.
Often, we are not able to provide all values, because some of them will be set automatically, or have default values. For example, if I have a manifest with the osDeploymentSettings:
  "osDeploymentSettings": {
    "osDeploymentPlanUri": "/rest/os-deployment-plans/18d42e6d-f64e-422b-affd-7185603ab9c4"
  }

it doesn't work because of these auto-assigned values:
    "osVolumeUri": null,
    "osCustomAttributes": [

    ]

Suggestion:
Currently, the oneview_server_profile provider's exists? method uses find_by passing in the whole @data. How about using the like? comparisson from the SDK instead?
I understand that find_by should look for exact matches while our like? method should handle cases such as those defaults or other stuff. This is the expected behavior, right @tmiotto ?
@marikrg, can we verify if the issue still persists even using like?

Yep, the like? will only look for the attributes declared you want to change (A Hash r an Incomplete resource) that you need to test against a remote resource (retrieved by retrieve!or find_by). the find_by will only gather the resources that match exactly with the passed attributes.

@fgbulsoni @tmiotto Yes, I will check.

The 'like?' has the same problem of 'find_by' function.
Actually, I had investigated this problem to, and I think that the problem is
the 'merge' function. Maybe a deep merge should be used, instead of default merge.
In:
def resource_update
  ...
  raw_merged_data = current_attributes.merge(data)
  ...

Because the default merge ignores deep values, such as 'connections'.
@marikrg @tmiotto @fgbulsoni

Maybe a deep merge should be used,

This is looking like two issues instead of one if this is the case.

If you pass in a value (such as uri_field: null), that is passed in by default and gets changed after creation, that should not be counted as a difference.
If you pass a field that contains multiple levels of hashes or arrays and that is actually not changed, should not be updated, but is being updated somehow because of order issues.

For 1, the like? should handle that. And we should not even get to call the resource_update then. If like? does not correctly handle it, an issue should be open against the ruby sdk and explicitly show the case where it fails.
For 2, if we're actually updating something with its exact value just because of ordering, then a deep merge could/should be implemented in the resource_update to fix it. Let me just remind you that deep_merge is actually a rails method and will have to be implemented manually since we do not use rails.


Remove hardcoded styling in plot_histogram

Summary
plot_histogram was hardcoding things like bar colors, font and figure sizes, etc, that were preventing Matplotlib style files from being faithfully applied to the images.
Here we remove the hardcoded values, allowing complete customization following the loaded stylelib.  Users wishing to modify the default settings further can either make their own styles, or take advantage of the fact that one can pass an Axes object, giving complete control of the customization post-generation.
Details and comments
The bar colors are now sourced from the rcParams which are in turn set by the style.  Most hard-coded options have been removed save for the rotation of the x-axis labels that need to be rotated.  I have also disabled bar_labels by default as for anything more than 2-3Q, the labels are unreadable, and unnecessary given the y-axis is also labeled and the data is included in the Counts themselves.
This allows one to make figures that look like:

or

easily

This should wait for #8762 to be merged so that I can refactor on top of those changes.


python312Packages.reolink-aio: 0.10.4 -> 0.11.0b1

Diff: https://github.com/starkillerOG/reolink_aio/compare/refs/tags/0.10.4...0.11.0b1
Changelog: https://github.com/starkillerOG/reolink_aio/releases/tag/0.11.0b1

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 354910

x86_64-linux

:white_check_mark: 5 packages built:

home-assistant-component-tests.reolink
python311Packages.reolink-aio
python311Packages.reolink-aio.dist
python312Packages.reolink-aio
python312Packages.reolink-aio.dist


Added patching of child sensors of device when device is dragged to n…

Added function that patches the parent space property of a device's child sensors after a device has been dragged to a new space in the UI

This will allow the correct parent space to be updated when updating parent space property values

Merged with changes on master and addressed @nielsams and @jobeland 's comments. A device's child sensors won't be patched if the sensor space id does not match the parent device space id


Race condition with container initializer causes index to not appear

The following bug has happened to me a couple of times during the past few weeks:

This is a server started with the default options.
The logs show something like:
2021-11-10T10:32:40.347Z [Components.js] info: Initiating component discovery from /Users/ruben/Documents/UGent/Solid/solid-community-server/
2021-11-10T10:32:40.658Z [Components.js] info: Discovered 131 component packages within 1332 packages
2021-11-10T10:32:40.659Z [Components.js] info: Initiating component loading
2021-11-10T10:32:42.264Z [Components.js] info: Registered 450 components
2021-11-10T10:32:42.264Z [Components.js] info: Loaded configs
2021-11-10T10:32:43.533Z [ContainerInitializer] info: Initializing container http://localhost:3000/
2021-11-10T10:32:43.547Z [ContainerInitializer] info: Initialized container http://localhost:3000/ with 2 resources.
2021-11-10T10:32:43.550Z [BaseHttpServerFactory] info: Starting server at http://localhost:3000/
2021-11-10T10:32:45.889Z [BaseHttpServerFactory] info: Received GET request for /
2021-11-10T10:32:45.909Z [WebAclReader] info: Reading ACL statements from http://localhost:3000/.acl
2021-11-10T10:32:46.016Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/styles/main.css
2021-11-10T10:32:46.036Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/images/solid.svg
2021-11-10T10:32:46.049Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/fonts/raleway.woff2
2021-11-10T10:32:46.054Z [BaseHttpServerFactory] info: Received GET request for /favicon.ico
2021-11-10T10:32:47.059Z [GuardedStream] error: No error listener was attached but error was thrown: aborted
2021-11-10T10:32:47.059Z [GuardedStream] error: No error listener was attached but error was thrown: premature close

(note the GuardedStream errors)
In contrast, a successful boot looks like:
2021-11-10T10:34:49.396Z [Components.js] info: Initiating component discovery from /Users/ruben/Documents/UGent/Solid/solid-community-server/
2021-11-10T10:34:49.662Z [Components.js] info: Discovered 131 component packages within 1332 packages
2021-11-10T10:34:49.663Z [Components.js] info: Initiating component loading
2021-11-10T10:34:51.386Z [Components.js] info: Registered 450 components
2021-11-10T10:34:51.386Z [Components.js] info: Loaded configs
2021-11-10T10:34:52.409Z [ContainerInitializer] info: Initializing container http://localhost:3000/
2021-11-10T10:34:52.424Z [ContainerInitializer] info: Initialized container http://localhost:3000/ with 3 resources.
2021-11-10T10:34:52.426Z [BaseHttpServerFactory] info: Starting server at http://localhost:3000/
2021-11-10T10:34:58.665Z [BaseHttpServerFactory] info: Received GET request for /
2021-11-10T10:34:58.678Z [WebAclReader] info: Reading ACL statements from http://localhost:3000/.acl
2021-11-10T10:34:58.729Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/styles/main.css
2021-11-10T10:34:58.735Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/images/solid.svg
2021-11-10T10:34:58.746Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/fonts/raleway.woff2
2021-11-10T10:34:58.748Z [BaseHttpServerFactory] info: Received GET request for /.well_known/css/fonts/raleway-italic.woff2
2021-11-10T10:34:58.758Z [BaseHttpServerFactory] info: Received GET request for /favicon.ico

(note the "3 resources" rather than "2 resources")
It's hard to diagnose and fix; but perhaps we can just make the initialization code a bit more robust / guarded? Or at least have more logging by default so I can tell us more next time?

It's hard to diagnose and fix; but perhaps we can just make the initialization code a bit more robust / guarded? Or at least have more logging by default so I can tell us more next time?

The thing is, we have logging for this: https://github.com/solid/community-server/blob/c13456c2259538e502a59ce73a226bab2c99c395/src/init/ContainerInitializer.ts#L64-L69
So I'm not really sure what is causing that. This is always with the file.json config?

This is always with the file.json config?

Nope, default config even (so memory).

The thing is, we have logging for this:

Hence, since that error was not present, we must conclude that the resources iterable returned by this.generator.generate indeed only contained 2 elements. Should we try some logging there?

Hence, since that error was not present, we must conclude that the resources iterable returned by this.generator.generate indeed only contained 2 elements. Should we try some logging there?

We will have to if we want to find the cause. Relevant classes would be the ContainerInitializer mentioned above, and the TemplatedResourcesGenerator which does all the work. Perhaps something goes wrong in the latter with all the yields.

Perhaps something goes wrong in the latter with all the yields.

Was also thinking that.

Relevant classes would be the ContainerInitializer mentioned above, and the TemplatedResourcesGenerator which does all the work.

I do not think it's ContainerInitializer, since its warn statement is never triggered.
That puts the suspicion on TemplatedResourcesGenerator.
Suggested actions:

In groupLinks, replace the readdir by opendir so we have async generators all the way
In groupLinks, put an assert that compares the number of read files to readdirSync (for the time being)
Put the same assertion in processFolder
Put the same assertion in generate

And possibly also put the assertion in ContainerInitializer.
It's a bit heavy-handed, but that should track down the bug soon.


PATCH: SRE-4241 lifecyle rules to prevent db deletion

:tada: This PR is included in version 6.0.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


move SU2RotationGate to basic_gates/

https://github.com/quantumlib/Qualtran/pull/669#discussion_r1529227768

[x] Move SU2RotationGate to basic_gates/ directory
[x] Add a builder method .from_matrix so you can derive the parameters of the gate given an arbitrary 2-qubit unitary.
[x] override wire_symbol
[x] test that bloq_autotester works.
[x] Add a docstring (maybe just move the docstring from rotation_matrix method to the class)
[x] Add a BloqExample
[x] Update and run dev_tools/autogenerate-bloqs-notebooks.py to generate a doc
[x] Make sure theta, phi and lambd can be symbolics.

Skipped (due to global phase mismatch)

override as_cirq_op to return a PhasedXZGate
override CIRQ_GATE_TO_BLOQ_MAP in _cirq_gate_to_bloq to convert a cirq.PhasedXZGate to SU2RotationGate
test that assert_decompose_is_consistent_with_t_complexity works
Override build_call_graph

@tanujkhattar one question: cirq.PhasedXZGate and SU2RotationGate differ by a global phase, i.e. $SU_2(\theta, \phi, \lambda) = e^{i(\phi+\lambda-\theta)} \text{PhasedXZ}(x=\frac{2\theta}{\pi}, z=1-\frac{\lambda+\phi}\pi, a=\frac{\lambda}\pi - 0.5)$. (this only matters when using controlled GSQP inside a larger algorithm).
Should we still map them ignoring global phase? Another idea could be to just used PhasedXZ in GQSP rotations, and apply a single global phase correction at the end.

What was the conclusion from the meeting? Were we going to remove the decomposition and leave this as an "atomic" bloq? And add its tensor. Also: re: global phase: we said that it needs to match, so if cirq.PhasedXZ isn't up to the task we can leave that out.

@mpharrigan I dropped the PhasedXZ conversion.
About the decomposition, I am fine with either case. Perhaps its still useful to have a decomposition in terms of Pauli rotations in case someone wants to generate circuits?

@tanujkhattar @mpharrigan could one of you review this PR? thanks!
I also have two questions:

Should I make the bloq atomic?
Is there anything specific to be done to support symbolic params?

_cirq_gate_to_bloq already converts to GlobalPhase (merged with https://github.com/quantumlib/Qualtran/pull/828)
https://github.com/quantumlib/Qualtran/blob/4dffc97de898b92509934c593e6ffb9b77b9337d/qualtran/cirq_interop/_cirq_to_bloq.py#L347-L348


snap_to_grid: check for collinearity

Current method checks whether a -> b (V) intersects with p -> q (U), by checking whether U separates a and b, and whether V separates p and q.
This needs some checking for collinearity.

Thinking it over: a -> b is a line from the centroid to the edge. If p -> q is collinear, it obviously doesn't separate the edge from the centroid, and it doesn't have to be included.


REST/Serial over wifi

This issue is just to check in on the current state of / discuss the REST api implementation. Is the plan to essentially run a REST server which can call the same commands exposed via serial?

Unfortunately REST support currently doesn't exist; it is merely a figment of my imagination. That said, it sounds like a good weekend project, so I might take a look this weekend.
I'd be interested to hear what you're looking for in such an interface. My thinking was that this would a convenient way for smartphones, tablets, and other devices on the network to talk to the typewriter.
My initial thought for implementation was to provide REST calls for the some of the various functions currently implemented:

type would be a good first candidate as you can just send it ASCII + escape sequences and it will print it
relay would certainly be powerful, but developers would need to port some/all of Wheelwriter.h in order to use it.
read and keyboard seems messy for REST. You'd have to poll to get data
query, sample, and the tests buffer, char, circle would be fine. The tests probably have limited utility

A lock would need to be implemented so that commands from multiple users, whether serial or REST, won't step on each other

I've implemented initial REST support! This supports the following POST endpoints:

/type - send an ASCII file to this endpoint and the typewriter will type it. Supports the same ANSI/CSI-style escape codes that the serial console does.
/query - responds with a JSON listing the Wheelwriter model, printwheel pitch, and status
/characterTest, /circleTest,  and /printwheelSample

If you install rest-v1, you can use the serial console to setup the WiFi with the wifi command. The IP address will be listed and you should get a simple web page if you access that in a browser.

curl -X POST http://<ip_address>/type -d "test1234" should cause your Wheelwriter to type test1234
curl -X POST http://<IP_ADDRESS>/type -d "test^[[1m1234" will output the same, but 1234 will be bold
curl -X POST http://<ip_address>/type --data-binary "@<filename>" to send a text file
curl -X POST http://<ip_address>/query should return something like {"model":6,"wheel":32,"status":0}

Hmm, I could implement a read function that waits for a carriage return. I can see the utility in that.
It would be blocking, just as all the other functions are, but I'll add a timeout parameter. It would only listen for keyboard entry during the read command, sorta half-duplex. Full duplex communication would probably require a man-in-the-middle setup and a running input buffer.
I'll see if I can implement that this morning!

OK, I added /readLine in rest-v1.2 - this reads a line until return is pressed.
There is a configurable timeout (sent in the POST request to the endpoint) that sets a timeout in integer milliseconds from the last key pressed, so that if someone partially enters a line and never hits return, you'll get it.
By default, you'll get the corrected line if the user backspaces. You can set the corrected parameter to 0 to get the uncorrected line with backspace characters included if you want to see what the user edited.
Let me know what you think!

Yeah, I've got a good idea why that's happening. I suspect it has to do with how I interpret reverse carriage movement commands as backspace and platen movement as line feed. I'm actually working on a direct way to get the key pressed, rather than this indirect way of looking at movement commands, but that's a larger change.
I can probably write a patch, but before I do, what version of the code are you using?


#9999: remove old maxpools

Ticket
#9999
Problem description
Provide context for the problem.
What's changed
Describe the approach used to solve the problem.
Summarize the changes made and its impact.
Checklist

[ ] Post commit CI passes
[ ] Blackhole Post commit (if applicable)
[ ] Model regression CI testing passes (if applicable)
[ ] New/Existing tests provide coverage for changes

As the old max pools are removed, I think it would be better to call the existing one as just max_pool2d instead of max_pool2d_new

As the old max pools are removed, I think it would be better to call the existing one as just max_pool2d instead of max_pool2d_new

yes will be updating that next.


Multiple simultaneous uWS.Apps instances return a "truthy" socket on listen over the same port.

uWebsockets.js version: v15.8.0
Minimal reproduction:
import uWS from "uWebSockets.js";
uWS.App({}).listen(8545, function(socket) {
  if (socket) {
    uWS.App({}).listen(8545, function(socket){
      if (socket) {
         // Didn't think it should get here but it does.
      }
    })
  }
})

I expected listen to fail causing the socket to be false.
System info:

uWebSockets.js v15.8.0
Ubuntu 18.04.2 LTS
node.js v10.15.3

This is by design

Ah, ok. Seems unexpected for a node.js library.
TL;DR:
The behavior also happens across separate node instances.
I'm creating a node.js websocket-server CLI that utilizes uWS where users may want to start multiple instances simultaneously. Binding each CLI instance to the same port is always erroneous here. uWS doesn't currently offer a way to detect that it won't respond to certain routes over the specified port. It'd be great if it did!
Would a PR adding a flag to disable port sharing be something you'd be interested in?

Long Version & Repro:
This part is more for passerbys who want to understand more about the behavior, than you, Alex, since you obviously already know how all this works. :-)
The behavior also happens across separate node instances. Running the following code in two separate instances does not return any errors, socket is never false, and the second node instance will not be able to respond to any requests since the first one always handles them (as I'd expect), and I couldn't find any way to detect when a route will be ignored in the TS docs or C++ user manual.
// run this code under two node instances simultaneously, then hit `http://localhost:8080`
const uWS = require("uWebSockets.js");
const randomId = (Math.random()*1000)|0;
uWS.App({})
  .any("/*", (response) => {
    response.end("response from: " + randomId);
  })
  .listen(8080, (socket) => {
    if (socket) {
      console.log("listening. Id: ", randomId);
    } else {
      throw new Error("Couldn't listen.");
    }
  });

I was hoping to use uWS in a CLI server application (https://www.npmjs.com/package/ganache-cli), where users often run multiple instances simultaneously, but they're supposed to run it on different ports. The cli should return an error or fail if the port it needs to bind to is already bound (or the routes it requires are already being handled) -- a common mistake users make. Not being able to detect when a route can't be handled by a server complicates the implementation -- as it seems I'd need to create an out-of-process singleton that tracks port use somehow (I'm sure there are other ways of detecting this, too).
Would a PR adding a flag to disable port sharing be something you'd be interested in?

An option to listen exclusively to a port can be added but it's quite a bit of work and nobody else has expressed that interest.

My coworker, @seesemichaelj, put together a potential patch for this:
Changes:
https://github.com/seesemichaelj/uSockets/commit/f1c6a181f185bc541e9fdf001795d9ce90b3811f
https://github.com/seesemichaelj/uWebSockets/commit/ffd90db65ea3838235c5aa7620c6838bce4ca0a7
https://github.com/seesemichaelj/uWebSockets.js/commit/28b527960a95bcf25abf347463fa3c46d861f661
The changes are currently pretty minimal:

changed the uSockets library's REUSE_PORT flag to DO_NOT_REUSE_PORT and then adjusted the if statement.
added the relevant listen() functions in uWebSockets that add the optional int options argument.
added the logic in uWebSockets.js to decipher which C++ function the user was trying to access from its single listen function.

Example use in uWebSockets.js:
import uWS from "uWebSockets.js";
const listenOptions = 2; // 2 is the flag for DO_NOT_REUSE_PORT
uWS.App({}).listen(8545, listenOptions, function(socket) {
  if (socket) {
    uWS.App({}).listen(8545, listenOptions, function(socket){
      if (!socket) {
         console.log("`socket` is falsy!");
      }
    })
  }
});

I've only tested on node.js v10.15.3 on Linux (Ubuntu 18.04.2 LTS) so far. Didn't want to to do too much work or update tests and documentation if this enhancement requires a different approach.
Let me know if this is a good approach or not.

@davidmurdoch Why don't you test if port is open with something like this: https://www.npmjs.com/package/is-port-reachable. You have minor inconvenience, so why you just "fix it" on your side? I think it's easier to write two lines in your code, than contribute 20 to someone's library.

@slavaGanzin For the same reason you shouldn't use fs.exists before accessing/writing a file: doing so introduces a race condition, since other processes may change the state between the two calls.

This change looks good, but I will probably change it a bit more before merging

Thanks, @alexhultman! I'll get the PRs out today.

The 3 related PRs can be seen referenced above. Of course @alexhultman, you'll need to update the submodule references with the final commit hashes.
Thanks a lot!

Okay it should now be LIBUS_LISTEN_EXCLUSIVE_PORT

How to specify this LIBUS_LISTEN_EXCLUSIVE_PORT option when both hostname and port are used?
Currently ListenOptions is allowed in only in one particular case, and it does not allow specifying the hostname:
https://github.com/uNetworking/uWebSockets.js/blob/d0f292446a7a73802df14257cafb0d4b52540b94/docs/index.d.ts#L268-L272

@KrishnaPG

How to specify this LIBUS_LISTEN_EXCLUSIVE_PORT option when both host and port are used?

Add these line to your index.d.ts file inside export interface TemplatedApp { } in your Project :
// my custom Listen port
    /** Listens to hostname & port and sets Listen Options. Callback hands either false or a listen socket. */
    listen(host: RecognizedString, port: number,options: ListenOptions, cb: (listenSocket: us_listen_socket | false) => void | Promise<void>) : TemplatedApp;

I have tested and it's working. When you try to listen to same port for the second time it can't listen and will print : Failed to listen to port  (yourPort)

Great - thanks @PMA365  Hope this will be pulled into the main

Make a pr of it


fix: pagination from last page does not work when pageCount is -1

@tannerlinsley Can you please take a look at this PR? This is a major blocker for one of my projects.
Thanks.

@tannerlinsley Thanks for merging the PR. Can you please publish a new version?


Prepare for 5.3.1

          1 Warning

:warning:
Tests were not updated

  Generated by :no_entry_sign: Danger


Access Token Expired Error with Firebase Admin SDK v12.3.1

I updated to the latest version of  **"firebase-admin": "12.3.1" but am still getting this issue with authentication. The same code was working easier, correct. I read that this version refresh token issue is fixed, but i am still getting this issue. please let me know how to resolve this. i am not able to upload bulk data using a Node.js script
at Object. (/Users/tushar/Documents/codebase/Node/bulk-upload-script/bulk-upload-playlist-songs.js:107:1)
at Module._compile (node:internal/modules/cjs/loader:1376:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
at Module.load (node:internal/modules/cjs/loader:1207:32)
at Module._load (node:internal/modules/cjs/loader:1023:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12)
at node:internal/main/run_main_module:28:49 {
code: 16,
details: 'Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.',
metadata: Metadata {
internalRepr: Map(4) {
'google.rpc.errorinfo-bin' => [Array],
'grpc-status-details-bin' => [Array],
'www-authenticate' => [Array],
'x-debug-tracking-id' => [Array]
},
options: {}
},
note: 'Exception occurred in retry method that was not classified as transient',
statusDetails: [
ErrorInfo {
metadata: [Object],
reason: 'ACCESS_TOKEN_EXPIRED',
domain: 'googleapis.com'
}
],
reason: 'ACCESS_TOKEN_EXPIRED',
domain: 'googleapis.com',
errorInfoMetadata: {
service: 'firestore.googleapis.com',
method: 'google.firestore.v1.Firestore.Commit'
}
}

Hey @jonathanedey, could this be related to https://github.com/firebase/firebase-admin-node/pull/2648?

I don't think it should be unless Firestore use our internal getToken method before making their rpc call.

Hi. Getting this error using the raw protocol on nodeJS. How does one get the refresh token using the raw protocol? The docs point out that this is handled automatically. Thanks.


Fix docs:scrape regex to skip forward to class definition

This is a bug that I originally found in #168 but we decided to pull out into its own PR since it is a separate thing than upgrading rubocop.
This scraper was missing the documentation on files like lib/rubocop/cop/style/conditional_assignment.rb and lib/rubocop/cop/layout/indent_first_argument.rb Because they had a comment before the main docs comment. This was causing them to be rejected because the docs were not long enough, despite the fact that these files do in fact have docs.
A solution I am proposing for this problem is to use a look ahead to grab the comments that come immediately before the class definition as this is where the docs comments always are.
Please let me know if this should go into a different branch, or if I should make PRs into multiple branches for this.

Closing for inactivity.
@natesholland If you wanna push this further, please re-open against the latest available channel, as of now channel/rubocop-0-76, and please, split the commits into what is a manual change and an automated one.
Thanks.


Disable Sodium Entity Culling

What config to change
Disable Sodium's Entity Culling
Why should it be changed
Because it may conflict with the mod EntityCulling and because EntityCulling does it better
Technical aspects of the change
No response
Category
Mod config option
Additional details
Needs testing and evaluation

From the creator of EntityCulling:

They are 2 different features that do different things and work at the same time. So you can have both active.


Add further git parsing to handle modifications and moves.

Suggestion of yellow for modifications and violet for moves.

added and closed via #127


Feat/add sushiswap networks

Before submitting this PR, please make sure:

[X] Your code builds clean without any errors or warnings
[X] You are using approved title ("feat/", "fix/", "docs/", "refactor/")

A description of the changes proposed in the pull request:

Adds support for Sushiswap on the Avalanche, Arbitrum and Harmony chains

Test performed:

Cloned and installed gwPR60
Connected sushiswap_avalanche_avalanche

balance: ok
created amm_arb using sushiswap_avalanche_avalanche: ok
WAVAX, USDT not approved using approve-tokens command.
Approved BentoBox, WAVAX,USDT manually on the sushiswap
amm_arb returns error using default (https://rpc.ankr.com/avalanche nodeURL)

call to amm/price failed

same error on https://avalanche-mainnet.infura.io/v3/numbershere nodeURL
started using infura nodeURL

connected sushiswap_ethereum_arbitrum_one

balance: ok
created amm_arb using sushiswap_ethereum_arbitrum_one: ok
WETH,USDC not approved using approve-tokens command.
Approved BentoBox, WETH,USDC manually on the sushiswap
Client not able to start the strategy (returns warnings on the approval)

connected sushiswap_harmony_mainnet

balance: ok
created amm_arb using sushiswap_harmony_mainnet: ok
ONE, USDC not approved using approve-tokens command. (Error on POST evm/approve)
Approved ONE,USDC manually on the sushiswap
Client not able to start the strategy (returns warnings on the approval)


fix(rollup-plugin-html): typo

Small typo to familiarize myself with openwc process

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@georges-gomes can you sign the CLA? :)

✏done!