Install failed   from source

Issue Type
Build/Install
Source
binary
Secretflow Version
main
OS Platform and Distribution
Linux ubuntu 22.04
Python version
python 3.8
Bazel version
bazel 5.1.1
GCC/Compiler version
gcc 11.2
What happend and What you expected to happen.
failed on build fmtlib:cannot create transient scope: DBus error "org.freedesktop.DBus.Error.InvalidArgs": [Process 13 is a kernel thread, refusing.]

details:

(venv) zchain@zchaindev:/opt/mpc/secretflow/secretflow$ python setup.py bdist_wheel
Requirements:  ['numpy>=1.22.0', 'protobuf==3.19.4', 'jax', 'jaxlib', '', 'tensorflow_datasets', 'networkx~=2.8', 'tf2onnx>=1.13.0', '', 'secretflow-rayfed==0.1.0b1', 'tensorflow==2.10.0; platform_machine != "arm64"', 'tensorflow-macos==2.10.0; platform_machine == "arm64" and platform_system == "Darwin"', '', 'pandas', 'pyarrow', 'sparse', 'scikit-learn==1.1.3', '', 'torch==1.10.1', 'torchvision==0.11.2', 'torchmetrics==0.9.2', '', 's3fs==2022.1.0', 'xgboost==1.5.2', 'validator.py==1.3.0', 'tqdm', 'loguru', 'statsmodels==0.13.2', '', 'matplotlib', 'multiprocess', 'cachetools', 'sparse', '', '# for tests', 'psutil', 'coverage', 'unittest-xml-reporting', 'spu==0.3.1b9', 'sf-heu==0.3.2b1']
running bdist_wheel
running build
running build_py
running build_ext
bazel build //secretflow_lib/binding:_lib.so --symlink_prefix=build/temp.linux-x86_64-cpython-38/bazel- --compilation_mode=opt
DEBUG: Rule 'yacl' indicated that a canonical reproducible form can be obtained by modifying arguments shallow_since = "1672280068 +0800"
DEBUG: Repository yacl instantiated at:
  /opt/mpc/secretflow/secretflow/WORKSPACE:5:15: in <toplevel>
Repository rule git_repository defined at:
  /home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/external/bazel_tools/tools/build_defs/repo/git.bzl:199:33: in <toplevel>
INFO: Analyzed target //secretflow_lib/binding:_lib.so (66 packages loaded, 5321 targets configured).
INFO: Found 1 target...
ERROR: /home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/external/com_github_fmtlib_fmt/BUILD.bazel:24:20: Foreign Cc - CMake: Building fmtlib failed: (Exit 46): bash failed: error executing command /bin/bash -c bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/wrapper_build_script.sh

Use --sandbox_debug to see verbose messages from the sandbox
rules_foreign_cc: Build failed!
rules_foreign_cc: Keeping temp build directory and dependencies directory for debug.
rules_foreign_cc: Please note that the directories inside a sandbox are still cleaned unless you specify --sandbox_debug Bazel command line flag.
rules_foreign_cc: Printing build logs:
_____ BEGIN BUILD LOGS _____

Bazel external C/C++ Rules. Building library fmtlib

Environment:______________
BUILD_SCRIPT=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/build_script.sh
EXT_BUILD_ROOT=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow
BUILD_LOG=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/CMake.log
PWD=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow
BUILD_WRAPPER_SCRIPT=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/wrapper_build_script.sh
BAZEL_LINKOPTS=-static-libstdc++:-static-libgcc
TMPDIR=/tmp
EXT_BUILD_DEPS=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.ext_build_deps
BAZEL_LINKLIBS=-l%:libstdc++.a:-l%:libgcc.a
BUILD_TMPDIR=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.build_tmpdir
SHLVL=2
INSTALLDIR=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib
PATH=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow:/opt/mpc/secretflow/secretflow/venv/bin:/home/zchain/miniconda3/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/zchain/.npm-packages:/opt/soft/node-v14.17.5-linux-x64/bin:/home/zchain/bin:/home/zchain/miniconda3/condabin:/home/zchain/miniconda3/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/zchain/.npm-packages:/opt/soft/node-v14.17.5-linux-x64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
_=/usr/bin/env
__________________________
+ cmake -DFMT_TEST=OFF -DCMAKE_TOOLCHAIN_FILE=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.build_tmpdir/crosstool_bazel.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib -DCMAKE_PREFIX_PATH=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.ext_build_deps -DCMAKE_RANLIB= -DCMAKE_MAKE_PROGRAM=ninja -G Ninja /home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/external/com_github_fmtlib_fmt
internal error, please report: running "cmake" failed: cannot create transient scope: DBus error "org.freedesktop.DBus.Error.InvalidArgs": [Process 13 is a kernel thread, refusing.]
_____ END BUILD LOGS _____
rules_foreign_cc: Build wrapper script location: bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/wrapper_build_script.sh
rules_foreign_cc: Build script location: bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/build_script.sh
rules_foreign_cc: Build log location: bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/CMake.log

Target //secretflow_lib/binding:_lib.so failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 32.850s, Critical Path: 0.36s
INFO: 21 processes: 19 internal, 2 linux-sandbox.
FAILED: Build did NOT complete successfully
error: command '/home/zchain/bin/bazel' failed with exit code 1

Reproduction code to reproduce the issue.
Cmake.log :

Bazel external C/C++ Rules. Building library fmtlib

Environment:______________
BUILD_SCRIPT=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/build_script.sh
EXT_BUILD_ROOT=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow
BUILD_LOG=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/CMake.log
PWD=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow
BUILD_WRAPPER_SCRIPT=bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib_foreign_cc/wrapper_build_script.sh
BAZEL_LINKOPTS=-static-libstdc++:-static-libgcc
TMPDIR=/tmp
EXT_BUILD_DEPS=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.ext_build_deps
BAZEL_LINKLIBS=-l%:libstdc++.a:-l%:libgcc.a
BUILD_TMPDIR=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.build_tmpdir
SHLVL=2
INSTALLDIR=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib
PATH=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow:/opt/mpc/secretflow/secretflow/venv/bin:/home/zchain/miniconda3/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/zchain/.npm-packages:/opt/soft/node-v14.17.5-linux-x64/bin:/home/zchain/bin:/home/zchain/miniconda3/condabin:/home/zchain/miniconda3/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/zchain/.npm-packages:/opt/soft/node-v14.17.5-linux-x64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
_=/usr/bin/env
__________________________
+ cmake -DFMT_TEST=OFF -DCMAKE_TOOLCHAIN_FILE=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.build_tmpdir/crosstool_bazel.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib -DCMAKE_PREFIX_PATH=/home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/bazel-out/k8-opt/bin/external/com_github_fmtlib_fmt/fmtlib.ext_build_deps -DCMAKE_RANLIB= -DCMAKE_MAKE_PROGRAM=ninja -G Ninja /home/zchain/.cache/bazel/_bazel_zchain/76c0420fae0a6fdd8f95c3bec2a9dd04/sandbox/linux-sandbox/1/execroot/secretflow/external/com_github_fmtlib_fmt
internal error, please report: running "cmake" failed: cannot create transient scope: DBus error "org.freedesktop.DBus.Error.InvalidArgs": [Process 13 is a kernel thread, refusing.]

Hi @Daihongwei1900
Can you provide cmake version on your build environment?
Thanks

Hi @Daihongwei1900
Can you provide cmake version on your build environment?
Thanks

cmake version 3.25.1

Hi @Daihongwei1900
I tried to reproduce this with an Ubuntu 22.04 docker with no success...
It seems like an issue related to cmake binary, a similar issue can be found here https://github.com/mikefarah/yq/issues/866
Can you try the following steps:

Uninstall cmake 3.25.1 installed on your system
Run apt-get install cmake
Run build again

Thanks

Hi @Daihongwei1900
I tried to reproduce this with an Ubuntu 22.04 docker with no success...
It seems like an issue related to cmake binary, a similar issue can be found here mikefarah/yq#866
Can you try the following steps:

Uninstall cmake 3.25.1 installed on your system
Run apt-get install cmake
Run build again

Thanks

tks， it's resolved.

ubuntu22.04     change the version of cmake =3.22.1


CAMEL-8419 Camel StreamCache does not work with CXF consumer for InOu…

…t messages

Closing UnitOfWork in Interceptor/MessageObserver

Thanks for the PR.
@ffang wonder if you could look at this also with an CXF committer point of view, about those CXF phase stuff the PR does.

Thanks lets get this merged.

Thanks for the PR it has been merged. Do you mind closing this?


Add a session manager and make models json objects

This functionality was previously in JupyterLab but belongs here.

👍


fixed --marker param for storage entity query

Fixes: https://github.com/Azure/azure-cli/issues/6194
This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

View a preview at https://prompt.ws/r/Azure/azure-cli/6210
This is an experimental preview for @microsoft users.


Wired up BookshelfCollectionsRepository to CollectionsService

I've done this separately to the bulk of the changes so that we can release them separately, with the thinking that we might not necessarily want to switch the DB backed storage immediately!

Gave it a lil spin. Works great! There's no good reason to hold off the merge for this as we are nearing an alpha version and should be working with close to real world state.


Using personal access token

I am using the personal access token authentication method. However, I can't seem to get it to work. Here is my ok-to-test.yml. What lines should be commented out in order to make it work for the personal access token? Thanks.

Here is my test pull request. Nothing happens after the /ok-to-test command

Hi @giswqs, thanks for the question. Using a PAT is just fine.
 In my example workflow (and yours), sha is required to prevent a race condition security flaw. Theoretically someone could sneak in a malicious commit just after an admin types /ok-to-test – if that's not a concern to you, feel free to leave this section out.
See example usage for more: /ok-to-test sha=<head-sha>.

@imjohnbo I can't get /ok-to-test sha=<head-sha> to work. Could you please take a look at this pull request and advise? Thanks.

Hi @giswqs. Looks like this successful check run came from you typing /ok-to-test sha=33684eb. I take that to mean your ok-to-test and integration.yml workflows are wired up correctly. ✅
But you have a separate workflow, build, that is also triggered on pull_request. I might insert the contents of that workflow here in order to allow pull requests coming from forks to access secrets like your EARTHENGINE_TOKEN.
Going to close since the ok-to-test part seems to be working.


chore: Updating UI for the left panel on Admin settings page by adding separators

Description

Updating UI for the left panel on Admin settings page by adding separators. This improved user experience.

Fixes #18896
Type of change

Refactor

How Has This Been Tested?

Tested the UI locally.

Manual

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=06cd0c7

/ok-to-test sha=434e7f2

/ok-to-test sha=434e7f2

/ok-to-test sha=434e7f2

/ok-to-test sha=de69b00

/ok-to-test sha=de69b00


OpenXR incompatible with godot 4.2.2

Tested versions
Reproducible in 4.2.2stable, set-up a sample openXR scene with the script initializer and try running the application using the Quest 2 either over steamlink or airlink, the application runs and immediately closes, windows event viewer states the following error:
Application name with error: Godot_v4.2.2-stable_win64.exe, version: [<IP_ADDRESS>](http://<IP_ADDRESS>/), timestamp: 0x00000000
Module name with error: XR_APILAYER_NOVENDOR_toolkit.dll, version: [<IP_ADDRESS>](http://<IP_ADDRESS>/), timestamp: 0x636845e3
Exception code: 0xc0000005
Error offset: 0x00000000000c4c4f
Process ID with error: 0x0x4EB0
Application start time with error: 0x0x1DACFAD32003B0D
Path of the application with error: F:\Godot\Godot_v4.2.2-stable_win64.exe
Path of the module with error: C:\Program Files\OpenXR-Toolkit\XR_APILAYER_NOVENDOR_toolkit.dll
Report ID: c5017bcc-1625-49b3-bbff-bcd592a6ecd2
Full package name with error:
Application ID related to the package with error:

System information
Windows 11 - Godot 4.2.2 stable - Quest 2 AirLink/SteamLink - RTX3060
Issue description
OpenXR scene should play without closing immediately, but it is closing as soon as it detects the headset, with no console errors, only error can be seen is on the System's Logs accusing the follwing:
Application name with error: Godot_v4.2.2-stable_win64.exe, version: [<IP_ADDRESS>](http://<IP_ADDRESS>/), timestamp: 0x00000000
Module name with error: XR_APILAYER_NOVENDOR_toolkit.dll, version: [<IP_ADDRESS>](http://<IP_ADDRESS>/), timestamp: 0x636845e3
Exception code: 0xc0000005
Error offset: 0x00000000000c4c4f
Process ID with error: 0x0x4EB0
Application start time with error: 0x0x1DACFAD32003B0D
Path of the application with error: F:\Godot\Godot_v4.2.2-stable_win64.exe
Path of the module with error: C:\Program Files\OpenXR-Toolkit\XR_APILAYER_NOVENDOR_toolkit.dll
Report ID: c5017bcc-1625-49b3-bbff-bcd592a6ecd2
Full package name with error:
Application ID related to the package with error:

Steps to reproduce
Open an XR demo scene, or create a sample XR player with XROrigin, XRCamera and XRControllers, and apply the XR Initializer script to the root node and try running the scene with Quest 2 over Airlink or SteamLink.
Minimal reproduction project (MRP)
XR Origin Centric Movement template can be used to test it, on godot 4.2.2

Problem was in my installed OPENXR-TOOLKIT, updating it seemed to fix the issue.


re-adding Ubuntu install

NOTE: Please read the CONTRIBUTING.md guidelines before submitting your patch,
and ensure you followed them all:
https://github.com/Kong/getkong.org/blob/master/CONTRIBUTING.md
Summary
Saw that Ubuntu was missing from right-hand install menu
Full changelog

ported 0.31.x info into 0.32

Issues resolved
missing install doc

Checklist:

[/] Commit message & atomicity checked
[/] Documentation
[/] Spellchecked my updates. Plus I rarely mis-spell
[/] Ready to be merged

thanks for the thoughtful input

Does 0.31 need ubuntu instuctions as well?


Fix ajax upload progress event is not set correctly

Description:
progress event should be set before xhr.open,
see: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

Coverage increased (+0.02%) to 97.689% when pulling 95b30267ae143e0cf6f559b4e22d494dfc81909a on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

Coverage increased (+0.02%) to 97.689% when pulling a2d1ff2d5fdf0843245656624e11ca167ab2f530 on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

Coverage increased (+0.0007%) to 97.674% when pulling 9bc37772a71ec34b2cb5aef9f3f910b1177ee58f on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

Coverage decreased (-0.09%) to 97.584% when pulling af6f8b957f217fcd959fb8e874e73a2b0729f21c on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

Coverage increased (+0.02%) to 97.69% when pulling a7e9c3a412d4dee745bbe21a01c243fe58ddedd5 on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

Coverage increased (+0.02%) to 97.69% when pulling 8201e7616e8beb9d5d86834047a9f59e5ea9e9d5 on Brooooooklyn:issue/ajax-upload-progress into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:master.

will this commit be landed in next version? I'm working on a fileUploader using RxJS, and I will be happy if this commit available before the end of November.

if this commit available before the end of November

uh..since it's already nearby x-mas it missed train already? :)
If it's Dec. You mean, it depends on @blesh but may npt be available due to holiday season.

LGTM


Support old OP_1 - OP_9 behaviour in tagselect and filterselect forms

Fixes #939.
Related to #958.

Coverage decreased (-0.04%) to 56.295% when pulling d279c77741de77dd0b25807b777b96b17e8d9f20 on dennisschagt:bugfix/issue-939 into f9da3abe4d693ec7cc22c9e04ecd1d749514445d on newsboat:master.

Thanks for the review, done


mesh from shape primitives

Description
In support of https://github.com/moveit/moveit/issues/3674, I've added functionality to the mesh_filter to create links from primitive shapes, not just from meshes.
Checklist

[x] Required by CI: Code is auto formatted using clang-format
[x] Extend the tutorials / documentation reference
[ ] Document API changes relevant to the user in the MIGRATION.md notes
[ ] Create tests, which fail without this PR reference
[ ] Include a screenshot if changing a GUI
[ ] While waiting for someone to review your request, please help review another open pull request to support the maintainers

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 0% with 17 lines in your changes missing coverage. Please review.

Project coverage is 47.83%. Comparing base (6754954) to head (a4fcc94).

Files with missing lines
Patch %
Lines

...tion/mesh_filter/src/depth_self_filter_nodelet.cpp
0.00%
17 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3675      +/-   ##
==========================================
- Coverage   47.83%   47.83%   -0.00%
==========================================
  Files         604      604
  Lines       61018    61035      +17
  Branches     7018     7018
==========================================
+ Hits        29183    29189       +6
- Misses      31417    31428      +11
  Partials      418      418

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

I'm happy to finish working on the MR but I have abandoned the mesh_filter function because even using mesh files for all the links, the results are not accurate enough to actually use:
Here's mesh_filter:

realtime_urdf_filter:


fix: change const to let

Change reason:
I'm not sure this is right, if I'm wrong, please let me know. Thanks!
I think parserForArrayFormat() is a higher order function, it returns a new function, which makes a closure.
and In this returned function, the parameter accumulator was modified directly.
(key, value, accumulator) => {
  if (accumulator[key] === undefined) {
    accumulator[key] = value;
    return;
  }

  accumulator[key] = [].concat(accumulator[key], value);
};

So I think when we call formatter(decode(key, options), value, ret)(the returned function), actually our parameter ret has been modified directly. So I think in this situation we should use let not const.
If I am understanding correctly, there are a few similarly situation in the code, maybe I can help to change it.

const in JS only protects about reassignment, not mutability.


Shadow on mobile

The pie chart shadow on mobile is rendering much different than on desktop. If possible, I would like to disable the shadow on mobile.

I think this is a browser problem. Chart.js does not use shadowBlur, shadowColor, shadowOffsetX, or shadowOffsetY


CentOS-7.X fix

when installing on clean CentOS-7.x, I encountered the following:
rpm -i ./jmxtrans/target/rpm/jmxtrans/RPMS/noarch/jmxtrans-251-SNAPSHOT20150901110714.noarch.rpm
/var/tmp/rpm-tmp.OICFi5: line 4: lsb_release: command not found
/var/tmp/rpm-tmp.OICFi5: line 5: [: -gt: unary operator expected
so, I suggest to add lsb_release as requirement

This pull request is now managed with CodeReviewHub. Refresh.

Thanks for the help !


[Refactor] Use promises in 'SourceCodeModule'

cc @dmmiller

Nice! I'll let @dmmiller review.

@facebook-github-bot shipit


UPDATE_ROLLBACK_FAILED state and can not be updated.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
No response
Amplify CLI Version
12.10.1
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No
Describe the bug
I am not being able to deploy my project through CLI anymore.
when I try to deploy it now I get the following:
Stack:arn:aws:cloudformation:us-east-1:533267446078:stack/amplify-myapp-prod-54752/a3eccb60-bbba-11ee-9615-0a268650abe7 is in UPDATE_ROLLBACK_FAILED state and can not be updated.
Expected behavior
To push it properly.
Reproduction steps
I am not quite sure how I got to this state thou.
However, the only thing I was fixing was that I had a custom Mutation pointing to the wrong lambda function
type Mutation {
  generateCaptcha(input: GennerateCaptchaInput): GenerateCaptchaResult
    @function(name: "GetCaptcha-${env}")
    @auth(rules: [{ allow: private, provider: iam }])
}

The following was wrong, since the lambda function was called GenerateCaptcha
@function(name: "GetCaptcha-${env}")
When I tried to fix it with the correct name, everything stop working.
Now, it's hard to pinpoint that this was the problem, I got issues with "legacy" lamda layer references in my project, which caused issues too, not sure how this happens.
anyways, hard to pinpoint to something.
I am interested in how I can fix it. I have literally restarted my project and recreated EVERYTHING 3 times during my development due issues. I dont really want to do it again.
Project Identifier
No response
Log output

# Put your logs below this line

Additional information
No response
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

Looking at the stack I found this..
Embedded stack arn:aws:cloudformation:us-east-1:533267446078:stack/amplify-myapp-prod-54752-apiGraphQLAPI-44SP06RETH3B/07ba2540-c1c2-11ee-8d28-0a6786933c53 was not successfully updated. Currently in UPDATE_ROLLBACK_FAILED with reason: The following resource(s) failed to update: [FunctionDirectiveStack].

So to recap
i managed to deploy the wrong version
  generateCaptcha(input: GennerateCaptchaInput): GenerateCaptchaResult
    @function(name: "GetCaptcha-${env}")
    @auth(rules: [{ allow: private, provider: iam }])

Then i tried to fix the function name

  generateCaptcha(input: GennerateCaptchaInput): GenerateCaptchaResult
    @function(name: "GenerateCaptcha-${env}")
    @auth(rules: [{ allow: private, provider: iam }])

and that's when i started getting this issue.

Hey,👋 thanks for raising this! I'm going to transfer this over to our API repository for better assistance 🙂


Help with 2D Topology

@rhyolight Hello Matt,
sorry for reaching for you this way, I couldn't get in touch on Gitter..
Could you please help me with 2D spatial pooler in C++? Similar as you've been using in the topology episodes here.
Say I have input board 100x100, and SP 32x32, I want to select some input positions ({{99,0}, {0,0}, {0,99}}) and then let the SP compute. I know how to make a 2D SP:
SpatialPooler sp{vector<int>{100, 100} /*input dims*/, vector<int>{32, 32} /*cols*/,...};

But I don't know how to format the input 1D vector for compute(), it should be a dense, binary 1d vector, but I don't know how the 2d is translated to 1d here.
Thank you very much!

I think you still send it a 1d array, and because it knows the dimensions it will interpolate in with topology. For example, here is the raw data I sent to the SP to encode:
https://github.com/htm-community/htm-school-viz/blob/master/static/data/gifData/bird.json

Thank you very much Matt!! You are a life-saver :)
My problem was how to "flatten" the data, and from the image you linked I was able to reconstruct it. So it seems that
[a, b
c, d]
=> [a,b,c,d]

PS: the gitter seems dead? Where do you guys hang out now?
https://gitter.im/numenta/public

I hang out on HTM Forum. That is the best place to get answers. I respond there quicker than anywhere else.


I fix the conflicts between this branch

I fix the conflicts between this branch  and the main branch. Sir @solomonmarvel97  please review and merge, thanks

You have merge conflicts. Please resolve them.

You have to pull the repo first before adding your own code. After which you can make a new pull request. I will close the pull request for now. Please resolve the conflicts


Webhooks, keys and buttons are not aligned

WebHook，密钥和按钮没有对齐

https://github.com/masastack/MASA.Alert/pull/262


[Backport-1.x] Upgrading netty version to 4.1.69.Final (#1363)

Signed-off-by: Vacha<EMAIL_ADDRESS>Description
Backport of #1363
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

start gradle check


Improve Docker.

Updated to use Debian Jessie base image.
Less intermediate containers.
Uses supervisor to start process.
Fix #1717, #1708 and probably #1313.

Could you please re-PR to the develop branch?

Yes, of course ;)


need to trim creator's name folder

Hello.
First of all, thanks for the amazing software!
I found this bug on Windows using this command:
PatreonDownloader.App.exe --url https://www.patreon.com/user/posts?u=9011118

Than application tries to write content to the default folder download\<user_name>. But in this case the <user_name> contains a trailing space and looks like this "ducky 3d ". Looks like Windows doesn't like trailing spaces in a path. So it couldn't write files to the default folder.
Yes, I fixed that using "--download-directory"

Hi. Thank for for your kind words.
Please try using release <IP_ADDRESS> and let me know if it fixes this issue.

I've just tested! All good!

Great, thanks!


Edit splash page copy

There are a few tweaks that didn't make it to the splash page:
It currently says:

A living toolkit for designing with remote collaborators.

It should say:

A living toolkit for designing with distributed collaborators.

Fixed!

👍


PHOENIX-4841 - Handle Mixed Type SortOrder In RVCs by modifying the C…

…omparison.
https://issues.apache.org/jira/browse/PHOENIX-4841

Screwed up the rebase by accident, will make a new PR.


build_id creates IDs that are extremely hard to use with selenium

The current dynamic id implementation is fantastic, but is very hard to use with the selenium selectors used in dash.testing.
In "normal" dash, we expect component ids to be str values which are directly mapped to a component id.
This allows you to use dash_duo.driver.find_element_by_id to select page element corresponding to dash components.
However, the dynamic ids created by build_id are dictionaries which are string-serialized into component ids.
I believe occurs in the dash frontend at: https://github.com/plotly/dash/blob/7afb2edbccff0af98f87df083dd6fbedece10463/dash/dash-renderer/src/actions/dependencies.js#L114-L123
This means that:
a) The css component ID, for use in selectors, isn't easily derived from the python component's .id property as it depends on the dict's serialization format.
b) The serialized dict requires CSS identifier escaping to be used in selenium selectors.
This breaks the existing dash_duo.driver.find_element_by_id and dash_duo.wait_for_element_by_id interfaces.
Neither of these are insurmountable, but it would be preferable if there was a "simple" way of accessing the "css-selector-id" of the component id.
Potential options could include:
a) Returning a canonical string id from build_id.
b) Implementing an equivalent to the existing stringifyID function in python, so that it can be applied to python identifiers.
Either case will require CSS selector escaping for any special characters, which could be handled via soupsieve.escape.

+1. We have faced the same issue (https://github.com/plotly/dash/issues/1625). It turned out that for a) a public Python serialization function already exists, though not at the top package level (and undocumented as well, so I guess as close to private function as it gets without _ prepended).
Regarding b) I didn't know about soupsieve :+1: In our Dash based project we currently use these lines. Ideally I guess selenium itself should support CSS escaping strings, I was a bit surprised I couldn't find a utility function there (maybe worth a PR towards selenium as well :thinking:).
In my view I think dash.testing also supporting something like this would be nice + easy (and not too magical since we are in dash ID context): https://github.com/plotly/dash/pull/1637#discussion_r628930562


Pretraining codes

Hi Siqi,
Thanks for releasing the great code.
I cannot find the pretraining code in this repository about the implement of the in-batch negative examples? Could you point out  it?
And it seems there is no 'masked_lm_distill_crd' in the criterions?
Thanks!
Best,
Deming

HI, Deming, did you find the implement of the negative examples in the pre-training?
thanks


UI change

switched to Bulma
changed font to Poppins (still via Google Fonts)
added new ui elements and spinner animations
hopefully caught every element and replaced with Bulma classes
added the local Razor Live Reload dependancies  to the project file (very handy)

I am honest and have to say that I can't really follow anymore how the app is structured and why some pages are Vue constants, some are new Vue.apps and the records page is razor only (it's not worth to start from the ground up though). We also are lacking the setup to build the Vue components so they run in dev mode everytime. (For the things they are currently doing, there is no actual performance issue with that compared to enterprise applications.)
For now the app is working fine, I don't think we need to change anything ever for the sole reason of displaying data.

@siimav , should now all be finished hopefully.
mobile rudimentarily works, though I doubt not that many people will actually access it.
You can merge if there arent more issues / feature requests.


NuxtLink inactive-class attribute

Is your feature request related to a problem? Please describe.
See issue:
#7662
Describe the solution you'd like
I'd like NuxtLink to have an inactive-class attribute, it works as the opposite to the active-class attribute.
Why?
When using Tailwind CSS I usually split up my styling into multiple parts:

baseClasses (fundamental) (flex, padding, etc.)
activeClasses (selected or active links/navigation items) (text-primary, etc.)
inactiveClasses (not selected or inactive links/navigation items) (text-gray-500, etc.)

Describe alternatives you've considered
Merging my baseClasses with inactiveClasses but it ends up in a long string and sometimes the activeClasses don't overwrite the baseClasses.
Additional context
None.

I was talking about vue-router issues: https://github.com/vuejs/vue-router/issues/2648
Note you can achieve this custom behavior by creating custom NuxtLink component with the v-slot api that adds new props like inactiveClass

We are approaching the Nuxt 2 EOL date (June 30, 2024) - see this article for more information. I'm closing this issue as it's marked as a Nuxt 2 related enhancement and it's not a critical issue.
That doesn't mean it might not be relevant for Nuxt 3. If it is, please feel free to open a new issue (or just comment, and I can reopen it). 🙏
Thank you for your understanding and for your contribution to Nuxt! 🎉


ch2: Add project for SmartSearch

Adds a .csproj for SmartSearch and includes it in the .sln.
Removes readme.txt now that the instructions are no longer needed.
Renames SmartDDictionary to SmartDictionary.
Outputs hints to the user when running the SmartSearch console application to:

Make it clear that input is required.
Show that y can be used to exit the program.

Never mind, I just saw that this has already been handled in #2.


Parser does not like remote URL path with curly braces

Not sure if this is an issue with this project or not. I am a novice. My API reads just fine for remote URL paths that do not have curly braces in them, however this occurs when they do. Apologies for the oversimplification, but this is all I can come up with:
java.io.IOException: Server returned HTTP response code: 500 for URL: http://localhost:8080/Walletron/api/api-docs/ver1/brands/{brand}/templates
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1626)
at io.swagger.parser.util.RemoteUrl.urlToString(RemoteUrl.java:46)
at io.swagger.parser.SwaggerCompatConverter.readDeclaration(SwaggerCompatConverter.java:367)
at io.swagger.parser.SwaggerCompatConverter.read(SwaggerCompatConverter.java:104)
at io.swagger.parser.SwaggerParser.read(SwaggerParser.java:34)
at io.swagger.parser.SwaggerParser.read(SwaggerParser.java:14)
at io.github.robwin.swagger2markup.Swagger2MarkupConverter$Builder.(Swagger2MarkupConverter.java:88)
at io.github.robwin.swagger2markup.Swagger2MarkupConverter.from(Swagger2MarkupConverter.java:49)
at io.github.robwin.swagger2markup.Swagger2MarkupConverterTest.testSwagger2AsciiDocConverter(Swagger2MarkupConverterTest.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
...
This repeats again and again for similar URLs, but the markdown is produced nicely for those paths without a parameter.

You can try reading my Swagger JSON here: http://qa.walletron.com/api/api-docs
Thanks and great project!
-Garrett

Hello,
the exceptions is thrown in the official SwaggerParser. But why does the server return a 500 HTTP Code? This does not seem to be a problem of the Parser, but of the server code?
Kind regards,
Robert

The server is expecting the encoded URL, in this case: http://localhost:8080/Walletron/api/api-docs/ver1/brands/{brand}/templates  That works just fine and it appears browsers like Chrome  and cUrl utilities like Postman do this automatically. I am able however to reproduce the error on a straight curl from the command line.
Is there a config setting I'm missing to get swagger to encode this? Sorry to waste your time. :(

Could you please address this issue in https://github.com/swagger-api/swagger-parser

In my demo it works with Brackets
{"apiVersion":"1.0","swaggerVersion":"1.2","basePath":"/","resourcePath":"/quotas","produces":["*/*"],"consumes":["application/json"],"apis":[{"path":"/quotas","description":"createMailStorageQuota","operations":[{"method":"PUT","summary":"Create a quota.","notes":"Create a quota allows bla bla bla bla","nickname":"createMailStorageQuota","produces":["*/*"],"consumes":["application/json"],"parameters":[{"allowMultiple":false,"defaultValue":"","description":"MailStorageQuota","name":"body","paramType":"body","type":"MailStorageQuota","required":true}],"responseMessages":[{"code":201,"message":"Created"},{"code":204,"message":null},{"code":401,"message":"Unauthorized"},{"code":403,"message":"Forbidden"},{"code":404,"message":"Not Found"}],"deprecated":"false","type":"void"}]},{"path":"/quotas/{quotaId}","description":"getMailStorageQuota","operations":[{"method":"GET","summary":"Get a quotas.","notes":"Get a quota allows bla bla bla bla","nickname":"getMailStorageQuota","produces":["*/*"],"consumes":["application/json"],"parameters":[{"allowMultiple":false,"defaultValue":"","description":"quotaId","name":"quotaId","paramType":"path","type":"string","required":true}],"responseMessages":[{"code":200,"message":"OK","responseModel":"MailStorageQuotaResponse"},{"code":401,"message":"Unauthorized"},{"code":403,"message":"Forbidden"},{"code":404,"message":"Not Found"}],"deprecated":"false","type":"MailStorageQuotaResponse"}]},{"path":"/quotas/{quotaId}","description":"deleteMailStorageQuota","operations":[{"method":"DELETE","summary":"Delete a quota.","notes":"Delete a quotas allows bla bla bla bla","nickname":"deleteMailStorageQuota","produces":["*/*"],"consumes":["application/json"],"parameters":[{"allowMultiple":false,"defaultValue":"","description":"quotaId","name":"quotaId","paramType":"path","type":"string","required":true}],"responseMessages":[{"code":204,"message":"No Content"},{"code":401,"message":"Unauthorized"},{"code":403,"message":"Forbidden"}],"deprecated":"false","type":"void"}]},{"path":"/quotas/{quotaId}","description":"updateMailStorageQuota","operations":[{"method":"POST","summary":"Update a quota.","notes":"Update a quota allows bla bla bla bla","nickname":"updateMailStorageQuota","produces":["*/*"],"consumes":["application/json"],"parameters":[{"allowMultiple":false,"defaultValue":"","description":"quotaId","name":"quotaId","paramType":"path","type":"string","required":true},{"allowMultiple":false,"defaultValue":"","description":"MailStorageQuota","name":"body","paramType":"body","type":"MailStorageQuota","required":true}],"responseMessages":[{"code":201,"message":"Created"},{"code":204,"message":null},{"code":401,"message":"Unauthorized"},{"code":403,"message":"Forbidden"},{"code":404,"message":"Not Found"}],"deprecated":"false","type":"void"}]}],"models":{"MailStorageQuota":{"description":"","id":"MailStorageQuota","properties":{"mailStorageQuotaValue":{"enum":["3","14","30","90","-1"],"required":false,"type":"string"},"quotaValueType":{"enum":["DEFAULT","CUSTOM"],"required":false,"type":"string"}}},"Void":{"description":"","id":"Void","properties":{}},"MailStorageQuotaResponse":{"description":"","id":"MailStorageQuotaResponse","properties":{"mailStorageQuota":{"required":false,"type":"MailStorageQuota"}}}}}

Hmm, I'm using Jersey - here's an example:
There are the problematic curly braces in the middle of the Path...
@Path("ver1/brands/{brand}/templates")
@Api(value = "ver1/brands/{brand}/templates", description = "Communication Template Management")
@RequestScoped
public class TemplateRestApi {
@GET
@ApiOperation(value = "List existing communication templates", response = Template.class, responseContainer = "List")
@ApiResponses(value = {
    @ApiResponse(code = 500, message = "Exception"),
    @ApiResponse(code = 404, message = "Not authorized")
})
@Produces(MediaType.APPLICATION_JSON)
public Response getTemplatesByBrand(

}

Looks like Swagger Parser MAY have addressed this in 1.0.1 but I'm not sure.

Can't you do
@Path("ver1/brands/{brand}")
@Api(value = "ver1/brands/{brand}/templates", description = "Communication Template Management")
@RequestScoped
public class TemplateRestApi {

@GET("/templates")
@ApiOperation(value = "List existing communication templates", response = Template.class, responseContainer = "List")
@ApiResponses(value = {
    @ApiResponse(code = 500, message = "Exception"),
    @ApiResponse(code = 404, message = "Not authorized")
})
@Produces(MediaType.APPLICATION_JSON)
public Response getTemplatesByBrand(

}

Unfortunately, Jersey doesn't like the duplicates that creates. I have several classes based on this "brand" entity. Here's an update over on the parser project that I believe will solve this problem: https://github.com/swagger-api/swagger-parser/pull/32
Thanks for your attention on this!

You are welcome.
Feel free to give me your star ;-)


Add lmu.txt to ng/edu

Landmark University (http://lmu.edu.ng) is a Faith-based University situated in Kwara State, Nigeria. Our Vision and Goals are highlighted on http://lmu.edu.ng/about-lmu/vision-and-mission.
Our list of degree programmes, which ranges from 4-5 years can be found on http://admission.lmu.edu.ng/degree-programmes/

@opmat Pull request merged, thank you!

Thank you


function videocapture is removed from skvideo

hello,
thank you for sharing your code but unfortunately in an attempt to run your model on one test video file i get this error :"Function videocapture is removed from skvideo package" it seems like in skvideo latest updates this function is removed and when i tried to fix it by using opencv's videocapture i could pass the preprocess stage but some errors indicating wrong count of inputs where raised inside the model(which i believe it is occurred within chainer.variable inside audiovisualstream file) and it made me suspect that my conversion to opencv package has caused this problem in inputs.
I would appreciate if you would kindly guide me how to update your code to make it compatible with opencv.

Hi  SanaRahmani ,
I tried to use cv2 instead of skvideo by changing code of load_video function in util.py to
    videoCapture = cv2.VideoCapture(data)      videoCapture.isOpened()
I couldn't pass the preprocessing ,please help
-Thanks

Hi SanaRahmani ,
you can use the forked https://github.com/Samir55/deep_impression ,its working perfectly


High Severity Vulnerability on  node-forge-0.10.0.tgz (Vulnerable Library)

JavaScript implementations of network transports, cryptography, ciphers, PKI, message digests, and various utilities.
Library home page: https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz
Path to dependency file: /package.json
Path to vulnerable library: /node_modules/google-p12-pem/node_modules/node-forge/package.json
Dependency Hierarchy:
firebase-admin-10.0.2.tgz (Root Library)
storage-5.3.0.tgz
gcs-resumable-upload-3.1.1.tgz
google-auth-library-6.1.2.tgz
gtoken-5.0.4.tgz
google-p12-pem-3.0.3.tgz
❌ node-forge-0.10.0.tgz (Vulnerable Library)

Admin SDK v10.0.2 is on "node-forge": "^1.0.0" https://github.com/firebase/firebase-admin-node/blob/5b0a49ba0dbc22dc7ef8a5646d028f1b55b3e9bc/package.json#L168
What you see could have been a cached version in your development environment or pulled by a different package. You should also be able to just update node-forge manually in you environment. Thanks!

node-forge has a transient dependency on firebase-admin-10.0.2.tgz (Root Library) as shown in the description. I can't manually update it. For me, even after updating to 10.0.2 the node-forge version stays at 0.10.0. How do I make this work?

Please see my answer on https://github.com/firebase/firebase-admin-node/issues/1634


Profile validation fails even when constraint is satisfied

User Driven: https://discord.com/channels/905144809105260605/1194887284537954304/1194887284537954304
Repro

Upload the following Structure definition to your project: test.fhir.json

Try to save the following encounter: test-encounter.json

Actual Behavior
Receive the following error:

Expected Behavior
The Encounter has a valid identifier that satisfies the constraint, so we would expect to pass

@mattwiller  - My first instinct would be to test the identifier.where(a = 'x' and b = 'y') syntax in the fhirpath project directly

Putting together a fix now.  There is one issue in our schema validator, and I think perhaps one issue with the user's StructureDefinition.
First, in our schema validator, we're not currently validating "root" constraints (i.e., at the top level, on the Encounter element definition).  So if you add a root constraint such as "identifier.where(system='http://example.com' and value='123').exists()", it would be ignored.
So, I assume the user may have tried to put that constraint on the Encounter.identifier element.  In that case, the constraint expression should omit "identifier", and simply be "where(system='http://example.com' and value='123').exists()", because the context value is the identifier array, not the Encounter.


Mocking DurableOrchestrationContextBaseis deprecated

The sample for "Unit testing orchestrator functions" mocks DurableOrchestrationContextBase.
That is deprecated. It should instead mock IDurableOrchestrationContext
var durableOrchestrationContextMock = new Mock<DurableOrchestrationContextBase>();

should be changed to
var durableOrchestrationContextMock = new Mock<IDurableOrchestrationContext>();

The full sample code following the line "After combining all steps, the unit test will have the following code:" just prior to the "Unit testing activity functions" section does mock IDurableOrchestrationContext

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

ID: e55b7998-54f1-77f1-4e1b-4ef01a5daccc
Version Independent ID: f7469430-00f8-0e03-de7d-e3b382fac427
Content: Azure Durable Functions unit testing
Content Source: articles/azure-functions/durable/durable-functions-unit-testing.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

Hello @rwatjen,  Thank you for your feedback! We will review and update as appropriate.


Migrate to 3.6

@priyankarani build is failing. Also nereid freezes flask-login dependency in 3.4, should be unfreezed in this version

@prakashpp build will pass once email-queue is released.

LGTM


TPR: change group and version

Change group to “etcd.coreos.com”; change version to “v1beta1”.
We made this change because it’s impossible to have multiple versions
in one group

@xiang90 Please take a look
cc @yifan-gu @aaronlevy @philips

fixed

LGTM


Update non-relational-data.md

Fixes https://github.com/MicrosoftDocs/architecture-center/issues/2050

@absheik : Thanks for your contribution! The author(s) have been notified to review your proposed change. @zoinerTejada

@absheik : Thanks for your contribution! The author(s) have been notified to review your proposed change. @zoinerTejada

Hi @absheik -- Product team PMs and content developers should work in the private repositories as described in Should I work in a private or a public repo?
In the private repos, your content gets the benefit of quality validation, and you can verify it on staging before publishing. Some PRs that have fewer updates might qualify for auto-merge.
(If you want a member of the content team to review your updates in the private repo before merging, you can request a review or at-mention them in a comment before you sign off. See GitHub for content reviews.)
Note that the syntax for the new link has a typo (delete the extra ending bracket).
Would you create a pull request in the private repo to make these updates? We'll close this PR. Thank you!


Make renaming types easier and less error prone

 Issue by slorber
Friday Jul 28, 2017 at 15:58 GMT
Originally opened as https://github.com/graphcool/ui-feedback/issues/74

If I simply change the name of a type by another name:

references to that type are not automatically updated in the schema (not a big deal)
when saving, it does not rename the type but deletes the previous one and creates a new one (very big deal for existing data)
when saving, the relations on the renamed fields are removed (at least if I don't rename them?)

This is very problematic because there's not any undo/restore function in the schema editor, so you can basically can destroy your schema/production in a few legit action clicks

 Comment by marktani
Friday Jul 28, 2017 at 16:05 GMT

Hey, this sounds unexpected and should not happen. Can you please provide a "before",
"intermediate" and "after" version of your schema?
Before: the schema before you renamed the type
Intermediate: after renaming the type, but before applying changes
After: after changes were applied
It would be very helpful to keep this example as small as possible 🙂

 Comment by marktani
Friday Jul 28, 2017 at 16:11 GMT

Note that I noticed in your doc the ability to use @rename annotation on types too. So it's probably me not editing the schema correctly.

That's correct, you need to use @rename in this case. Note that there is a warning

The type TopicAnswer is removed. This also removes all its fields and relations.

But I can see that this is easily missed. How else can we warn you from this? Adding the @rename directive automatically is a great idea for starters.

 Comment by slorber
Friday Jul 28, 2017 at 16:09 GMT

Before:
type Answer implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  answerType: AnwserType!
  user: User @relation(name: "UserAnswer")
  topicAnswers: [TopicAnswer]! @relation(name: "TopicAnswers")
}

type TopicAnswer implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  content: String!
  important: Boolean!
  answer: Answer @relation(name: "TopicAnswers")
}

After edit:
type Answer implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  answerType: AnwserType!
  user: User @relation(name: "UserAnswer")
  topicAnswers: [TopicAnswer2!]! @relation(name: "TopicAnswers")
}

type TopicAnswer2 implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  content: String!
  important: Boolean!
  answer: Answer @relation(name: "TopicAnswers")
}

Pending changes:

After Apply:
type Answer implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  answerType: AnwserType!
  user: User @relation(name: "UserAnswer")
}

type TopicAnswer2 implements Node {
  id: ID! @isUnique
  createdAt: DateTime!
  updatedAt: DateTime!
  content: String!
  important: Boolean!
}

Note that I noticed in your doc the ability to use @rename annotation on types too. So it's probably me not editing the schema correctly. Yet if you automatically put @rename annotations directly for fields, you should do that on types too to be consistant, otherwise user will think it's not required and do like me and messup his schema.

 Comment by slorber
Friday Jul 28, 2017 at 16:13 GMT

Yes, adding the annotation would definitively help. Otherwise put a big warning on first keystroke while modifying the type name.
Field renaming is easy, so type renaming is expected to be the same for me.

 Comment by marktani
Friday Jul 28, 2017 at 16:14 GMT

Yes that makes a lot of sense. Thank you so much for all the feedback you already provided, that helps a lot 🙏


Special characters not rendering properly

CustomMainMenu does not render UTF-8 special charaters like æøåö and so on properly, when used in splash.txt and loaded through Resource Loader. I am saving it as UTF-8

Saving it in ANSI works for me. Does it fix it for you?

That works. Thank you so much. You should probably add this to the Curse pages ;-)


🚀 Feature: DOCKER_BUILDKIT=1 kaniko, buildahm buildkit

🔖 Feature description
For running backstage in containers you need configure DOCKER_BUILDKIT=1 and compile the container.
🎤 Context
Today! Kubernetes is running with containerd and the new compile tools are: kaniko, buildah, buildkit.
✌ Possible Implementation
No response
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
None

Could you provide some more information? It's not quite clear what you're asking for at this point

Is it possible to build a container using Buildkit, Kaniko, or Buildah for backstage, considering that I don't have the option to use DOCKER_BUILDKIT=1 without Docker?


makefile: fix kubectl and cilium check for make dev-doctor

An error occurs when running make dev-doctor for kubectl and cilium due to improper argument handling.
Before PR:
$ make dev-doctor
[...]
failed    kubectl         exit status 1
failed    cilium          exit status 1
[...]
$ echo $?
2

After PR:
$ make dev-doctor
[...]
ok        kubectl         found /opt/homebrew/bin/kubectl, version 1.28.3
ok        cilium          found /usr/local/bin/cilium, version 0.15.11
[...]
$ echo $?
0

duplicated of https://github.com/cilium/cilium/pull/28801


Chat Flow need to implement

Chat Feature Need to implement & follow new Design.
https://xd.adobe.com/view/81a8ea3a-75a9-4eb8-9da7-b5a41d617d7a-d4fb/screen/65a99322-0199-4720-b831-b8ec04e1e385/specs/
Users can send Sat directly to F&F contact.
Need to follow Best practices for UI

the old design of hexa is not required


Remove outdate 3d graphic

Feature or change description
We can remove this 3d graphic from the portal, since it is no longer used on the Hemi website come mainnet.
Problem or use case addressed

Proposed implementation
@dvnahuel can you please mock up something super simple, even just the removal of the visual, no other visual needed, for @gndelia to adjust the design with?

New designs here
Assets file:

Screenshot for reference:

cc: @gndelia


Show full pathname for selected files in provenance

When looking at the selected files it is hard to tell where they were selected from because only the name and not the path are displayed.

Fix.ed.


Table 1.0 + fixes and improvements to  coerce

Minor release as compat bump is breaking.
closes #7 and #9

Codecov Report

Merging #10 into master will decrease coverage by 2.5%.
The diff coverage is 96.42%.

@@           Coverage Diff            @@
##           master     #10     +/-   ##
========================================
- Coverage     100%   97.5%   -2.5%
========================================
  Files           7       7
  Lines         194     200      +6
========================================
+ Hits          194     195      +1
- Misses          0       5      +5

Impacted Files
Coverage Δ

src/autotype.jl
97.91% <100%> (-2.09%)
:arrow_down:

src/coerce.jl
91.66% <100%> (-8.34%)
:arrow_down:

src/convention/coerce.jl
98.3% <90%> (-1.7%)
:arrow_down:

Continue to review full report at Codecov.

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


Bug in Steamroller challenge

Challenge Steamroller has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
All the test cases produce a valid output but the challenge does not get completed.
My code:
var new_arr=[];
function steamrollArray(arr) {
  // I'm a steamroller, baby
  for(var i=0;i<arr.length;i++)
    {
    if(Array.isArray(arr[i]))
      {
        steamrollArray(arr[i]);
      }
     else
      {
        new_arr.push(arr[i]);
      }
    }

  return new_arr;
}

steamrollArray([1, {}, [3, [[4]]]]);

Please use the Help chat room for getting challenge related help. Happy Coding!

Hi peeps. Same issue. My output is right but it seems I can't validate the challenge. None of the test pass, even though the output print it right ? any clue ?

I've noticed that in the answers provided with the test cases there are one space between the coma and the number. I think this shouldn't be a cause for not accepting the results. I'm facing this now, trying to produce a output exactly as the outputs on the test cases.

While this is closed, I thought I would share my findings for those that may end up here: It seems the reason this doesn't pass the test cases, but still prints the right result, is because it is actually returning more than once for each call.
It seems like Free Code Camp only checks the first value returned, (which is naturally incomplete and wrong), causing you to fail without knowing why. To see this, add a console.log(new_arr); right before return new_arr - you will see many returns for each call (and the first return for each call will not be correct).

This error is happening as you are using global variable to store the data. So, every time this code runs all the array values are pushed to the global variable and that's why you are facing this issue. I resolved it by removing the global variable and pushing the array elements into a local variable.

I think @msabitabrata is right, I was stuck here for a long time, maybe it needs more hints about the restrictions of the problem. Here is my solution:
function steamrollArray(arr) {
  // I'm a steamroller, baby
  var ar = [];
  while(Array.isArray(arr)&&arr.length>0){
    var elem = arr.shift();
    if(Array.isArray(elem)){
      arr = elem.concat(arr);
		}else{
			ar.push(elem);
		}
  }
	return ar;
}

@Ynull
Please do not post your solution on here. You could help people at FreeCodeCamp Chat Room or Forum. GitHub Issues are for reporting bugs on the website only.
Happy Coding!


Friday 18-10-2024 roll call

Roll Call!


The API References page should reference the actual APIs

[Enter feedback here]
On the "API References" page (https://docs.microsoft.com/en-us/gaming/playfab/api-references/), there is some overview info, but the link to the actual APIs is nowhere to be found. Somewhere you should reference the APIs: https://docs.microsoft.com/en-us/rest/api/playfab/
Backstory: Took me a lot of googling to find your API documention. I finally found a reference to a specific call, googled it, and found https://docs.microsoft.com/en-us/rest/api/playfab/. The breadcrumbs on https://docs.microsoft.com/en-us/rest/api/playfab/ indicate that it thinks it is inside of the "PlayFab Docs / API References" section, but I couldn't find it there.

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

ID: 0aca1a26-91df-c104-619c-1e41dc568523
Version Independent ID: 23b57de3-a9ae-34c0-bec3-c38e710952e7
Content: API References - PlayFab
Content Source: playfab-docs/api-references/index.md
Product: playfab
GitHub Login: @v-thopra
Microsoft Alias: v-thopra

[Enter feedback here]
On the "API References" page (https://docs.microsoft.com/en-us/gaming/playfab/api-references/), there is some overview info, but the link to the actual APIs is nowhere to be found. Somewhere you should reference the APIs: https://docs.microsoft.com/en-us/rest/api/playfab/
Backstory: Took me a lot of googling to find your API documention. I finally found a reference to a specific call, googled it, and found https://docs.microsoft.com/en-us/rest/api/playfab/. The breadcrumbs on https://docs.microsoft.com/en-us/rest/api/playfab/ indicate that it thinks it is inside of the "PlayFab Docs / API References" section, but I couldn't find it there.

resolved


Zero out objects that are no longer reachable

In the C++ implementation, any time a pointer is overwritten making the previously pointed-to object unreachable, said object is recursively overwritten with zeros.
This is important for two reasons:

This situation unfortunately creates a "hole" in the message -- data that wastes space on the wire, but which isn't actually part of the message. There's no reasonable way to avoid a hole, but zeroing it out ensures that the hole compresses well, if any compression is applied.
Application developers may not expect that data they thought they "removed" from the message may in fact still be present on the wire. This can be a security problem, if the data was intentionally removed to hide it from the eventual recipient. We have in fact seen real-world use cases where this was a security problem.

For these reasons I recommend implementing the C++ behavior in capnp-ts.
Note that orphans are tricky here. In C++, we have destructors, so if an orphan is destroyed without being adopted, we can automatically go zero out the object at that time. In Javascript you'll need an explicit dispose() method, I suppose. (Or if you are feeling evil, you could call it euthanize()...)

I believe I was careful with making sure this actually does happen, and Orphan does in fact have a dispose() method.
Orphans are extra tricky to use in this JS version, since you do in fact need to remember to call dispose() for reasons beyond just a simple memory leak.
I'll leave this open for now as a reminder to explicitly test for erase behavior in a variety of cases.

Hmm, yesterday I traced through the code path for setting a pointer and I didn't see where it zero'd out the old pointer. I therefore assumed this wasn't implemented, but I must have missed something.


DuckDB  Date Types  add new row error

Description
1.Create test table
CREATE TABLE main.test (c1 DATE);
insert INTO test values('2022-01-01');

2.I try  add new row
3.input 2022-01-02
4.Save，See an
Error synchronizing data with database
Reason:
Can not bind statement parameter

DBeaver Version
DBeaver Ultimate 21.3.0  and DBeaver  Community 22.2.0
Operating System
Windows 11
Database and driver
DuckDB v0.5.0
duckdb_jdbc-0.5.0.jar
DuckDBJ 1.0

Steps to reproduce
No response
Additional context
No response

Thank you for the bug report!

Thank you all, great job!

This is the DuckDB bug report for this issue: https://github.com/duckdb/duckdb/issues/6761

Can not reproduce with the latest DBeaver (23.2.2) and DuckDB (0.9) versions


debconf not handled correctly on msodbcsql17

I am trying to predefine the ACCEPT LICENSE debconf variable for the ODBC package (msodbcsql17) like this:
echo msodbcsql17 msodbcsql/accept_eula boolean true | debconf-set-selections
But it seems to be ignored by the pre-installation script, which just checks only for the environment variable to be set. This does not work on automated installations e.g. when using puppet.

@LiohMoeller debconf support is scheduled for a future release of the ODBC driver, please stay tuned.

@LiohMoeller please check the latest ODBC documentation

It does not say anything about debconf support.

@LiohMoeller please search for the keyword "debconf". I pasted the screenshot below for your reference:

Ah, I was looking at the German version of the docs (browser default here) which does not contain the note yet. Thanks.

Resolved. Closing the issue.


When will add color translation experiments|?

Hello , thanks for your great works, and i want to know when the  color translation experiments will release? Thanks
@suxuann

Hello author, I really appreciate the work you have done and thank you for making the experimental code public! I am eager to add color translation experiments to the repository, thank you very much! And when can the color translation experiments will release？Please forgive me if I offend you.

@suxuann Hello author, I really appreciate the work you have done, and thank you for making the experimental code public! I am eager to add color translation experiments to the repository, thank you very much! And when can the color translation experiments release？Please forgive me if I offend you.


DRAFT: run protobuf OSS benchmarks on m6g instance

Related: https://github.com/protocolbuffers/protobuf/pull/8665

Adhoc run: https://fusion2.corp.google.com/invocations/e635c0b1-c3ec-4d85-afd9-864cbce146e8/targets


Support for array_function implementers (sparse arrays) [WIP]

Doing a SciPy sprint. Working towards #1375
Together with https://github.com/pydata/sparse/pull/261, it seems to work.

[ ] Closes #xxxx
[x] Tests added
[ ] Fully documented, including whats-new.rst for all changes and api.rst for new API

Hello @nvictus! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file xarray/core/duck_array_ops.py:

Line 79:5: E722 do not use bare 'except'
Line 129:21: E127 continuation line over-indented for visual indent

@nvictus, thank you for your work!
I just tried this on CuPy arrays, and it seems to be working during array creation:
In [1]: import cupy as cp

In [2]: import xarray as xr

In [3]: x = cp.arange(6).reshape(2, 3).astype('f')

In [4]: y = cp.ones((2, 3), dtype='int')

In [5]: x
Out[5]:
array([[0., 1., 2.],
       [3., 4., 5.]], dtype=float32)

In [6]: y
Out[6]:
array([[1, 1, 1],
       [1, 1, 1]])

In [7]: y.device
Out[7]: <CUDA Device 0>

In [8]: x.device
Out[8]: <CUDA Device 0>

In [9]: ds = xr.Dataset()

In [10]: ds['x'] = xr.DataArray(x, dims=['lat', 'lon'])

In [11]: ds['y'] = xr.DataArray(y, dims=['lat', 'lon'])

In [12]: ds
Out[12]:
<xarray.Dataset>
Dimensions:  (lat: 2, lon: 3)
Dimensions without coordinates: lat, lon
Data variables:
    x        (lat, lon) float32 ...
    y        (lat, lon) int64 ...

In [13]: ds.x.data.device
Out[13]: <CUDA Device 0>

In [14]: ds.y.data.device
Out[14]: <CUDA Device 0>

Even though it failed when I tried applying an operation on the dataset, this is still awesome! I am very excited to see this feature in xarray:
In [15]: m = ds.mean(dim='lat')
-------------------------------------------------------------------
TypeError                         Traceback (most recent call last)
<ipython-input-15-8e4d5e7d5ee3> in <module>
----> 1 m = ds.mean(dim='lat')

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/common.py in wrapped_func(self, dim, skipna, **kwargs)
     65                 return self.reduce(func, dim, skipna=skipna,
     66                                    numeric_only=numeric_only, allow_lazy=True,
---> 67                                    **kwargs)
     68         else:
     69             def wrapped_func(self, dim=None, **kwargs):  # type: ignore

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/dataset.py in reduce(self, func, dim, keep_attrs, keepdims, numeric_only, allow_lazy, **kwargs)
   3532                                                  keepdims=keepdims,
   3533                                                  allow_lazy=allow_lazy,
-> 3534                                                  **kwargs)
   3535
   3536         coord_names = set(k for k in self.coords if k in variables)

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/variable.py in reduce(self, func, dim, axis, keep_attrs, keepdims, allow_lazy, **kwargs)
   1392         input_data = self.data if allow_lazy else self.values
   1393         if axis is not None:
-> 1394             data = func(input_data, axis=axis, **kwargs)
   1395         else:
   1396             data = func(input_data, **kwargs)

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/duck_array_ops.py in mean(array, axis, skipna, **kwargs)
    370         return _to_pytimedelta(mean_timedeltas, unit='us') + offset
    371     else:
--> 372         return _mean(array, axis=axis, skipna=skipna, **kwargs)
    373
    374

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/duck_array_ops.py in f(values, axis, skipna, **kwargs)
    257
    258         try:
--> 259             return func(values, axis=axis, **kwargs)
    260         except AttributeError:
    261             if isinstance(values, dask_array_type):

/glade/work/abanihi/devel/pangeo/xarray/xarray/core/nanops.py in nanmean(a, axis, dtype, out)
    158         return dask_array.nanmean(a, axis=axis, dtype=dtype)
    159
--> 160     return np.nanmean(a, axis=axis, dtype=dtype)
    161
    162

/glade/work/abanihi/softwares/miniconda3/envs/xarray-tests/lib/python3.7/site-packages/numpy/core/overrides.py in public_api(*args, **kwargs)
    163             relevant_args = dispatcher(*args, **kwargs)
    164             return implement_array_function(
--> 165                 implementation, public_api, relevant_args, args, kwargs)
    166
    167         if module is not None:

TypeError: no implementation found for 'numpy.nanmean' on types that implement __array_function__: [<class 'cupy.core.core.ndarray'>]

Even though it failed when I tried applying an operation on the dataset, this is still awesome!

Yes, it really is!
For this specific failure, we should think about adding an option for the default skipna value, or maybe making the semantics depend on the array type.
If someone is using xarray to wrap a computation oriented library like CuPy, they probably almost always want to set skipna=False (along with join='exact'). I don't think I've seen any deep library that has bothered to implement nanmean.

After writing more tests, turns out sparse-backed xarrays were generating strange coordinates. On closer inspection, this is because sparse.COO objects have their own coords attribute which stores the indices of its nonzeros.
With a serendipitous shape and density of a sparse array, there were the right number of coords such that they got converted into xarray coords:
>>> S = sparse.random((100,100))
>>> S.coords
array([[ 0,  0,  3,  3,  4,  5,  6,  7,  7,  7,  9, 10, 11, 14, 14, 16,
        17, 18, 19, 19, 21, 21, 21, 21, 22, 23, 23, 24, 24, 25, 26, 28,
        29, 31, 35, 35, 36, 36, 38, 39, 41, 42, 42, 43, 44, 46, 46, 47,
        48, 48, 49, 49, 49, 49, 50, 52, 53, 54, 55, 56, 57, 57, 58, 60,
        60, 61, 61, 62, 64, 64, 68, 70, 72, 73, 76, 77, 78, 79, 79, 80,
        81, 83, 84, 85, 88, 89, 90, 90, 90, 92, 92, 93, 93, 94, 94, 96,
        97, 98, 98, 99],
       [14, 28, 58, 67, 66, 37, 50,  9, 66, 67,  6, 22, 44, 51, 64, 26,
        53, 91, 45, 81, 13, 25, 42, 86, 47, 22, 67, 77, 81, 22, 96, 18,
        23, 96, 34, 57,  6, 96, 91, 86, 75, 86, 88, 91, 30,  6, 65, 47,
        61, 74, 14, 73, 82, 83, 32, 42, 53, 68, 21, 38, 48, 50, 87,  8,
        89, 22, 57, 60, 92, 94, 19, 79, 38, 53, 32, 95, 69, 22, 46, 17,
        17, 86, 36,  7, 71, 35,  9, 58, 79, 22, 68, 10, 47, 48, 54, 72,
        24, 47, 63, 86]])
>>> xr.DataArray(S)
<xarray.DataArray (dim_0: 100, dim_1: 100)>
<COO: shape=(100, 100), dtype=float64, nnz=100, fill_value=0.0>
Coordinates:
  * dim_0    (dim_0) int64 0 0 3 3 4 5 6 7 7 7 ... 92 93 93 94 94 96 97 98 98 99
  * dim_1    (dim_1) int64 14 28 58 67 66 37 50 9 66 ... 47 48 54 72 24 47 63 86

A simple fix is to special-case SparseArrays in the DataArray constructor and not extract the sparse coords attribute in that case, but that would require importing sparse.
Would it make sense to just assume that all non-DataArray NEP-18 compliant arrays do not contain an xarray-compliant coords attribute?

Hmm, looks like the DataWithCoords base type might come in handy here.

Would it make sense to just assume that all non-DataArray NEP-18 compliant arrays do not contain an xarray-compliant coords attribute?

Yes, let's switch:
coords = getattr(data, 'coords', None)

to
if isinstance(data, DataArray):
    coords = data.coords

Checking in here.  This was a fun project during SciPy Sprints that both showed a lot of potential and generated a lot of excitement.  But of course as we all returned home other things came up and this has lingered for a while.
How can we best preserve this work?  Two specific questions:

@nvictus can you summarize, from your perspective, what still needs to be done here?  If you aren't likely to have time to finish this up (which would not be surprising) where should someone else start if they wanted to push this forward?
Xarray devs, are there parts of this PR that could go in quickly, even without the full implementation, just so that this doesn't grow stale?

Thanks for bumping this @mrocklin! I've put in some extra work on my free time, which hasn't been pushed yet. I'll try to write up a summary of my findings today. Briefly though, it seems like the two limiting factors for NEP18 duck array support are:

Operations which ultimately coerce duck arrays to ndarrays (e.g. via np.asarray). Many, but maybe not all of these operations can fixed to dispatch to the duck array's implementation. But that leads to:

Operations not supported by the duck type. This happens in a few cases with pydata/sparse, and would have to be solved upstream, unless it's a special case where it might be okay to coerce. e.g. what happens with binary operations that mix array types?

I think NEP18-backed xarray structures can be supported in principle, but it won't prevent some operations from simply failing in some contexts. So maybe xarray will need to define a minimum required implementation subset of the array API for duck arrays.

2. Operations not supported by the duck type. This happens in a few cases with pydata/sparse, and would have to be solved upstream, unless it's a special case where it might be okay to coerce. e.g. what happens with binary operations that mix array types?

This is totally fine for now, as long as there are clear errors when attempting to do an unsupported operation. We can write unit tests with expected failures, which should provide a clear roadmap for things to fix upstream in sparse.
We could attempt to define a minimum required implementation, but in practice I suspect this will be hard to nail down definitively. The ultimate determinant of what works will be xarray's implementation.

So, tests are passing now and I've documented the expected failures on sparse arrays. :)
As mentioned before, most fall into the categories of (1) implicit coercion to dense and (2) missing operations on sparse arrays.
Turns out a lot of the implicit coercion is due to the use of routines from bottleneck. A few other cases of using np.asarray remain. Sometimes this is through the use of the .values attribute. At the moment, the behavior of Variables and DataArrays is such that .data provides the duck array and .values coerces to numpy, following the original behavior for dask arrays -- which made me realize, we never asked if this behavior is desired in general?
I also modified Variable.load() to be a no-op for duck arrays (unless it is a dask array), so now compute() works. To make equality comparisons work between dense and sparse, I modified as_like_arrays() to coerce all arguments to sparse if at least one is sparse. As a side-effect, a.identical(b) can return True if one is dense and the other sparse. Again, here we're just copying existing behavior when the duck array is a dask array, but this may seem questionable to extend to other duck arrays.
If bottleneck is turned off, most remaining issues are due to missing implementations in sparse. Some of these should be easy to add: PR pydata/sparse/pull/261 already exposes the result_type function.

At the moment, the behavior of Variables and DataArrays is such that .data provides the duck array and .values coerces to numpy, following the original behavior for dask arrays -- which made me realize, we never asked if this behavior is desired in general?

I think the right behavior is probably for .values to be implemented by calling np.asarray() on .data. That means it should raise on sparse arrays.

@nvictus we are good to go ahead and merge, and do follow-ups in other PRs?

Sounds good!

Thanks a lot, @nvictus

Woot!  Thanks @nvictus !

Thanks @nvictus !


Implement Arena::get2_mut

This PR adds Arena::get2_mut that returns mutable reference to two items of different indices at once.
This PR closes #21.

Well... there's definitely some code gymnastics inside to implementing this thing in safe Rust. Is there a better way to implement this, or maybe an unsafe implementation could be preferred?

I just implemented the unsafe version. It passed miri tests on my machine. Implementation notes are next to the code.

A quick note here:
According to lifetime elision rules, get2_mut(&mut self, Index, Index) -> (Option<&mut T>, Option<&mut T>) has the same lifetime as get2_mut(&'a mut self, Index, Index) -> (Option<&'a mut T>, Option<&'a mut T>). This means the function exports the expected lifetimes for references.

Implementation is looking good, my comment is mostly a style nit.
Can you also add an entry to CHANGELOG.md that notes that Arena::get2_mut is an unreleased change? Thanks!

Added!
Ignore the force push please... That was just me trying to fix a style issue without wasting another commit and failed. I promise I won't do that the next time!

Thanks! :D


cleans up reframe/noframe method

There's 1 issue here = class syntax.
Fix:
=> abstract the main function from the shave.js file
=> use a index.js and import it


Fix drift in WASAPI when having different output and input sample device rate

(Re-opening a PR since I'm apparently hitting a race on github)
This addresses the comments, and is cleaner. I removed the explicit buffer append at start, in favour of letting the emergency padding logic automatically kick in. Usually, we never append input frames, it's mainly useful when we're intentionally blocking thread because we're hitting breakpoints, or at start when the input side has not produced enough buffers yet to feed the resampler.

For posterity, the old PR was: https://github.com/kinetiknz/cubeb/pull/153


Installing module where commands already exist on system

Steps to reproduce
Take the scenario where you have a module installed and it exports a function named Get-FunctionA. You attempt to install another module from the psgallery where one of its exported functions is also named Get-FunctionA. No exception is printed to console however two records are in $error.
In Windows PowerShell 5.1, the user is given helpful error record immediately printed to console.

The AutomatedLab.Common module has functions named the same that Indented.Net.IP offers. So for the below I'll use those two modules
Install-Module AutomatedLab -Scope CurrentUser
Install-Module Indented.Net.Ip -Scope CurrentUser

Expected behavior
PS C:\> install-module AutomatedLab -Scope CurrentUser
PS C:\> install-module indented.net.ip -Scope CurrentUser

Untrusted repository
You are installing the modules from an untrusted repository. If you trust this repository, change its
InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from     'PSGallery'?
PackageManagement\Install-Package : The following commands are already available on this system:'ConvertTo-BinaryIP,Co nvertTo-DecimalIP,ConvertTo-DottedDecimalIP,ConvertTo-Mask,ConvertTo-MaskLength,Get-BroadcastAddress,Get-NetworkAddres s,Get-NetworkRange,Get-NetworkSummary'. This module 'Indented.Net.IP' may override the existing commands. If you       still want to install this module 'Indented.Net.IP', use -AllowClobber parameter.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\<IP_ADDRESS>\PSModule.psm1:1809 char:21
+ ...          $null = PackageManagement\Install-Package @PSBoundParameters
+                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Exception
    + FullyQualifiedErrorId : CommandAlreadyAvailable,Validate-ModuleCommandAlreadyAvailable,Microsoft.PowerShell.Pac     kageManagement.Cmdlets.InstallPackage

PS C:\>

Actual behavior
PS C:\> install-module AutomatedLab -Scope CurrentUser
PS C:\> install-module indented.net.ip -Scope CurrentUser
PS C:\>

Environment data

Name                           Value
----                           -----
PSVersion                      7.0.0-rc.3
PSEdition                      Core
GitCommitId                    7.0.0-rc.3
OS                             Microsoft Windows 10.0.18363
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0ΓÇª}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Looks like PowerShell 7 has PackageManagement version 1.4.6.

@alerickson Could you please comment?

I think this is an issue with how the error's being captured and read in PowerShell.
PWSH 6.2.4 w/ PowerShellGet 2.2.3 and PackageMangement 1.4.6 outputs the error as expected:

but PWSH 7.0.0-rc.3 w/ PowerShellGet 2.2.3 and PackageMangement 1.4.6

When I try running the command in PowerShellGet that calls into PackageManagement to install, it throws the error and outputs as expected:

@SteveL-MSFT It could be again in ConciseView.

This doesn't repro for me, getting the expected error message.  If you notice the original error, it's about the collection being modified as the output is being created.  I think this is the same as https://github.com/PowerShell/PowerShell/issues/11797


Question about inputting only 2D Data

Hi!
Thank you for introducing such an interesting model to us and sharing the code!
I'm trying to run the model only on 2D structures, would you mind providing a script for using only 2D structures to train the model (Like for PCQM4M-LSC-V2)?
I tried to change the dataset_name and set add_3D to false in the sample train script for 3D data in the readme file, but that doesn't work. I looked into the code and found that in the tasks/graph_prediction.py file , Class GraphPredictionTask, and load_dataset function, when calling BatchedDataDatset, when it set the dataset_version to "2D" for PCQM4M-LSC-V2, it gives the error in criterions/graph_predictions.py line 45: ori_pos = sample['net_input']['batched_data']['pos'], KeyError: 'pos'.
Thank you so much!

Same Question

Hi!
Thank you for introducing such an interesting model to us and sharing the code!
I'm trying to run the model only on 2D structures, would you mind providing a script for using only 2D structures to train the model (Like for PCQM4M-LSC-V2)?
I tried to change the dataset_name and set add_3D to false in the sample train script for 3D data in the readme file, but that doesn't work. I looked into the code and found that in the tasks/graph_prediction.py file , Class GraphPredictionTask, and load_dataset function, when calling BatchedDataDatset, when it set the dataset_version to "2D" for PCQM4M-LSC-V2, it gives the error in criterions/graph_predictions.py line 45: ori_pos = sample['net_input']['batched_data']['pos'], KeyError: 'pos'.
Thank you so much!

Have you found the solution?

I change the parameter "mode_prob: ${mode_prob} for {2D+3D, 2D, 3D}" to 0,1,0, and it works for me.

Sorry for missing this, I eventually solved it by tuning the mode_prob as well!


Adding fixes for ExtensionsInterface method Networks

What this PR does / why we need it:
PR to fix the compilation error and adding network Extensions Interface
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

@rkamudhan I intentionally omitted all generated code from the commit. Otherwise, it becomes very hard to rebase. I will include it in the final commit.

@jojimt Joji, It is ok no issue.. I just want to unlock the error - Kural


Picking a non ipykernel kernel in the interactive window does not allow cancel

Create venv
Dont set it as your interpreter
Launch IW
Pick the venv
THis dialog should appear:

Say cancel

IW is no longer usable and still shows the venv kernel

This looks by design. If you try running the cell, you'll be reprompted to install ipykernel.

I would say cancel should force me to pick a new kernel then. It's not usable after hitting cancel:

This is actually being worked on for next month. Closing as dupe of #8817


Shader compile errors when replaying GLES

Description
I got these shader compile error messages in the histogram.comp when I replayed GLES:

OpenGL does not allow swizzles on scalar expressions
for example:
https://github.com/baldurk/renderdoc/blob/875e27d84449c46e938aaa7f30476c0d94ecb217/renderdoc/data/glsl/histogram.comp#L72
Scalar swizzling could be replaced by vec4/uvec4.

implicit cast from "int" to "float"
for example:
https://github.com/baldurk/renderdoc/blob/875e27d84449c46e938aaa7f30476c0d94ecb217/renderdoc/data/glsl/histogram.comp#L82

implicit cast from "int" to "uint"
for example:
https://github.com/baldurk/renderdoc/blob/875e27d84449c46e938aaa7f30476c0d94ecb217/renderdoc/data/glsl/histogram.comp#L90
Constant types could be explicitly specified.

A possible fix: https://github.com/tabikati/renderdoc/commit/336d26db909ce6d402b6c2c77cccd018c01113ec
Environment

RenderDoc build: v1.x, 2019-10-24.
Operating System: Ubuntu Linux
API: OpenGL ES

Closed with #1562


inheritFromWidgetOfExactType depreciated

inheritFromWidgetOfExactType depreciated and should not be used.

@raviganwal Hello, thanks for your contribution!


Added profile for Deep512

Description
Added profile data for Deep512
And added the JSON file to the profile list
Related Issues
Issue: #938
Checklist

[x] I have read and followed the Contribution Guidelines.
[x] All new and existing tests passed.
[x] My code follows the code style of this project.
[x] The title of my pull request is a short description of the requested changes.

Screenshots

@Deep512 Thank you so much for your contribution! Your efforts are greatly appreciated and will go a long way in improving our project. Please feel free to share it with others and help us grow even further!


Caching layer implementation status

I've started to implement #136, see the ds_caching branch. It can right now be considered a prototype. This is supposed to be an overview of what is done and still TODO.
Bigger building blocks:

[x] Low-level WriteHandle implementation (lives in libertem.io.writers.base) that just safely writes tiles to a file (currently using mmap)
[x] Distributed Raw DataSet (DistRawDS? naming not finalized, currently libertem.io.dataset.distributed_raw): writable, single partition per file, structure copied from source dataset, re-uses I/O functionality from our raw file reader
[x] CachDataSet (libertem.io.dataset.cached) using the DistRawDS and a source dataset to lazily cache partitions as they are used on worker nodes
[ ] Cache eviction / cache statistics
[ ] Transformation-style operations that create a distributed raw dataset from a source dataset with a transformation applied (basically #201)
[ ] Creating a new DistRawDSs from "thin air"; the simulation use case (basics are there, user-friendly interface TODO)
[ ] Integration into user-facing APIs
[ ] Integration into the web interface (configurable cache path, checkbox "enable cache" when opening, not much more!)

Related and future items, which may influence our implementation:

[ ] Live acquisition (just to have it on the radar, doesn't have to be done as part of this issue)
[ ] Create a unified I/O layer that is used by all readers, which then also supports HTTP and HTTP-Based protocols as backend (#278?), and uses liburing (#268) for local SSD I/O
[ ] Compression (#387)

Smaller items:

[ ] Cache key from source dataset
[ ] Tweak some interfaces and names (DRawDataset -> DistRawDS? Also create a proper "writable dataset" interface)
[ ] A lot more testing and coverage, some better error handling and messages (for example: inconsistent state on disks -> should be caught and handled by cache layer transparently)
[ ] diagnostics for DistRawDS and CachedDataSet?
[ ] Maybe fix get_locations and DataSet.initialize such that they don't need to "know" the JobExecutor interface (might not be possible....)
[ ] Related to get_locations, fix the dask-array integration
[ ] Configurable hostname -> path map, not only for testing but also for non-homogenuous deployments
[ ] benchmark write performance vs. possible raw throughput (fio)

As a general remark, we should make it a habit to include version information and changelog info early-on. :-)

This is a surprisingly small change! 👍
How does it find the correct cache path for an external location? Will users always have to remember where they cached a DS or is there a way to match external source and cache automatically?
Reading the code, the "processing logic" seems to determine which parts it wants to process next and reads them. Each worker gets their own partition to cache, correct? As far as I can see, the processing stalls for the time that it waits for the tile? That behavior should be fine for simulations and caching. If processing a cached DS is interrupted, an optimization could be to first process cached parts of a DS and then proceed to uncached, but as long as we always process partitions in the same order, that should happen automatically, right?
I am a bit unsure if this structure can handle live data as well or if it will have to be rewritten extensively. For live processing, we will have to change the processing logic. We receive the data in the order that is determined by the experiment, likely filling up one partition at a time. We'll have to process the incoming tiles on all available worker processes on an acquisition node in a round-robin fashion. Completed partitions can transition to offline processing. Here we should make sure to only attempt processing of completed partitions since we can't just make partition data appear as we please, but must follow the flow of the acquisition. In any case, if we can't think of handling this scenario right now, we can figure it out later and rewrite as soon as we have a better handle on this.

About naming: ClusterDS and CacheDS to avoid confusion with dask.distributed?

About naming: ClusterDS and CacheDS to avoid confusion with dask.distributed?

Currently, all DataSet subclasses use the full form, so that would be ClusterDataSet and CacheDataSet. As ClusterDataSet can also have use-cases on a single-node system, maybe we can find a better name still.

As a general remark, we should make it a habit to include version information and changelog info early-on. :-)

Agreed and added to the list :grin:

This is a surprisingly small change! +1

Well, it's not done yet :grin:

How does it find the correct cache path for an external location? Will users always have to remember where they cached a DS or is there a way to match external source and cache automatically?

That's the "Cache key from source ds" part.

Reading the code, the "processing logic" seems to determine which parts it wants to process next and reads them

Not sure what you mean by this: a UDF Task asks its associated Partition for tiles. It does not control in which order the tiles are read. The DataSet controls the order in which Partitions are returned, and the Partition does the same for tiles.
On the top level, the scheduler of dask-distributed decides the order of execution. From our perspective, all partitions are processed "in parallel", and not in a specific order. This is the part that will be different for live acquisition, for sure.

Each worker gets their own partition to cache, correct?
As far as I can see, the processing stalls for the time that it waits for [reading] the tile?

Yes, both correct. A cache miss works like this, for each tile: [read: I/O wait] -> [processing: CPU bound] -> [write: mmap, page faults]. Needs to be compared to pipelining the next tile read while processing the first tile, which would also mean we have more data in flight (read: more pressure on CPU caches).

If processing a cached DS is interrupted,...

... or maybe more common, if previously a ROI was used which didn't cover that partition, ...

... an optimization could be to first process cached parts of a DS and then proceed to uncached, but as long as we always process partitions in the same order, that should happen automatically, right?

I don't think we get any determinism/ordering guarantees from dask-distributed... anyways, using a ROI could create "holes" in the cache in arbitrary places, so it would not happen automatically.
Instead of doing "hits first, then misses" (which optimizes for fast feedback rather than total run time), we should instead overlap the cache population with computation on already cached partitions. I'll need to think a bit about this. For example, the partition could indicate whether it is cached or uncached, and be put in different work queues, which are worked on independently. That would guarantee that we always work on filling the cache, as long as there is any work in the uncached queue.

I am a bit unsure if this structure can handle live data as well or if it will have to be rewritten extensively.
We'll have to process the incoming tiles on all available worker processes on an acquisition node in a round-robin fashion.

I think the ClusterDataSet should also work for acquisition. On an acquisition node, there would be a single ClusterDataSetPartition open at a time, into which a single thread or process writes all incoming tiles.  The processing should be done independently from writing IMHO.

Completed partitions can transition to offline processing. Here we should make sure to only attempt processing of completed partitions since we can't just make partition data appear as we please, but must follow the flow of the acquisition.

Incomplete partitions are currently saved into a temporary file, and once complete, moved in place atomically. So unless you make an effort to open said temporary file, you don't get incomplete partitions from the ClusterDataSet. Of course, what you write into the data set can be incomplete...
I think the main difference overall is that we no longer have Partition-based parallelism, but that it is finer-grained. There is no longer a "create tasks for all partitions and run them in whatever order" but instead "a constant stream of tiles from partition after partition".

In any case, if we can't think of handling this scenario right now, we can figure it out later and rewrite as soon as we have a better handle on this.

True.

As a high-level API for the caching, there are at least two parts needed:

Settings for the cache, i.e. strategy, path, capacity, ...
Enabling caching for a specific data set

For 1), I think a settings dict could be passed to the Context on initialization, and updated with some other method, like ctx.update_settings({...}). What do you think?
For 2), I thought something simple like ds_cached = ctx.cache(source_ds) could work.


«you are not allowed to perform this action» when trying to create a role.

After installing dektrium-user and dektrium-rbac, I use the user/admin interface to try to create a role. The route rbac/role/index as well as the route rbac/role/create lead to a Forbidden 403 page with message "You are not allowed to perform this action".
It seems that the only access control is at the module level that requires getIsAdmin() in User to return true.
When forcing this method to return true, we can access the create and index forms.
The question is, how to have an admin at startup ?
| ----------------- | ---
| Yii2 version      |2.0.5
|dektrium-rbac version |1.0.0-alpha-@dev
| PHP version       5.6.25|

Sorry, I have found it. It is in the module's config  'admins' => [name1, name2, ...]