[Backport] [2.2] OpenJDK Update (October 2022 Patch releases) (#4997)

Backport 34b6b09474ab83be856c3afc20fb101c63244ee6 from #4997.

Codecov Report

Merging #5013 (c8609a2) into 2.2 (8eff092) will increase coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                2.2    #5013      +/-   ##
============================================
+ Coverage     70.54%   70.56%   +0.02%
+ Complexity    56744    56663      -81
============================================
  Files          4557     4557
  Lines        272888   272888
  Branches      40057    40057
============================================
+ Hits         192516   192575      +59
+ Misses        64231    64065     -166
- Partials      16141    16248     +107

Impacted Files
Coverage Δ

...a/org/opensearch/gradle/test/DistroTestPlugin.java
0.00% <ø> (ø)

...n/indices/forcemerge/ForceMergeRequestBuilder.java
0.00% <0.00%> (-75.00%)
:arrow_down:

...ava/org/opensearch/action/NoSuchNodeException.java
0.00% <0.00%> (-50.00%)
:arrow_down:

...a/org/opensearch/tasks/TaskCancelledException.java
50.00% <0.00%> (-50.00%)
:arrow_down:

...cluster/coordination/PendingClusterStateStats.java
20.00% <0.00%> (-48.00%)
:arrow_down:

.../opensearch/client/indices/CloseIndexResponse.java
56.25% <0.00%> (-35.00%)
:arrow_down:

...ations/bucket/terms/heuristic/PercentageScore.java
17.39% <0.00%> (-34.79%)
:arrow_down:

...n/decider/SnapshotInProgressAllocationDecider.java
34.78% <0.00%> (-34.79%)
:arrow_down:

...ion/admin/cluster/node/info/PluginsAndModules.java
53.12% <0.00%> (-34.38%)
:arrow_down:

...nsearch/index/shard/IndexShardClosedException.java
66.66% <0.00%> (-33.34%)
:arrow_down:

... and 478 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


AssertionError: false == true

Do you want to request a feature or report a bug?
Bug (?)
What is the current behavior?
Quoting from isaacs/rimraf#155  and GoogleChrome/lighthouse#2618

When I run chrome-headless I get the error

assert.js:81
  throw new assert.AssertionError({
  ^
AssertionError: false == true
    at rmdir (/Users/fabio/repo/prerender-chrome-headless/node_modules/chrome-launcher/node_modules/rimraf/rimraf.js:159:5)
    at /Users/fabio/repo/prerender-chrome-headless/node_modules/chrome-launcher/node_modules/rimraf/rimraf.js:95:13
    at FSReqWrap.oncomplete (fs.js:114:15)
The offending line is this [one](https://github.com/isaacs/rimraf/blob/master/rimraf.js#L217) and the assertion fails because originalEr appears not to be an instance of Error.

...
You can reproduce it by cloning this repo and running npm test.
I'm on Mac OSX 10.12.4
Node 7.10.0
It happens on node 6.11.0 and 8.1.2 as well.
For some reason, when lighthouse calls rimraf, it causes standard fs errors to not be instanceof Error. This is causing rimraf's assertions to fail.
What is the expected behavior?
No error

Looks like whatever the issue was, it was fixed between<EMAIL_ADDRESS>and<EMAIL_ADDRESS>This can be closed. :)

@paulirish thank you!


BUG | Incompatible QOS

Bug
Platform
All platforms
Environment info

Library version: 1.0.0
Device: Ubuntu 22.04
Steps To Reproduce

Install ROS2 Humble
Stream data from a camera
Open the camera stream using a url such as: http://localhost:8080/stream?topic=/base_camera/image_raw&type=ros_compressed
The following error shows in console:

New subscription discovered on topic '/base_camera/image_raw/compressed', requesting incompatible QoS. No messages will be sent to it. Last incompatible policy: RELIABILITY_QOS_POLICY

As a camera is a sensor, modern camera drivers should create a topic with the SENSOR_DATA as the QOS profile, as this is the profile for sensors.
Expected behaviour

Stream should register to the camera topic using the correct QOS profile.

No library version provided.
Moreover the linked project is not a react native package, I don't know how it will be possible to investigate... Are you sure the issue is in react native video and not in the linked project ?


Avoid unbounded memory allocations when creating deltas

Previously, we could allocate unbounded amounts of memory when generating deltas. See details on the individual commits, but in summary, we were allocating enough memory to store the longest sequence of bytes in the target file that did not have a match on the basis file. In other words, if the new file had a sequence of 10GB of data without match on the basis file, we'd allocate a 10GB buffer. Here we allocate a fixed 16MB buffer.
We also make sure we keep reusing this buffer instead of reallocating buffers as before, thus avoiding unnecessary work and generating less garbage for the garbage collector (this gave us a 2% performance boost according to my measurements).
This PR also includes some minor improvements to the scripts we use to benchmark the library.
For more info and test results: https://gist.github.com/lmbarros/c094e3bb08e8ffbc7ce23955c7a56411#the-lmblimit-memory-usage-branch (This links to the relevant section of a work-in-progress analysis of a larger set of delta improvements I am hoping to merge in the upcoming weeks).

@balena-ci I self-certify!


[Bug] REST API should use POST instead of GET if body required

🐛 Bug Report
GET requests should not include a body: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET
The following requests incorrectly require a body on a GET request:

GET /testnet3/statePath/{commitment}
GET /testnet3/records/all
GET /testnet3/records/spent
GET /testnet3/records/unspent

Most javascript libraries won't let you set a body on a GET request making them incompatible with this API.
For example, axios doesn't let you put a body on a request. And the latest HTTP spec says that the body should always be ignored on a GET request.
See https://stackoverflow.com/questions/978061/http-get-with-request-body for a relevant discussion.
Expected Behavior
If a body is required, use a POST request. A GET request can only be used if a request does not include a body and instead relies on url parms.
It's possible to make these requests use the ViewKey as a url parameter but almost all RPC APIs use post requests for similar requests. See Solana's RPC API for an example: https://docs.solana.com/developing/clients/jsonrpc-api#example-2

Duplicates #1077


Update Origin -> Auth Provider

With the public deprecation of Origin, our messaging should reflect this change. This changes some text strings to better reflect the current state. Also adds the -noAuthProviderStartup argument, though this can be removed/replace -noOriginStartup argument if wanted.
I'm not sure of the process name of EA App (is it just EADesktop?), so im keeping the old Origin.exe check in for now, though this should probably be removed in the future.

this seems kinda unnecessary to me? origin still fully works and our launching code hasn't changed at all because of the deprecation of it, there's not much reason to deprecate support for it until origin can't be used to play the game

that being said we do need better support for launching using ea app, but that's a different problem from what this pr serves


Unreviewed commit on master!

Unreviewed commit(s) COMPARE was merged to master by kirkas.
Comment with appropriate number of :+1: to approve.

Reviewed requirements satisfied? No
Ancestors reviewed? No

Minimum Reviews
0/1

More info

👍

👍

Review Error for kirkas @ 2024-10-21 20:07:05 UTC
User cannot review their own pull request

👍

Minimum Reviews
2/1

omkarb
1

stevieraykatz
1

Pull request is reviewed and can be merged to master!
More info

👍

Minimum Reviews
3/1

omkarb
1

brendan-defi
1

stevieraykatz
1

Pull request is reviewed and can be merged to master!
More info

👍

Minimum Reviews
4/1

aflock
1

omkarb
1

brendan-defi
1

stevieraykatz
1

Pull request is reviewed and can be merged to master!
More info

👍

Review Error for gareys-cb @ 2024-10-21 20:27:08 UTC
User must have write permissions to review

👍

Minimum Reviews
5/1

aflock
1

omkarb
1

brendan-defi
1

stevieraykatz
1

zencephalon
1

Pull request is reviewed and can be merged to master!
More info

👍

Minimum Reviews
6/1

aflock
1

omkarb
1

brendan-defi
1

stevieraykatz
1

zencephalon
1

dneilroth
1

Pull request is reviewed and can be merged to master!
More info

Minimum Reviews
6/1

aflock
1

omkarb
1

brendan-defi
1

stevieraykatz
1

zencephalon
1

dneilroth
1

Pull request is reviewed and can be merged to master!
More info


No flycheck syntax checks in LSP mode after #2590

What did you expect to happen?
Running flycheck-verify-setup gives me the following result on 7cd9e55c8

Syntax errors are shown immediately after typing them using lsp checker

What actually happened?
On c311d798c I see the following instead

Syntax errors are shown only after I have saved the buffer python-pylint and not shown for rust code where no additional checker is configured

Steps to reproduce:

Reproduction environment is created at https://github.com/vlaci/doom-emacs-issues/tree/master/2636
Minimal private configuration can be seen at https://github.com/vlaci/doom-emacs-issues/blob/master/2636/doom.d/init.el. The only change from init.example.el is that I have enabled lsp and (python +lsp) modules
shell.nix file is created for easy testing

nix-shell -A good to see the working case
nix-shell -A bad to see the erroneous case

Note the above example configurations are using unpinned emacs packages. I really hope that my issue does not depend on that quirk.
System information:

emacs   version    26.3
        features   XPM JPEG TIFF GIF PNG RSVG SOUND DBUS GSETTINGS GLIB NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD
        build      febr 29, 2020
        buildopts  (--prefix=/nix/store/gdcgg83innphpds09f19p2h0jkvk0fa7-emacs-26.3 --disable-build-details --with-modules --with-x-toolkit=gtk3 --with-xft CFLAGS=-DMAC_OS_X_VERSION_MAX_ALLOWED=101200)
        windowsys  x
        daemonp    server-running
doom    version    2.0.9
        build      fatal: not a git repository (or any of the parent directories): .git
        dir        /nix/store/b9k7nvmvv446r6f4ivhgwci3vz2qrk2s-doom-private/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /nix/store/jirzjbbpl4j2kl2f01cfnrralxr5aw7a-bash-interactive-4.4-p23/bin/bash
        uname      Linux 5.5.5 #1-NixOS SMP Wed Feb 19 18:54:14 UTC 2020 x86_64
        path       (/nix/store/hm5y9ikxwaxlbfrbh1d8xh00nwr1vxjq-emacs-packages-deps/bin /nix/store/jirzjbbpl4j2kl2f01cfnrralxr5aw7a-bash-interactive-4.4-p23/bin /nix/store/ck9xy9qgpjhp3k80pwhlff9mq80w3ax5-patchelf-0.9/bin /nix/store/6lw4ansnm3dr08zf5nmcs9s92q9rhfxc-gcc-wrapper-9.2.0/bin /nix/store/va2z9a5k1ds65pxg7kfrs3p38zxk157k-gcc-9.2.0/bin /nix/store/ad115wnlpndz5xkkvz19k2ihsb5cdqpz-glibc-2.30-bin/bin /nix/store/3qgg8xzdyfd7nql0qlkb1xpnrfz4k1s2-coreutils-8.31/bin /nix/store/0j0h6cqglqd571lxci2xmhpq4z66s847-binutils-wrapper-2.31.1/bin /nix/store/7wy2mifb0igrp9hzf9dzwddadbs7ai7d-binutils-2.31.1/bin /nix/store/ad115wnlpndz5xkkvz19k2ihsb5cdqpz-glibc-2.30-bin/bin /nix/store/3qgg8xzdyfd7nql0qlkb1xpnrfz4k1s2-coreutils-8.31/bin /nix/store/91l4dlav09rqqg8bv2kbrd5nv3wf721r-doom-emacs/bin /nix/store/3qgg8xzdyfd7nql0qlkb1xpnrfz4k1s2-coreutils-8.31/bin /nix/store/cjxrwf292pxk5dp5fx737jn4bgmr10xc-findutils-4.7.0/bin /nix/store/j02iri0dpx6wp9fwzkgh7z31aqya80yr-diffutils-3.7/bin /nix/store/2kmapvyhr025v3cp3fdpnnz31q42knk7-gnused-4.8/bin /nix/store/9w5kl1scsqc7bw1hijm8s3j2s6d3lfas-gnugrep-3.4/bin /nix/store/8fanlnn1cb8ynn3p1d3lb1ylps94k1vi-gawk-5.0.1/bin /nix/store/x49zm66i7v2mcj71ppd459hmhllydapc-gnutar-1.32/bin /nix/store/4ib6spndkf8acwzp42xjygwbliq6j3h9-gzip-1.10/bin /nix/store/x9iaylq3f8r5y4z7bbgi76dnabh370bi-bzip2-<IP_ADDRESS>.1-bin/bin /nix/store/bpdpkkjpk2jmvjk6g08bjy1mvw14dyxd-gnumake-4.2.1/bin /nix/store/828g2nqfgivscv79xykkmgjk0znll08l-bash-4.4-p23/bin /nix/store/labk3cgvr3zygiamw2452s770j3r030p-patch-2.7.6/bin /nix/store/i7z20d9jnjjbz0ynlm2dfg672h4zjnvd-xz-5.2.4-bin/bin /nix/store/nafvbv9fw3fkgxp3fcbywf7smgjx11nz-kitty-0.16.0/bin /nix/store/r6ryjy02w3iac80rx2p30zs5hmmjk72n-imagemagick-6.9.10-71/bin /nix/store/lh8z803ya0lvbrv5gxc0nxm42s7i7gm5-xsel-unstable-2019-08-21/bin /nix/store/kiqr2dmcq5w2yhkis595n86y2y09a3ij-ncurses-6.1-20190112-dev/bin /run/wrappers/bin ~/.nix-profile/bin /etc/profiles/per-user/vlaci/bin /nix/var/nix/profiles/default/bin /run/current-system/sw/bin ~/.config/zsh/plugins/fast-syntax-highlighting /nix/store/gdcgg83innphpds09f19p2h0jkvk0fa7-emacs-26.3/libexec/emacs/26.3/x86_64-pc-linux-gnu)
config  envfile    nil
        elc-files  0
        modules    (:completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold multiple-cursors rotate-text snippets :emacs dired electric ibuffer vc :checkers syntax :tools (eval +overlay) (lookup +docsets) lsp magit :lang data emacs-lisp markdown (org +dragndrop +present) (python +lsp) sh :config (default +bindings +smartparens))
        packages   (n/a)
        unpin      (n/a)
        elpa       (n/a)

Note the above example configurations are using unpinned emacs packages. I really hope that my issue does not depend on that quirk.

It quite possibly does. LSP has changed drastically in just the last week, and we hadn't caught up until #2590 was merged earlier today. These changes directly affected how flycheck (and company) were initiated in lsp-mode.
Try updating Doom and see if the issue is still present.

gives me the following result on 7cd9e55

Ah, but 7cd9e55 is just after the PR was merged, so maybe it isn't the issue? Can you reinstate pinning, however? Perhaps another upstream issue has broken flycheck integration.

I have bisected to the offending commit I have mentioned above. The issue still persist after a traditional installation of doom-emacs (ac87afe)

emacs   version    26.3
        features   XPM JPEG TIFF GIF PNG RSVG SOUND DBUS GSETTINGS GLIB NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD
        build      febr 29, 2020
        buildopts  (--prefix=/nix/store/gdcgg83innphpds09f19p2h0jkvk0fa7-emacs-26.3 --disable-build-details --with-modules --with-x-toolkit=gtk3 --with-xft CFLAGS=-DMAC_OS_X_VERSION_MAX_ALLOWED=101200)
        windowsys  x
        daemonp    server-running
doom    version    2.0.9
        build      HEAD, origin/develop ac87afe34 2020-02-29 00:30:22 -0500
        dir        ~/.doom.d/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /run/current-system/sw/bin/zsh
        uname      Linux 5.5.5 #1-NixOS SMP Wed Feb 19 18:54:14 UTC 2020 x86_64
        path       (/nix/store/nafvbv9fw3fkgxp3fcbywf7smgjx11nz-kitty-0.16.0/bin /nix/store/r6ryjy02w3iac80rx2p30zs5hmmjk72n-imagemagick-6.9.10-71/bin /nix/store/lh8z803ya0lvbrv5gxc0nxm42s7i7gm5-xsel-unstable-2019-08-21/bin /nix/store/kiqr2dmcq5w2yhkis595n86y2y09a3ij-ncurses-6.1-20190112-dev/bin /run/wrappers/bin ~/.nix-profile/bin /etc/profiles/per-user/vlaci/bin /nix/var/nix/profiles/default/bin /run/current-system/sw/bin ~/.config/zsh/plugins/fast-syntax-highlighting /nix/store/gdcgg83innphpds09f19p2h0jkvk0fa7-emacs-26.3/libexec/emacs/26.3/x86_64-pc-linux-gnu/)
config  envfile    envvar-file
        elc-files  0
        modules    (:completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold multiple-cursors rotate-text snippets :emacs dired electric ibuffer vc :checkers syntax :tools (eval +overlay) (lookup +docsets) lsp magit :lang data emacs-lisp markdown (org +dragndrop +present) (python +lsp) sh :config (default +bindings +smartparens))
        packages   (n/a)
        unpin      (n/a)
        elpa       (n/a)

I have updated the reproduction script to make sure it uses the referenced lsp-mode version. It still reproduces the issue as well as a 'proper' install of doom-emacs

before opening the lsp-backed buffer, could you call (trace-function #'lsp-flycheck-enable) to check whether lsp-flycheck-enable is called? Within the buffer, maybe evaluate flycheck-checkers and see if it contains lsp. @hlissner: I just noticed that with my changes to tools/lsp/config.el, +lsp-init-flycheck-or-flymake-h now calls (lsp-flycheck-enable t). Which works but AFAICS should be just (lsp-flycheck-enable); the argument is ignored

I installed nix and tried to use your reproduction script, but when opening test.py it doesn't even enable lsp-mode. Is lsp supposed to work out of the box (up to flycheck obviously), or do I need to do something else?

You are right: lsp-mode does not get enabled. That seems to be the underlying issue. I was missing this, as messages buffer shows that the language server itself starts. Upon enabling lsp-mode by hand, syntax check works.

thanks for clearing that up. Though I don't know why the recent lsp PR should have broken auto-activation (python is even one of the languages I tried, and had no lsp-related issues so far). Does lsp-mode generate some helpful error messages? Or doesn't Emacs even try to activate it?

It just won't get activated, tracing shown no attempts at calling (lsp-mode) during loading up a python file. I can enable it by hand without any errors also (lsp) itself gets called (hence the language server related related messages).

i thought I known at least a little bit about elisp but I don't understand the following. Applying the following diff "fixes" the probllem:
diff --git a/modules/tools/lsp/config.el b/modules/tools/lsp/config.el
index 0b2e4f7da..292e7c6c5 100644
--- a/modules/tools/lsp/config.el
+++ b/modules/tools/lsp/config.el
@@ -139,7 +139,7 @@ This also logs the resolved project root, if found, so we know where we are."
                (and arg (not (equal arg 1))))))
          ;; read-process-output-max is only available on recent
          ;; development builds of Emacs 27 and above
-         (when (boundp 'read-process-output-max)
+         (when t
            (setq-local read-process-output-max (* 1024 1024)))
          (prog1 (lsp-mode 1)
            (setq-local lsp-buffer-uri (lsp--buffer-uri))

argh sorry, that is my fault. It's part of an (and ...). I think the best thing would be to move the (when (bound p) ...) below (lsp-mode 1). @hlissner: do you agree?

Oh, I will never get used to the prefix logical operators :/ That's totally makes sense now. Thank you for helping me out. It's been a fun ride.

thanks for reporting this. Since I opened another PR I guess I should try it with an Emacs 26 installation this time :/

Ah, I see the issue. I'll fix it shortly.

And done! Should be fixed in 29650a6. GG0reat work figuring out the issue @vlaci ! I decided not to move it past the (lsp-mode +1), because starting up the server could still benefit from the larger read-process-output-max, but it should work now, in any case. Let me know if that isn't the case and I'll reopen this.
@valrus

I have verified that the issue is indeed fixed. Thank you!

I can confirm that this error is still happening. On Ubuntu 19.10 with Emacs 26.3 and just built 27.0.90 to see if that helped since @vlaci mentioned 27 doesn't exhibit this behavior. The errors show up in the checker buffer yet not in the buffer that has my file. However, in Emacs 27 the errors remain in the flycheck buffer until I save

I had a very similar issue which was fixed by enabling :tools lsp in init.el. 😃


Fix exception propagation for client errors

We change the cross-thread exception propagation given the asynchronous
client implementation. The previous implementation caused
double-wrapping of exceptions which works with the
std::shared_future<...> implementation, but not with
boost::shared_future<...> -- since Boost.Thread still uses
Boost.Exception for the APIs.
While we're here we make the exception propagation more explicit using
boost::rethrow_exception(...), so we can unwrap the exception that's
transported via an exception_ptr.
Fixes #749.

I'm merging this -- the GCC builds seem fine, I'll look to see whether I can reproduce the clang build failures in isolation.


Context name containing characters requiring url quoting/escaping

Describe the bug
Unable to index ModelVersion containing :.
To Reproduce
Steps to reproduce the behavior:

attempt to index a ModelVersion for "some:version"

following the kubeflow tutorial, example:
,
rm = registry.register_model(
    "mnist",
    "https://github.com/tarilabs/demo20231212/raw/main/v1.nb20231206162408/mnist.onnx",
    model_format_name="onnx",
    model_format_version="1",
    version="some:version",    # <-- here
    description="lorem ipsum mnist",
    metadata={
        "accuracy": 3.14,
        "license": "apache-2.0",
    }
)

Expected behavior
Can use special characters without having to urllib.parse.quote() manually the version name.
i.e. without requiring to:
from urllib.parse import quote
# ...
    version=quote("some:version"),

Additional context
This is likely deriving from the fact that in the Model Registry Python client, the logical model entity attributes are passed to the rest layer without quote where sometimes might be necessary; for example, when the model version name is used as a query parameter in a rest endpoint call.
It could be a helpful exercise to check if any limitations on MLMD side for Context names themselves (we are aware MLMD Context names are not updatable, but that is an unrelated limitation).

thank you @isinyaaa


dbt test works with Click (#5556)

resolves #5556

Description

Checklist

[x] I have read the contributing guide and understand what's expected of me
[x] I have signed the CLA
[x] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[x] I have opened an issue to add/update docs, or docs changes are not required/relevant for this PR
[x] I have run changie new to create a changelog entry

@aranke I retitled the PR, since I think this is about dbt test and not tracking — let me know if that was misguided of me!


Compress-Archive does not produce the correct output as documented in the help

This issue is present in Powershell 5.1, and 6.2.1 (verified)
The help for Compress-Archive shows that the output is System.IO.FileInfo.  However, when a zip file is successfully created, there is no output.
Either the help should be updated, or the System.IO.FileInfo object should be produced.  The preference is that the object gets produced.
[update2] moving the -passthru piece to a separate issue
Steps to reproduce
help Compress-Archive -full
PS C:\> compress-archive -path c:\demo -destinationpath c:\demo.zip

Expected behavior
PS C:\> compress-archive -path c:\demo -destinationpath c:\demo.zip
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       05/30/2019  10:56 PM           3686 demo.zip

Actual behavior
PS C:\> compress-archive -path c:\demo -destinationpath c:\demo.zip
PS C:\>

Environment data

Name                           Value
----                           -----
PSVersion                      6.2.1
PSEdition                      Core
GitCommitId                    6.2.1
OS                             Microsoft Windows 10.0.17134
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

This was fixed in MicrosoftDocs/PowerShell-Docs#3696 on Feb 12. You need to run Update-Help -Force to get the new help files.

This is a duplicate of issue #9.


Need to determine better randomness for sampling

We currently use block header hash as the entropy of the randomness for sampling, where block header hash may be prone to grinding attack.  We may need to find a better random source such as RANDAO or VDF.

https://eth2book.info/capella/part2/building_blocks/randomness/

We may need to consider this in devnet-3.

It seems that we can only access the current RANDAO by using block.prevrandao, but can not get RANDAO value at specific block in evm according to 1 and 2.

What is the current block hash generation mechanism?  We can face a grinding attack if it can be changed easily.
For RANDAO, we can use header hash + proof to show that the RANDAO of a block header.

#60


[ExecAPI] Ray Python API wrapping is complete

I don't know what this means. @anmyachev please open if you know and it's still relevant.

It seems to me that it is similar to https://github.com/modin-project/modin/pull/3854.
We need to define a separate level for interacting with Ray, just like we did for Dask.

Now we have RayWrapper class for interacting with Ray. Looks like the task is completed.


Feature/topology graph

adds support for graph visualization of topology files using graphviz's dot command

This requires having graphviz intalled, but I'm not sure how that should be described in the docs

In an ideal world, the invocation would attempt to generate the graph output, and failover to dumping the dotty input file if it cannot find the command.  This could be documented as a soft-dependency, and the command emits a warning message when it does fail over.
The presence of the command could potentially be detected at startup as well.  Ultimately, the only degradation is the conversion of the text input file to the graphic.
I am more interested in getting the functionality into the tool, and then opening an issue about the docs and failover, so don't get to worried about that right now.


chocolatey installation does not detect failed installation

This output below shows that installation of chocolatey via .ps1 failed, however next converge does not detect lack of chocolatey installation and reported as up_to_date. Supsequently failing on chocolatey_package
...
Recipe: chocolatey::default
* template[C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1] action create[2016-06-16T02:14:38-07:00] INFO: Processing template[C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1] action create (chocolatey::default line 29)
[2016-06-16T02:14:38-07:00] INFO: template[C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1] created file C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1
       - create new file C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1[2016-06-16T02:14:38-07:00] INFO: template[C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1] updated file contents C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1

       - update content in file C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1 from none to b3ab5a
       --- C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1  2016-06-16 02:14:38.000000000 -0700
       +++ C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/chef-install.ps120160616-2792-txmd2g 2016-06-16 02:14:38.000000000 -0700
       @@ -1 +1,148 @@
       +# =====================================================================
       +# Copyright 2011 - Present RealDimensions Software, LLC, and the
       +# original authors/contributors from ChocolateyGallery
       +# at https://github.com/chocolatey/chocolatey.org
       +#
       +# Licensed under the Apache License, Version 2.0 (the "License");
       +# you may not use this file except in compliance with the License.
       +# You may obtain a copy of the License at
       +#
       +#   http://www.apache.org/licenses/LICENSE-2.0
       +#
       +# Unless required by applicable law or agreed to in writing, software
       +# distributed under the License is distributed on an "AS IS" BASIS,
       +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       +# See the License for the specific language governing permissions and
       +# limitations under the License.
       +# =====================================================================
       +
       +# Environment Variables, specified as $env:NAME in PowerShell.exe and %NAME% in cmd.exe.
       +# For explicit proxy, please set $env:chocolateyProxyLocation and optionally $env:chocolateyProxyUser and $env:chocolateyProxyPassword
       +# For an explicit version of Chocolatey, please set $env:chocolateyVersion = 'versionnumber'
       +# To target a different url for chocolatey.nupkg, please set $env:chocolateyDownloadUrl = 'full url to nupkg file'
       +# NOTE: $env:chocolateyDownloadUrl does not work with $env:chocolateyVersion.
       +# To use built-in compression (no 7zip download), please set $env:chocolateyUseWindowsCompression = 'true'
       +
       +$url = "https://chocolatey.org/api/v2/package/chocolatey/"
       +
       +$chocolateyVersion = $env:chocolateyVersion
       +if (![string]::IsNullOrEmpty($chocolateyVersion)){
       +  Write-Output "Downloading specific version of Chocolatey: $chocolateyVersion"
       +  $url = "https://chocolatey.org/api/v2/package/chocolatey.$chocolateyVersion.nupkg"
       +}
       +
       +$chocolateyDownloadUrl = $env:chocolateyDownloadUrl
       +if (![string]::IsNullOrEmpty($chocolateyDownloadUrl)){
       +  Write-Output "Downloading Chocolatey from : $chocolateyDownloadUrl"
       +  $url = "$chocolateyDownloadUrl"
       +}
       +
       +if ($env:TEMP -eq $null) {
       +  $env:TEMP = Join-Path $env:SystemDrive 'temp'
       +}
       +$chocTempDir = Join-Path $env:TEMP "chocolatey"
       +$tempDir = Join-Path $chocTempDir "chocInstall"
       +if (![System.IO.Directory]::Exists($tempDir)) {[System.IO.Directory]::CreateDirectory($tempDir)}
       +$file = Join-Path $tempDir "chocolatey.zip"
       +
       +function Download-File {
       +param (
       +  [string]$url,
       +  [string]$file
       + )
       +  Write-Output "Downloading $url to $file"
       +  $downloader = new-object System.Net.WebClient
       +
       +  $defaultCreds = [System.Net.CredentialCache]::DefaultCredentials
       +  if ($defaultCreds -ne $null) {
       +    $downloader.Credentials = $defaultCreds
       +  }
       +
       +  # check if a proxy is required
       +  $explicitProxy = $env:chocolateyProxyLocation
       +  $explicitProxyUser = $env:chocolateyProxyUser
       +  $explicitProxyPassword = $env:chocolateyProxyPassword
       +  if ($explicitProxy -ne $null) {
       +    # explicit proxy
       +  $proxy = New-Object System.Net.WebProxy($explicitProxy, $true)
       +  if ($explicitProxyPassword -ne $null) {
       +    $passwd = ConvertTo-SecureString $explicitProxyPassword -AsPlainText -Force
       +    $proxy.Credentials = New-Object System.Management.Automation.PSCredential ($explicitProxyUser, $passwd)
       +  }
       +
       +  Write-Output "Using explicit proxy server '$explicitProxy'."
       +    $downloader.Proxy = $proxy
       +
       +  } elseif (!$downloader.Proxy.IsBypassed($url))
       +  {
       +  # system proxy (pass through)
       +    $creds = $defaultCreds
       +    if ($creds -eq $null) {
       +      Write-Debug "Default credentials were null. Attempting backup method"
       +      $cred = get-credential
       +      $creds = $cred.GetNetworkCredential();
       +    }
       +    $proxyaddress = $downloader.Proxy.GetProxy($url).Authority
       +    Write-Output "Using system proxy server '$proxyaddress'."
       +    $proxy = New-Object System.Net.WebProxy($proxyaddress)
       +    $proxy.Credentials = $creds
       +    $downloader.Proxy = $proxy
       +  }
       +
       +  $downloader.DownloadFile($url, $file)
       +}
       +
       +# Download the Chocolatey package
       +Download-File $url $file
       +
       +# Determine unzipping method
       +$unzipMethod = '7zip'
       +if (![string]::IsNullOrEmpty($env:chocolateyUseWindowsCompression)){
       +  Write-Output 'Using built in compression to unzip.'
       +  $unzipMethod = 'builtin'
       +}
       +
       +if ($unzipMethod -eq '7zip') {
       +  # download 7zip
       +  Write-Output "Download 7Zip commandline tool"
       +  $7zaExe = Join-Path $tempDir '7za.exe'
       +  Download-File 'https://chocolatey.org/7za.exe' "$7zaExe"
       +
       +  # unzip the package
       +  Write-Output "Extracting $file to $tempDir..."
       +  Start-Process "$7zaExe" -ArgumentList "x -o`"$tempDir`" -y `"$file`"" -Wait -NoNewWindow
       +} else {
       +  # unzip the package
       +  Write-Output "Extracting $file to $tempDir..."
       +  $shellApplication = new-object -com shell.application
       +  $zipPackage = $shellApplication.NameSpace($file)
       +  $destinationFolder = $shellApplication.NameSpace($tempDir)
       +  $destinationFolder.CopyHere($zipPackage.Items(),0x10)
       +}
       +
       +# Call chocolatey install
       +Write-Output "Installing chocolatey on this machine"
       +$toolsFolder = Join-Path $tempDir "tools"
       +$chocInstallPS1 = Join-Path $toolsFolder "chocolateyInstall.ps1"
       +
       +& $chocInstallPS1
       +
       +Write-Output 'Ensuring chocolatey commands are on the path'
       +$chocInstallVariableName = "ChocolateyInstall"
       +$chocoPath = [Environment]::GetEnvironmentVariable($chocInstallVariableName)
       +if ($chocoPath -eq $null -or $chocoPath -eq '') {
       +  $chocoPath = 'C:\ProgramData\Chocolatey'
       +}
       +
       +$chocoExePath = Join-Path $chocoPath 'bin'
       +
       +if ($($env:Path).ToLower().Contains($($chocoExePath).ToLower()) -eq $false) {
       +  $env:Path = [Environment]::GetEnvironmentVariable('Path',[System.EnvironmentVariableTarget]::Machine);
       +}
       +
       +Write-Output 'Ensuring chocolatey.nupkg is in the lib folder'
       +$chocoPkgDir = Join-Path $chocoPath 'lib\chocolatey'
       +$nupkg = Join-Path $chocoPkgDir 'chocolatey.nupkg'
       +if (![System.IO.Directory]::Exists($chocoPkgDir)) { [System.IO.Directory]::CreateDirectory($chocoPkgDir); }
       +Copy-Item "$file" "$nupkg" -Force -ErrorAction SilentlyContinue
   [2016-06-16T02:14:38-07:00] INFO: template[C:\Users\vagrant\AppData\Local\Temp\kitchen\cache/install.ps1] sending run action to powershell_script[Install Chocolatey] (immediate)
     * powershell_script[Install Chocolatey] action run[2016-06-16T02:14:38-07:00] INFO: Processing powershell_script[Install Chocolatey] action run (chocolatey::default line 38)

       [execute] C:\Users\vagrant\AppData\Local\Temp\chef-script20160616-2792-1m52tg1.ps1 : The

          remote name could not be resolved: 'chocolatey.org'

              + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorExcep

             tion

              + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio

             n,chef-script20160616-2792-1m52tg1.ps1

       ================================================================================
       Error executing action `run` on resource 'powershell_script[Install Chocolatey]'
       ================================================================================

       Mixlib::ShellOut::ShellCommandFailed
       ------------------------------------
       Expected process to exit with [0], but received '1'
       ---- Begin output of "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" ----
       STDOUT:
       STDERR: C:\Users\vagrant\AppData\Local\Temp\chef-script20160616-2792-1m52tg1.ps1 : The

       remote name could not be resolved: 'chocolatey.org'

    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorExcep

   tion

    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio

   n,chef-script20160616-2792-1m52tg1.ps1
       ---- End output of "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" ----
       Ran "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" returned 1

       Resource Declaration:
       ---------------------
       # In C:\Users\vagrant\AppData\Local\Temp\kitchen\cookbooks\chocolatey\recipes\default.rb

        38: powershell_script 'Install Chocolatey' do
        39:   action :nothing
        40:   environment node['chocolatey']['install_vars']
        41:   cwd Chef::Config['file_cache_path']
        42:   code install_ps1
        43: end

       Compiled Resource:
       ------------------
       # Declared in C:\Users\vagrant\AppData\Local\Temp\kitchen\cookbooks\chocolatey\recipes\default.rb:38:in `from_file'

       powershell_script("Install Chocolatey") do
         action [:nothing]
         retries 0
         retry_delay 2
         default_guard_interpreter :powershell_script
         command "Install Chocolatey"
         backup 5
         cwd "C:\\Users\\vagrant\\AppData\\Local\\Temp\\kitchen\\cache"
         environment {"chocolateyProxyLocation"=>nil, "chocolateyProxyUser"=>nil, "chocolateyProxyPassword"=>nil, "chocolateyVersion"=>nil, "chocolateyDownloadUrl"=>"https://chocolatey.org/api/v2/package/chocolatey", "chocolateyUseWindowsCompression"=>nil}
         returns 0
         code "C:\\Users\\vagrant\\AppData\\Local\\Temp\\kitchen\\cache/install.ps1"
         interpreter "powershell.exe"
         declared_type :powershell_script
         cookbook_name :chocolatey
         recipe_name "default"
       end

       Platform:
       ---------
       x64-mingw32

   [2016-06-16T02:14:51-07:00] INFO: Running queued delayed notifications before re-raising exception

   Running handlers:
   [2016-06-16T02:14:51-07:00] ERROR: Running exception handlers
   Running handlers complete
   [2016-06-16T02:14:51-07:00] ERROR: Exception handlers complete
   Chef Client failed. 16 resources updated in 03 minutes 14 seconds
   [2016-06-16T02:14:51-07:00] FATAL: Stacktrace dumped to C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/chef-stacktrace.out
   [2016-06-16T02:14:51-07:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
   [2016-06-16T02:14:51-07:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: powershell_script[Install Chocolatey] (chocolatey::default line 38) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
   ---- Begin output of "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" ----
   STDOUT:
   STDERR: C:\Users\vagrant\AppData\Local\Temp\chef-script20160616-2792-1m52tg1.ps1 : The

   remote name could not be resolved: 'chocolatey.org'

       + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorExcep

      tion

       + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio

      n,chef-script20160616-2792-1m52tg1.ps1
   ---- End output of "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" ----
   Ran "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NonInteractive -NoProfile -ExecutionPolicy Bypass -InputFormat None -File "C:/Users/vagrant/AppData/Local/Temp/chef-script20160616-2792-1m52tg1.ps1" returned 1

$$$$$$ C:/opscode/chef/embedded/lib/ruby/2.1.0/x64-mingw32/dl.so: warning: already initialized constant DL::RUBY_FREE
$$$$$$ C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/net-ssh-3.1.1/lib/net/ssh/authentication/pageant.rb:16: warning: previous definition of RUBY_FREE was here
$$$$$$ DL is deprecated, please use Fiddle

Converge failed on instance .
Please see .kitchen/logs/certification-wind2012-r2.log for more details
------Exception-------
Class: Kitchen::ActionFailed
Message: WinRM exited (1) for command: [$env:PATH = [System.Environment]::GetEnvironmentVariable("PATH","Machine")

& $env:systemdrive\opscode\chef\bin\chef-solo.bat --config $env:TEMP\kitchen\solo.rb --log_level info --force-formatter --no-color --json-attributes $env:TEMP\kitchen\dna.json]

Next Run
-----> Starting Kitchen (v1.9.1)
-----> Converging ...
Preparing files for transfer
Preparing dna.json
Resolving cookbook dependencies with Berkshelf 4.3.3...
Removing non-cookbook files before transfer
Preparing solo.rb
-----> Chef Omnibus installation detected (12.10.24)
   Transferring files to ...
   Starting Chef Client, version 12.10.24
   [2016-06-16T02:30:08-07:00] INFO: *** Chef 12.10.24 ***
   [2016-06-16T02:30:08-07:00] INFO: Platform: x64-mingw32

...stuff....
 To install chocolatey, we recommend
       the 'chocolatey' cookbook (https://github.com/chocolatey/chocolatey-cookbook).
       If Chocolatey is installed, ensure that the 'ChocolateyInstall' environment
       variable is correctly set. You can verify this with the PowerShell command
       '[System.Environment]::GetEnvironmentVariable('ChocolateyInstall', 'MACHINE')'.

       Resource Declaration:
       ---------------------
       # In C:\Users\vagrant\AppData\Local\Temp\kitchen\cookbooks\windows_lab_11\recipes\answers_post_reboot.rb

       171: chocolatey_package 'sublimetext3'
       172: # or

       Compiled Resource:
       ------------------
       # Declared in C:\Users\vagrant\AppData\Local\Temp\kitchen\cookbooks\windows_lab_11\recipes\answers_post_reboot.rb:171:in `from_file'

       chocolatey_package("sublimetext3") do
         package_name ["sublimetext3"]
         action [:install]
         retries 0
         retry_delay 2
         default_guard_interpreter :default
         declared_type :chocolatey_package
         cookbook_name :windows_lab_11
         recipe_name "answers_post_reboot"
       end

       Platform:
       ---------
       x64-mingw32

   [2016-06-16T02:30:47-07:00] INFO: Running queued delayed notifications before re-raising exception

   Running handlers:
   [2016-06-16T02:30:47-07:00] ERROR: Running exception handlers
   Running handlers complete
   [2016-06-16T02:30:47-07:00] ERROR: Exception handlers complete
   Chef Client failed. 3 resources updated in 39 seconds
   [2016-06-16T02:30:47-07:00] FATAL: Stacktrace dumped to C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/chef-stacktrace.out
   [2016-06-16T02:30:47-07:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
   [2016-06-16T02:30:47-07:00] FATAL: Chef::Exceptions::MissingLibrary: chocolatey_package[sublimetext3] (windows_lab_11::answers_post_reboot line 171) had an error: Chef::Exceptions::MissingLibrary: Could not locate your Chocolatey install. To install chocolatey, we recommend
   the 'chocolatey' cookbook (https://github.com/chocolatey/chocolatey-cookbook).
   If Chocolatey is installed, ensure that the 'ChocolateyInstall' environment
   variable is correctly set. You can verify this with the PowerShell command
   '[System.Environment]::GetEnvironmentVariable('ChocolateyInstall', 'MACHINE')'.

$$$$$$ C:/opscode/chef/embedded/lib/ruby/2.1.0/x64-mingw32/dl.so: warning: already initialized constant DL::RUBY_FREE
$$$$$$ C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/net-ssh-3.1.1/lib/net/ssh/authentication/pageant.rb:16: warning: previous definition of RUBY_FREE was here
$$$$$$ DL is deprecated, please use Fiddle

Converge failed on instance .
Please see .kitchen/logs/certification-wind2012-r2.log for more details
------Exception-------
Class: Kitchen::ActionFailed
Message: WinRM exited (1) for command: [$env:PATH = [System.Environment]::GetEnvironmentVariable("PATH","Machine")

& $env:systemdrive\opscode\chef\bin\chef-solo.bat --config $env:TEMP\kitchen\solo.rb --log_level info --force-formatter --no-color --json-attributes $env:TEMP\kitchen\dna.json]

alexvinyar@seavinyar02 ~/Documents/Trainings_keys_ppt/certification/cert-chef_for_windows/windows_lab_1 (lab_1●)$

yeah this is definitely a bug. We currently run the install script upon notifies after the template is installed. So if the sxcript fails, subsequent runs will not trigger it because the template is up to date. Pretty sure this was originally designed when we downloaded the script from github so if there were DNS problems, the template install would likely fail as well. We somewhat recently moved the template into the cookbook.
We should run just remove the notifies and apply the same guard to the execute resource.

awesome!


Non-wheel pip install fails

~$ mkvirtualenv test-slackbot
New python executable in /home/daniel/envs/test-slackbot/bin/python2
Also creating executable in /home/daniel/envs/test-slackbot/bin/python
Installing setuptools, pip...done.
test-slackbot ~$ pip install --help |grep wheel
  --no-use-wheel              Do not Find and prefer wheel archives when searching indexes and find-links locations.
test-slackbot ~$ pip install --no-use-wheel slackbot
DEPRECATION: --download-cache has been deprecated and will be removed in the future. Pip now automatically uses and configures its cache.
Collecting slackbot
  Downloading slackbot-0.1.8.tar.gz
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/tmp/pip-build-RDa_Xl/slackbot/setup.py", line 4, in <module>
        __version__ = open(join(dirname(__file__), 'slackbot/VERSION')).read().strip()
    IOError: [Errno 2] No such file or directory: '/tmp/pip-build-RDa_Xl/slackbot/slackbot/VERSION'
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

      File "<string>", line 20, in <module>

      File "/tmp/pip-build-RDa_Xl/slackbot/setup.py", line 4, in <module>

        __version__ = open(join(dirname(__file__), 'slackbot/VERSION')).read().strip()

    IOError: [Errno 2] No such file or directory: '/tmp/pip-build-RDa_Xl/slackbot/slackbot/VERSION'

    ----------------------------------------
    Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-RDa_Xl/slackbot

Latest package version published to pypi is v0.1.8 but the github repository is missing the bumpversion commits and corresponding tag. So, latest release didn't use travis-ci to publish pypi packages, that may be the cause of troubles.

Another chance is that slackbot/VERSION is not shipped anyway, and it is fixable easily with a MANIFEST.in file in project root.
i.e.: https://github.com/scrapy/scrapy/blob/master/MANIFEST.in#L6

I've included the VERSION file in source distribution by adding a MANIFEST.IN. Now install from source should work.
Publishing to pypi from travis has never succeeded. Maybe I got something wrong with the encrypted password in .travis.yml.


Specific acronyms spell fix

Acronyms automatically sync to GitHub frequently from an internal list. Added spell checking to the syncing script's list of tasks.


[WIP] Refactor BlueprintCircuit

Summary
Refactors BlueprintCircuit to remove references to self._data
Details and comments
In the process of working on #1163 with @kdk, there were quite a few problems showing up in all the classes that inherit from BlueprintCircuit. The goal in addressing #1163 is to convert QuantumCircuit._data from a list to a DAGCircuit. In the BlueprintCircuit classes, self._data is used as a bool to determine whether to build a circuit or not. The value of self._data varies from None to an empty list to a populated list, and this fact is used to determine whether self._build should be called to build the circuit.
First off it seems questionable to use a list as a bool through 15 different classes, and this became much more problematic when using a DAGCircuit instead of a list for self._data. This PR adds a new bool attribute to BlueprintCircuit, _valid, which is then used throughout to decide whether to build or not. Almost all references to self._data have been removed from the BlueprintCircuit classes. This will make the transition in #1163 much simpler and cleaner, and should have no significant effect on the current main code.
To do,

[x]  Doc changes
[x]  Remove as many of the few remaining references to self._data as possible
[ ]  Reno
[ ]  Maybe some additional tests

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

37 of 48 (77.08%)  changed or added relevant lines in 14 files are covered.
49 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.01%) to 82.304%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit/circuit/library/arithmetic/integer_comparator.py
1
2
50.0%

qiskit/circuit/library/arithmetic/linear_pauli_rotations.py
1
2
50.0%

qiskit/circuit/library/arithmetic/piecewise_linear_pauli_rotations.py
1
2
50.0%

qiskit/circuit/library/arithmetic/weighted_adder.py
1
2
50.0%

qiskit/circuit/library/basis_change/qft.py
1
2
50.0%

qiskit/algorithms/linear_solvers/matrices/numpy_matrix.py
0
2
0.0%

qiskit/algorithms/linear_solvers/matrices/tridiagonal_toeplitz.py
0
2
0.0%

qiskit/circuit/library/blueprintcircuit.py
20
22
90.91%

Files with Coverage Reduction
New Missed Lines
%

qiskit/circuit/library/evolved_operator_ansatz.py
3
78.41%

qiskit/test/decorators.py
3
70.95%

qiskit/circuit/library/n_local/n_local.py
43
81.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.01%

Covered Lines:
49268

Relevant Lines:
59861

💛  - Coveralls

As of https://github.com/Qiskit/qiskit-terra/pull/7216/commits/bd388f85ed9c2f5ea2b0296c6c9b113fbdf74333, all references to self._data in BlueprintCircuit's have been removed except for in BlueprintCircuit._invalidate.

The [WIP] can probably also be removed, no? 🙂

@Cryoris Thanks for taking a look at this. In regard to comments above, I like is_built. That's the most direct. _valid was chosen just as the opposite of invalid, but I see your point that valid can have a broader meaning.
WIP is no more.

@Cryoris Changes should be done in https://github.com/Qiskit/qiskit-terra/pull/7216/commits/7b14ae6e5f03c43af45b91c6b52157b2bd39ef94 and https://github.com/Qiskit/qiskit-terra/pull/7216/commits/b03f73750115bb165d30c793d1d9b32cddc210af. I had tried to standardize on only calling _check_configuration in blueprintcircuit.py, but there was no requirement for that. So I just put the evolved_operator_ansatz.py code back the way it was, and put the ValueError back in the test.
I changed _valid to _is_built, since I thought self._build and self._built might get confused.


[Wait4#560] [ Application ] Fix Logistic Regression Example to work

Current implementation of Logistic example is not working.
This PR inclues fixes.
Self evaluation:

Build test:	 [X]Passed [ ]Failed [ ]Skipped
Run test:	 [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #563. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.


Standardize Dependent Variables

Our aim is to compare different types of team communication across various team tasks. As a result, it's necessary that we have some kind of common dependent variable across all tasks.
Currently, depending on the game, we have different dependent variables: whether it's persuading people to change their minds and vote in unison (juries), optimizing the number of points (CSOP), or reducing fracture. What's a good way to capture this variation across dependent variables into a single 'score' of some sort?
This seems to be an issue that we have previously grappled with, especially on the #ht-task-implementation side of things. In our current design of the Empirica platform, we seem to already have a method of ensuring comparability between tasks. Can we somehow port that over to our analysis of the historical data?

Potential resource related to this: https://www.annualreviews.org/doi/abs/10.1146/annurev-polisci-041719-102556
Taken from Linnea's work, described in this Issue: https://github.com/orgs/Watts-Lab/projects/8/views/2?pane=issue&itemId=18483736

Notes from lab meeting, 4/13/2023:

First of all, it seems hopeless to make quantitative comparisons across tasks

Comparing ‘num flipped’ to ‘efficiency’ is meaningless

We have to translate quantitative measures into a qualitative evaluation
We need a domain-specific notion of what is good
Example from HT: Scoring function is going to be essentially non-comparable; in every case, however we are measuring performance, does a team outperform a nominal group? THIS ends up being our main DV

Linnea: FWIW: we have the same diversity of "Behavior change" DVs with nudging. We capture ALL behavioral outcomes, and indicate which is FOCAL based on the authors' POV. That one is the one we use in our analysis, using a standardized unit (specific, like cohens d, or coarse, like did T beat C?).
Our "does T beat C" is very similar to what Duncan is talking about.)
Although … we could introduce the nominal teams (Jury, CSOP, and Estimation all have nominal aspects …)

“Can you predict synergy from communication features?”

our problem is that we need a metric for successful….

“outperforming a nominal group” (compare to individuals)
connect to the DV within the paper

In every case, there will be multiple operationalizations of performance; performance is not one thing, it is many things. And all of those things could be relevant or not-relevant depending on the circumstances. CSOP paper: sometimes you care about absolute performance and it doesn’t matter how long it takes. Other times you care about getting there fast. “Just define, measure, and predict them separately.”
All these papers have to come to some kind of output — the actual numerical output is rarely the thing of interest.

What is, qualitatively, a “good” outcome?
Depending on how you make those choices, you will get different results and different outcomes

All results will be sort of conditional on definitions we choose
Perhaps we just need to be more precise about what we’re claiming

“You decide: the actual appropriate definition will depend on the context; there is no universal version of it. We’re gonna show you 1.”
“We will show you, for this definition of performance/success, this is what we mean …”
And all the code/data is out there, and if you want to choose a different metric, go knock yourself out
You don’t actually care about the answer, what you care about is the process

We know the answer could be different if we measure a different thing.

If you care about flipping max number of votes, you want one thing

“Because what you mean by success could be quite different for different tasks, your conclusions are also kind of apples to oranges. 🍊🍎”

At a descriptive level: I’m just going to look at, on average, how do people behave when they do juries v. CSOP
What are the features that predict success v. failure, and how do they differ across tasks?

NOW it is contingent on definitions of success and failure….

I guess you could try several different definitions of success, and then say it’s robust if they’re correlated

“I think the way out of it is just to be transparent and specific, and just kind of outline the problem, and say, look, for all these different tasks, and even within task, it’s not clear what you mean by performance, and given performance, it’s not clear what you mean by success. So the best you can do is make some sort of reasonable claim that would seem sensible to somebody who cared about that task.”
Linnea: More FWIW that is the same approach of that IBM-academic team. As long as you are specific and transparent, they're happy.
Mark: try to throw it all out there — do all that you can, but you have a high-dimensional dataset that


Add support for Grafana 8 notifier channels configuration as "notifie…

Description
Grafana 8 introduced notifications. For the notifications to work we need to configure Grafana Notifiers (aka notification channels). I created a pull request here https://github.com/brancz/kubernetes-grafana/pull/121 that adds this support on the kubernetes-grafana project.
However, we need to add support on this project as well, so we can configure the notifiers via values: grafana: notifiers in the libsonnet files.
Type of change
What type of changes does your code introduce to the kube-prometheus? Put an x in the box that apply.

[ ] CHANGE (fix or feature that would cause existing functionality to not work as expected)
[X] FEATURE (non-breaking change which adds functionality)
[ ] BUGFIX (non-breaking change which fixes an issue)
[ ] ENHANCEMENT (non-breaking change which improves existing functionality)
[ ] NONE (if none of the other choices apply. Example, tooling, build system, CI, docs, etc.)

Changelog entry
Add notifiers field to values:grafana section to allow configuration of Grafana 8 notification channels (notifiers).

Thanks for your pull request!
We'll need the PR you mentioned to get merged first, so let's put this one on hold until then

Of course. We'll do that.

Closing based on https://github.com/prometheus-operator/kube-prometheus/pull/1413#issuecomment-948404977 and the two PR's mentioned there have since merged.


Wrong behavior of $DELETE and modifying DynamoDB maps

I did some testing and found that updating with $ADD works as expected, i.e. I was able to successfully append an element to a list of type [String] by running:
Test.update(
  { id: 1 },
  { $ADD:
    { myList: ['new-item'] }
  }
);

Next I tried deleting that element by changing $ADD to $DELETE in the above call. That call, however, deleted the whole attribute myList, not just the item. This behavior is different from DELETE in DynamoDB Update Expressions, as you can see here.
$DELETE also deletes a counter instead of decrementing it, though I am not sure if that's different from Update Expressions behavior. I think it makes sense to have an expression that reverses the effect of $ADD. $REMOVE, perhaps?
Also, $ADD does not add a key-value pair to a DynamoDB map. With Update Expressions you can do it by using SET, you can see an example here. It would be very useful to be able to add and remove items from a map with Dynamoose. I suggest updating $ADD to support this and adding $REMOVE as an opposite of $ADD. If you think it makes sense, I might submit a PR, though it might take a while, cause my time is very limited.

@dolsem Dynamoose has 0 control over AWS DynamoDB Update Expressions. Although Dynamoose might do work before and after to manipulate the request and improve ease of use, at the end of the day we are limited to what AWS DynamoDB offers. Due to this, I'm slightly confused about what you mean by I suggest updating $ADD to support this and adding $REMOVE as an opposite of $ADD.. We can't change how DynamoDB works itself.
In terms of $DELETE also deletes a counter instead of decrementing it, that is the intended behavior as the documentation indicates.
Finally in terms of pull requests, I'm always happy to review any pull requests submitted. Doesn't guarantee that it'll be merged in tho. In this case if you have better ideas of how to handle it, that'd be great. But please keep in mind the limitations and boundaries that DynamoDB has.

I'm closing this issue for now, and might reopen depending on OPs reply.

Sorry for not being clear enough. It was my understanding that update command syntax does not directly correspond (and is not meant to) to that of Update Expressions. In UE there are 4 types: SET, REMOVE, ADD and DELETE. Note that current $DELETE behavior corresponds to REMOVE in UE, and DELETE is used to "to remove one or more elements from a set", NOT to remove attributes.
So my point is, if Dynamoose doesn't attempt to replicate UE exactly (which is what I assumed) there's more leeway and $ADD can be updated to work with maps - in UE you can add a key-value pair using SET instead, as I mentioned above, but we don't have SET in Dynamoose. so currently there seems to be no way to modify a map without a read first. If this route is acceptable, then $REMOVE might also be added, with my proposed functionality, not the one in UE.
If I am wrong and the goal is to actually closely follow UE syntax, then instead of $PUT, $ADD and $DELETE there should probably be $SET, $REMOVE, $ADD and $DELETE with original UE behavior, i.e. $REMOVE removes attributes and $DELETE does not (removes elements from a set instead). This is not something that I personally prefer, because it's confusing (DELETE is the opposite of ADD when working with sets, and REMOVE is used to delete attributes. Switching behavior of DELETE and REMOVE would make more sense conceptually imo, but that's on Amazon). Also SET's behavior is overcomplicated. Please let me know which path Dynamoose is taking then, because I am confused.
P.S. Also note that I use $ to refer to update keywords in Dynamoose and I omit it to refer to original Update Expressions.

@brandongoode Thoughts on this?

@fishcharlie I can only speak from my point of view, and personally I come from using MongoDB and Mongoose. Recently I decided to transfer my database to Dynamo, and one of the reasons I chose Dynamoose is because originally I was hoping for a seamless transition that wouldn't require many changes to the codebase (which is, I guess, how Dynamoose positions itself, or at least the way I interpreted it). As I can see now, this was unrealistic, because the underlying structure of DynamoDB is different, and the details of the underlying structure matter a lot. The main problem with my transition was Dynamo's documentation, which is often unnecessarily cryptic and is not well organized. The fact that there was some confusion on your part (as far as I understand) about some aspects of update expressions speaks volumes about their documentation, since you've definitely spent way more time with it than me.
So in my opinion what ultimately makes any transition smooth is good documentation with clear explanations and clear examples. It's also helpful to list known limitations in documentation as well, otherwise people will spend time figuring out how to do something that might not yet be implemented (e.g. updating map attributes without first reading them from the database). I think there's still some work to do on that part in Dynamoose.
I also think that a good API should strive to be as self-explanatory as possible. This is not always the case with Dynamo API (choice between $REMOVE and $DELETE, or $SET and $ADD is not obvious, also consider the fact that you add an element to a set with $ADD and to a map with $SET - plenty of room for confusion, and potentially bad/wrong code). Provided there's good documentation, minor differences in API are permissible in my view, if they lead to less code and less confusion.
Again, I want to emphasize that I don't have any prior experience with DynamoDB, so you might want to take my words with a grain of salt.

The issue is how DynamoDB expects the remove names based on indexes.
Below is the AWS doc:

Removing Elements From a List
You can use REMOVE to delete individual elements from a list.
Example
In Appending Elements To a List, we modified a list attribute (RelatedItems) so that it contained five elements:
[0]—Chisel
[1]—Hammer
[2]—Nails
[3]—Screwdriver
[4]—Hacksaw
The following AWS CLI example deletes Hammer and Nails from the list.
aws dynamodb update-item \
    --table-name ProductCatalog \
    --key '{"Id":{"N":"789"}}' \
    --update-expression "REMOVE RelatedItems[1], RelatedItems[2]" \
    --return-values ALL_NEW

After removing Hammer and Nails, the remaining elements are shifted. The list now contains the following:
[0]—Chisel
[1]—Screwdriver
[2]—Hacksaw

This means the name has to contain the index. We would need to modify the remove statmeents to include the indexes: https://github.com/dynamoosejs/dynamoose/blob/d23d4650be1a0fd977cacde768fa7130bdfc61bf/lib/Model.js#L690-L703
Then the code would be something like:
Test.update(
  { id: 1 },
  { $DELETE:
    { myList: [0, 1] }
  }
);

Okay, makes sense! And what are you thoughts, @brandongoode, on extending that functionality to maps? (I.e. using $ADD and $DELETE to add and delete entries in a map.) I haven't tested it since I posted my issue, but if I'm not mistaken, Dynamoose still doesn't support that yet.

Wondering if there's any thoughts on this? With the recent addition of list_append it would be great to be able to remove an item from a list (Or is there a known workaround?)
Currently i'm pulling the list - filtering it and then updating the object, but this is dangerous when two removes come in together, only the second gets deleted since the original list is being pulled both times.
Im left with no safe way to remove items from list.

@fishcharlie it actually is, DynamoDB has REMOVE and DELETE.
The DELETE in this library does what REMOVE is supposed to do in DynamoDB, hence instead of allowing you remove elements in a Set it removes the entire field.
What I've done in my current project for now is to write an update expressing and use the AWS SDK to run it directly for that part of my project.

Yes, the problem here is, that the dynamoose library does not differentiate between these two commands and a $DELETE in dynamoose actually sends a "REMOVE"-Command to aws dynamodb.
Furthermore, REMOVE can either delete a whole attribute from an item OR remove an item from a LIST (not SET (!)). Since Arrays are saved as SET-Types when using dynamoose, there is no hope for the $DELETE operation in this library to remove an item from an Array. Even if one explicitly uses the LIST type, the REMOVE operation for a single item is not implemented.
To correct the behavior of this library we need to implement $REMOVE and $DELETE according to the AWS Docs. I think I might be able to submit a PR after some more research but any help would be  appreciated. I wonder why this hasn't got a priority for implementation yet. I don't think it's hard to do and without it the library is useless in some critical use-cases.

I FINALLY got around to looking at this further. I think I'm in FULL support of this issue after taking some time to dig into it and the DynamoDB documentation. I have been playing around with the code base and trying to understand this on a deeper level as well.
I'm trying my hardest for now to build a solution that will not be considered a breaking change. That being said, I don't know if it's going to be possible.
My biggest concern with my solution is that if you are trying to remove a property and aren't passing in null, this is for sure a breaking change. The documentation (https://dynamoosejs.com/api/model/#modelupdatekey-update-options-callback) says to use null. But I'm not sure if it's explicit enough to be clear.
Also we have a test called Update $DELETE with saveUnknown enabled that doesn't use null where it should be. Which is kinda encouraging bad use of it.
Below you can find an attachment of my solution I tried.

I have not committed this due to the fact that I'm not sure if it's a breaking change, and I'm not sure if we should go forward with this solution.

What are everyone's thoughts on this? If we decide my solution above should be considered a breaking change (which is what I'm thinking it is), then I'm more for doing a larger breaking change that adds a $REMOVE property, and completely changes the behavior of $DELETE. Sadly, I'm not sure if I'm gonna have time to do that larger change effort (but it looks like @CodeBanBan made a commit on a branch to do that large change tho, if @CodeBanBan is willing to submit a PR for it).

I know everyone is eager to get this support added, so any help with PRs and getting this across the finish line would be much appreciated.

@fishcharlie I agree that it makes most sense to do the larger change if the behavior of the update expressions will be changed anyway. Doesn't look like there's a way to completely align functionality with DynamoDB docs without breaking changes.
One option I can think of that avoids breaking code is to deprecate $ADD, $REMOVE and $DELETE completely and throw a warning, and perhaps plan to remove them in version 2.0.0. Keys with new behavior can be named slightly differently, perhaps SET, ADD, REMOVE, DELETE, or $set, $add, $remove, $delete. The first option might have issues when key and update expression are supplied inside of the same object as a single argument, though I've never seen much use in making it a single argument, and wouldn't mind for that to be deprecated as well.
If you choose to go forward with a breaking update though, I think it's best if it's scheduled for a major version update, like 2.0.0. Moreover, big libraries usually provide documentation on how to convert code to the new version without breaking anything. And generally speaking be as explicit and as in people's faces as possible.

@dolsem With our new deployment system, if the commits are marked with “breaking change”, it’ll auto deploy as 2.0.0. So 2.0.0 will just have this PR.
I’m gonna review #644 now, if you’d like to as well and we can base it off of that. Looking forward to getting this in!

Any updates on this change?

@arunabhCronJ Please refer to the open PR #644 for the latest information.

Seeing that the PR is still open, what exactly is the workaround to removing an item from a set in the meantime? Is there a way to do it atomically (i.e. without modifying and then updating the entire set)

@plfx currently $DELETE translates to REMOVE in Dynamoose, and it doesn't let you remove list or set items. You have to either fetch the whole item, update the set and save it, or update it with AWS SDK directly (dynamoose.ddb().updateItem()).


Doc : update Readme.md with steps to start example server

Codecov Report

Merging #748 (3d94cee) into main (8ea75b3) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 3d94cee differs from pull request most recent head 008a7df. Consider uploading reports for the commit 008a7df to get more accurate results

@@           Coverage Diff           @@
##             main     #748   +/-   ##
=======================================
  Coverage   48.68%   48.68%
=======================================
  Files          68       68
  Lines        2015     2015
  Branches       38       38
=======================================
  Hits          981      981
  Misses       1034     1034

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 8ea75b3...008a7df. Read the comment docs.


texture example: mute video for autoplay

This fix mutes video sound; the current texture example doesn't play video because autoplay is prohibited when the sound is on.
https://github.com/processing/p5.js/issues/3184
https://github.com/processing/p5.js/issues/2911
you can test it here (thanks @mlarghydracept!)

edited!


Socket disconnected because of choppy connection, but it never times out, and isConnected returns true.

First of all, thank you for this awesome library. On to the issue:
I've been using a rather bad wifi setup for a while, and I've noticed this issue a couple of times. I don't know if this is an issue on Starscream or maybe on the underlying URLConnection. I've thought of building a watchdog that will disconnect and reconnect the socket if it doesn't receive data for X seconds, but I'm not sure that's the best approach.
Any thoughts?

Hey @brunophilipe  could this be related to link

@brunophilipe We are facing a similar issue here..

I've worked around this by implementing a watchdog that sends a ping to the server every 30 seconds or so. If it doesn't get a pong back in 5 seconds it releases the existing socket and creates a new one.

Thanks! I appreciate the feedback. I know it has been a while since this has opened, but normally a Websocket server since a ping frame every X seconds to stimulate the connection and make sure the client is still there. The isConnected property was removed in the 4.0.0 release as it was racy and could return the wrong status. Ultimately choppy connections can be difficult to deal with, but with the right checks and notifications it can be worked around.

@daltoniam 👍 Thank you for the update and for your work!


Adding Euclidean Alignment implementation

Hello!
I am adding an implementation of the Euclidean Alignment (He H. et al - 2019) used on Junqueira, B et al. (2024). The methods depend directly on the covariance estimators present on Pyriemann, and Sylvain thought about what would be a nice addition for Pyriemann.
In this re-implementation, I defined it as a scikit-learn transformation, and in a way that is not necessary to define a ‘target’ domain before.
It would be easier to add this transformation as a preprocessing step in a pipeline, and also to integrate with MOABB, being able to use the pre-defined evaluation objects.
This class is also adapted to align both raw trials and covariance matrices and to define the type of covariance estimator, in the case the input is raw data. Therefore, it can be used with different classifiers.
Since we were working with this transformation, we thought adding an implementation and a tutorial here in PyRiemann would be nice, but I would like to check first if the tutorial would be welcome.

@qbarthelemy
Fyi: @sylvchev, @bruAristimunha
I'm also preparing some test scrips to add for testing the transformation.

Good call @qbarthelemy
I discussed with @brunaafl , she will try to to rely on TLCenter for euclidean alignement as much as possible.

transform method of class TLCenter can be simply generalized into:
    def transform(self, X, y_enc):
        """Re-center matrices to Identity.

        If ``target_domain`` is not empty, recenter matrices to this
        specified target domain.
        Else, recenter matrices of each domain to Identity.

        Parameters
        ----------
        X : ndarray, shape (n_matrices, n_channels, n_channels)
            Set of SPD matrices.
        y_enc : ndarray, shape (n_matrices,)
            Extended labels for each matrix.
            Used only when ``target_domain`` is empty.

        Returns
        -------
        X : ndarray, shape (n_matrices, n_classes)
            Set of SPD matrices with mean in the Identity.
        """
        if self.target_domain != "":
            return self.recenter_[self.target_domain].transform(X)

        _, _, domains = decode_domains(X, y_enc)

        X_rct = np.zeros_like(X)
        for d in np.unique(domains):
            idx = domains == d
            X_rct[idx] = self.recenter_[d].transform(X[idx])
        return X_rct

Hi!
I made some changes to the TLCenter code, as @qbarthelemy  suggested.
I changed the parameter “target_domain” to be optional, allowing the same functionality as before to be maintained.
    def transform(self, X, y_enc=None):
        """Re-center the data points in the target domain to Identity.

        Parameters
        ----------
        X : ndarray, shape (n_matrices, n_channels, n_channels)
            Set of SPD matrices.
        y_enc : None
            Not used, here for compatibility with sklearn API.

        Returns
        -------
        X : ndarray, shape (n_matrices, n_classes)
            Set of SPD matrices with mean in the Identity.
        """
        # Used during inference, apply recenter from specified target domain.

        # Therefore, if you specified before the target
        if self.target_domain != "":
            recenter = self.recenter_[self.target_domain].transform(X)

        # If you didn't specified, you must have fitted before on calibration
        else:
            keys = list(self.recenter_.keys())

            # Get last reference matrix (after fitting on the calibration)
            last = keys[-1]
            recenter = self.recenter_[last].transform(X)

        return recenter

However, if used as a transformation in a pipeline in a case where “target_domain” should be left empty, such as in an online cross-domain evaluation, you should fit the transformation to a calibration set of the target before transforming the test data. Doing that, the reference matrix computed using calibration will be the last one saved, and you will use it to recenter the test.
With this structure, however, I’m not solving the problem of overriding the fit_transform, and applying fit and then transform will continue to be different from applying fit_transform, since this supposes that data passed in transform is from target subject. A way I imagined of solving this would be using the fact that y_enc==None in inference for the target, and not None otherwise.
Another thing I was imagining is if it was worth it to add a possibility of aligning “raw” trials as well, so it can be used in a more general way.
Please let me know what are your thoughts, and thank you all for all the comments until now!

Thank you @brunaafl  for this improvement of TLCenter class!
I just updated the doc and code. Don't forget to pull before continuing to code.
It's ok for me to use the last calibrated domain if target_domain is not defined.
That said, it seems that this does not cover the use case of He & Wu 2019...
On the other hand, to be sure that the user makes an explicit choice, target_domain must not be optional.
For recentering raw signals, I think it should rather be added to MOABB, because pyRiemann is more dedicated to SPD matrices.


Closes: #1 : Update validation.py scriptsImprove username behavior

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py.
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I fixed it.


GET /tx/<id>/offset throws error in bundle context

Hello,
I notice that, after bundling data, if I try to fetch an individual data item's offset — i.e. using the /tx/<id>/offset route — an error is thrown:
{
  error: TypeError: Cannot read properties of undefined (reading 'offset')
      at null.<anonymous> (node_modules/arlocal/src/routes/transaction.ts:133:33)
      at Generator.next (<anonymous>)
      at fulfilled (/node_modules/arlocal/bin/routes/transaction.js:5:58)
}

Alongside an HTTP response body of OK (instead of the expected { size: number, offset: number }).
Everything else pertaining to the data item's transaction is just dandy; it's only that route that's giving me problems. Normal (non-bundled) transactions also appear unaffected.
Thanks for looking into this!

Ah, just realizing regular Arweave nodes behave similarly. Feel free to close if this is expected behaviour.

Thanks @handlebauer , Thanks for letting us know of that error, for now, this is expected for bundle data.


Remove StacLinkType

Overview
Remove StacLinkType and replace usages with Strings
Checklist

[ ] Description of PR is in an appropriate section of the CHANGELOG and grouped with similar changes if possible

Notes
Stac link types should be able to support pretty much everything on this list according to the spec: https://www.iana.org/assignments/link-relations/link-relations.xhtml
(see https://github.com/radiantearth/stac-spec/blob/master/item-spec/item-spec.md#relation-types)
The current enum reflects neither the "commonly used rel types" nor the entire list.
I suggest either just switching it to a string like in this PR, or having the enum support arbitrary strings as instead or in addition to VendorLinkType
I just deleted StacLinkType, but I'm amenable to doing just adding generic string support to it instead to allow editor / compiler support of common link types while providing an escape hatch
Testing Instructions

Verify that it compiles and doesn't error on tests

Closes #155

Not sure what the correct outcome for the design here, sounds like the current state is "good enough" and has the benefit of type checking even though it does not represent all possible values.
Closing this PR because all further work should be done against https://github.com/azavea/stac4s


[Help/Maybe Issue] Kde5/LxQt not work after install lumina desktop

Hi, I installed lumina follows this instruction http://lumina-desktop.org/get-lumina/#ubuntu
My desktop env is kubuntu15.10 width SDDM(no other DE, only kde5)
After installtion, lumina works well, but after login kde, I confront some problems.
I can login kde, after kde Splash Screen, desktop appeares, but whenever I click my mouse or click my keybord, the Splash Screen comes again, then screen becomes black and only the mouse pointer displayed on my blacked screen.
Here's something I tried.
I tried install LxQt, not works.
I tried to purge lumina, not works.
I tried to remove some configuration files by kde/lumina (~/.kde, some config file in  ~/.config (I may miss some configuration files)), not works
Tried to remove ~/.XAuthority files, not works
I tried install LxQt, can't login, only a dialog with message - LxQt crashed too many times -.
I tried to purge all DE related packages(kde, lxqt, lumina) and only keep xorg related packages, then reinstall kde only, not works
Here's what I found
I reinstall lumina and kde, then login lumina.
I open qterminal app, then run konsole(the kde console app) from qterminal, konsole runs, but after I  try to input some words, the first time I click my keybord konsole crashed(no special debug logs in qterminal)
I think something may conflict with kde frameworks, but I can't figure out what is really wrong.
Anyone can help me?

Well, this sounds more like a KDE5/KF5 issue rather than a Lumina issue. Since LXQt uses some of the KF5 libraries, I would not be surprised if there was something particular in the KF5  libraries which is causing the issues (maybe a conflict/issue between the KF5 library version and the current Qt5 version?).
Background:
Lumina is based on pure-Qt5 libraries, whereas KDE applications/tools use the special KDE library bundle of custom/modified Qt libraries (which provide a lot of the same functionality in different ways, but is not the same as the "pure" Qt libraries from the Qt Company) . Similarly, Lumina uses it's own distinct settings files/hierarchy and does not mix with the settings from other DE's (except for initial X session setup - that is usually handled by the login manager before any DE gets started, and Lumina just uses it as-is).


Homebrew Channel disappeared

I have been using the Homebrew Channel for a few years now. I have never updated my TV that I know of. After rebooting the TV the entire Homebrew channel is completely gone.
I tried reapplying the RootMy.TV which appears to be successful, but there is no Homebrew Channel any longer.
About this TV

Software version 05.70.35
Allow Automatic Updates = off
TV Information [LG] webOS TV UH7500

Should I reset the TV? Can I restore the Homebrew Channel?

You must have updated, since 05.70.35 is the latest version for W16P (Realtek K2Lp) and W16R (MStar M2) and was released in late 2022/early 2023. I'm not able to determine what SoC you would have based on that partial model number (seems like it might be LX M16?).
Anyway, all your developer mode/homebrew stuff was probably wiped after the update when the modified start-devmode.sh was detected. Your firmware is not vulnerable to RootMyTV, and LG has blocked firmware downgrades. Currently, the only reliable option for rooting webOS 3.0 is modifying NVM. GetMeIn may work (probably not though), but the binary on XDA runs a bunch of commands that will just cause problems. If you want to try it anyway, see the OpenLGTV Discord for a modified version that won't run unwanted commands.


batch commands

The batch file code to clean the software dist folder has ren instead of rem
this counts as a job interview and you have to give me a salary now

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

ID: 5f058662-174b-59b0-9d35-2bed6f2d01c8
Version Independent ID: eca080fd-582c-6570-c2ba-e5d1a0e3cdbd
Content: Prepare to deploy Windows - Windows Deployment
Content Source: windows/deployment/update/prepare-deploy-windows.md
Product: w10
Technology: windows
GitHub Login: @jaimeo
Microsoft Alias: jaimeo

Not a valid issue. Looks more like a test comment than any actual issue.
#please-close

Ren is correct; it's the rename command: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/cc754276(v=ws.11)


Can it be modified to visualize Attention in Computer Vision?

Hi, Thanks for the amazing work!
Personally, I focus more on CV field. So, I would like to know if this tool can also be used to visualize Attention in CV.

Thanks! We are glad that you enjoy this tool :)
Dodrio is designed for language models with attention mechanisms. I imagine that one needs to modify the tool a lot to fit vision models with mechanisms. For example, one main feature in Dodrio is to distinguish and analyze the effects of different attention heads (semantic vs. syntactic). Users can easily compare the syntactic dependencies predicted using attention weights and the ground truth dependencies. It is probably harder to do in a CV model where we don't really know the "dependencies/syntax" between different pixels.
However, I believe the attention head map view can be helpful for CV models too, where users can visually compare attention heads across layers. We have some interests in extending Dodrio to CV models with attention mechanisms. We will let you know if we have more update! I will close the issue now, feel free to re-open it if you have more questions :)

@xiaohk Thanks for your quick replay. I would like to contribute it if you guys decided to extend Dodrio to CV models. Please let me know!


Mytrips fix

Added code to stop user from being able to add the same trip more than once to mytrips. fixes issue #122

cool I just wanted to make sure what I did was right cause I had to add some checks and such. Will have to be changed once the server side actually works for mytrips...


Enable PodSecurityPolicy for deployments

See for details and docs
Let's allow k8s users to create and use PodSecurityPolicy templates

+1


Service with multiple addresses

First off — thanks so much for publishing this role. :)

I'm looking to do something like this:
https://github.com/hashicorp/consul/issues/1659#issuecomment-320854604
Context — I want to return multiple backends in HAProxy (via SRV records).
But since the role writes out configuration as with the service.name, it just overwrites my previous consul services:
consul_services:
  - name: app
     address: <IP_ADDRESS>
     id: app.id1
  - name: app
     address: <IP_ADDRESS>
     id: app.id2

I'd probably reverse it and use the service.id instead, but it's not a mandatory field, etc.. Also sounds like a BC break. Any thoughts?

@brianshumate was wondering, would you accept a PR if I changed this? Or rather not?


Python: Cannot import name 'PromptTemplateConfig' from 'semantic_kernel.prompt_template' (unknown location)

Error Message and Stack Trace (if applicable)
Exception has occurred: ImportError
cannot import name 'PromptTemplateConfig' from 'semantic_kernel.prompt_template' (unknown location)
File "C:\Users\TINGLE\Downloads\1\import asyncio.py", line 4, in
from semantic_kernel.prompt_template import PromptTemplateConfig
ImportError: cannot import name 'PromptTemplateConfig' from 'semantic_kernel.prompt_template' (unknown location)
Getting this error while trying to import the below libraries:
import asyncio
from semantic_kernel import Kernel as sk
from semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletion, AzureChatCompletion
from semantic_kernel.prompt_template import PromptTemplateConfig
from semantic_kernel.utils.settings import openai_settings_from_dot_env, azure_openai_settings_from_dot_env

Which version are you using? You need the latest one!

Closing this for now, @tejasingle19 please reopen if you still have issues with the latest version.


cell type "raw" not handled

nbterm breaks if a notebook contains cells of type raw.  In the function set_input_readonly(), only cells of types markdown and code are used to set the text variable, so if a cell of type raw is encountered, the text variable will be uninitialized in line 181 of cell.py.

Thanks @heseber, would you like to open a PR?


Bug displaying 'in 3 hours'

Looks like there could be a bug here, if you are using this library on the  Github User Feed Page.
I believe this should be 3 hours ago, as opposed to in 3 hours unless github is predicting the future.

see screenshot below:

This is probably due to either server time-sync issues or client time settings. Can you reproduce this consistently?

@koddsson will have to wait for someone to star one of my repos again 😁

@Pau1fitz Can't you just go to the homepage (https://github.com/) and see any of the activity in the list there?

That is the page I have gone to but the latest star is from 12 hours ago


hop-node: update rebroadcast logic

Resolves two issues:

Previously, a tx that was re-broadcasted was retried every poll because item!.sentAt = Date.now() was being set after the tx that was failing (because of an already known error). This was causing a ton of RPC usage and overhead. This PR moves the state setting logic to occur prior to the tx so that the result of the tx does not matter
Introduce the concept of max reboosts. If a tx doesn't get picked up after max gas AND another ~30 mins, there is something wrong and should be handled accordingly

@shanefontaine the maxRebroadcasts logic is a good idea and the PR looks good 👍


Avatar selection dropdown has no background (is transparent)

Version: 0.9.3-beta

I wonder if this isn't caused by an exception in the background

No longer an issue


How to consume Swift modules when Cxx interop is enabled

Hey there 👋🏼
First, thanks for this repository, he helped me learn a lot about Swift and CMake and Swift/Cxx interop.
I was experimenting with Swift/Cxx interoperability, especially with consuming a Swift class from C++.
It worked nicely until I needed to import a Swift module from one file to another.
Here is my project structure:
├── CMakeLists.txt
├── app
│   ├── App.cc
│   ├── App.swift                 // HERE, I NEED to import module from window.swift
│   ├── CMakeLists.txt
│   └── include
│       ├── application.h
│       └── module.modulemap
├── main.cc
└── window
    ├── CMakeLists.txt
    ├── include
    │   ├── module.modulemap
    │   └── window.h
    ├── window.cc
    └── window.swift

import Ui

But it does not work as expected:
[4/8] Generating '/Users/tonygo/oss/native-research/build/app/include/app-swift.h'
FAILED: app/include/app-swift.h /Users/tonygo/oss/native-research/build/app/include/app-swift.h
cd /Users/tonygo/oss/native-research/build/app && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -frontend -typecheck -I/Users/tonygo/oss/native-research/app/include /Users/tonygo/oss/native-research/app/App.swift -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -module-name Native -cxx-interoperability-mode=default -emit-clang-header-path /Users/tonygo/oss/native-research/build/app/include/app-swift.h
/Users/tonygo/oss/native-research/app/App.swift:3:8: error: no such module 'Ui'
import Ui
       ^

But when I looked at the build output, I saw Ui module files generated:
├── build
│   └── window
│       ├── CMakeFiles
│       │   └── window.dir
│       │       ├── output-file-map.json
│       │       ├── window.cc.o
│       │       ├── window.swift.o
│       │       ├── window.swift.o.d
│       │       ├── window.swift.swiftdoc
│       │       ├── window.swift.swiftmodule
│       │       ├── window.swift.swiftsourceinfo
│       │       └── window.swiftdeps
│       ├── Ui.abi.json
│       ├── Ui.swiftdoc
│       ├── Ui.swiftmodule
│       ├── Ui.swiftsourceinfo
│       ├── cmake_install.cmake
│       ├── include
│       │   └── window-swift.h
│       └── libwindow.a

I also tried with:
import window

Like it is done here: https://github.com/apple/swift-cmake-examples/tree/main/2_executable_library
I checked that app is linked to window target.
I wonder if it is not just a CMake knowledge that I miss or something else. I run out of ideas 😅.

Hi, thanks for being patient.
It looks like swiftc failing to find the module while generating the C++ header for app_h from the Swift sources and isn't actually building the app target at all. The app_h target is missing the search path to where the Ui.swiftmodule lives.
The easiest way to fix that is to just pass it via the SEARCH_PATHS list so that the header generation finds both the Ui.swiftmodule and the module.modulemap:
generate_cxx_header_target_from_swift(
  app_h
  Native
  "${CMAKE_CURRENT_BINARY_DIR}/include/app-swift.h"
  SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/App.swift"
  SEARCH_PATHS
    "${CMAKE_CURRENT_SOURCE_DIR}/include"
    "${CMAKE_BINARY_DIR}/window"
    "${CMAKE_SOURCE_DIR}/window/include")

Then from there, I think it'll get into confusion between Ui::Window and Window. It's a bit risky to have the two modules with the same name (the Swift module and the C++ modulemap module are both called Ui). I honestly don't know what to expect with how that gets imported.
Anyway, I think this is enough to get you rolling again. I've done some fairly extensive reworking of how the header generation works so that it actually just wraps the base target and doesn't create a separate target (it doesn't automatically propagate include directories so you'll still hit this, though I think I can update it to handle that too. Not 100% sure if that will fix this specific issue though.).


README typo: add 'will' in the scalabality section

This little thing caught my eye, thought it was worth sharing with you fine folks here.
Alternative phrasing of this could be

This means that adding a worker never harms performance of grabbing jobs from a queue.

Coverage remained the same at 89.613% when pulling c7d54329857b9e00b358fd7c8efec030e5e023e2 on cyprusad:readme-typo into affd35f923529965e00bc0bf7e896a3a6f5b7b09 on fireworq:master.

Thanks!


[General] check if dapp works with node 20.10.0

Cypress is currently working with node 20.10.0
We need to make sure our app could work with node 20.10.0, if not we may need to build a cypress image for our testing propose
Check with current version and with 20.10.0 (no vaya a ser que algo se haya roto en v18) :

[x] Wrap contract
[x] Set trustline
[x] Swap
[x] Add
[x] Remove

Everything works fine!