The Readme file is empty

Hello,
The readme file is empty.  How to build armnn library?
I came accross this tutorial of armnn-mnist (https://github.com/ARM-software/ML-examples/tree/master/armnn-mnist). But without the armnn library i cannot run the mnist example.

Hi @atrah22 thanks for your question.
Our documentation will be ready soon. Sorry for the delay.

Hi @atrah22 not all of the documentation is ready yet but you can find build instructions at https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment/configuring-the-arm-nn-sdk-build-environment-single-page

Hello @MatthewARM,
This build instructions are for linux OS. Will there be any build isntructions soon for Android OS ? I was looking to build applicaitons for android OS.

Hi @atrah22, we'll see what we can do about providing documentation for that use case.
To help me understand precisely what you mean, are you intending to build an application apk that uses ArmNN? Are you going to use a Caffe model with it?

Yes right.
I will use armNN to accelerate a CNN (pretrained Caffe model) usng ARM Mali GPU.

Great. We have tested it that way, but we don't have specific build instructions using the Android NDK yet. However, ArmNN uses a standard Cmake build system, so you can adapt the instructions at https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling-for-android-with-a-standalone-toolchain

Hi @MatthewARM,
In the build instructions you mentioned before:
Your platform or board must have:
At least 4GB of RAM.
Seriously?  I thought memory requirement should relates to model selection, and should have small memory footprint for simple models.

I'm aware of people using ArmNN on boards with much less RAM than that.

Thanks!
I'm also wondering how this project relates to ARM-software/android-nn-driver.
They're both noted "Arm NN" in official slides, but this one looks more generic.
Will they merge in the future?

Hi @tsyu the android-nn-driver component uses the ArmNN core library to provide an implementation of the<EMAIL_ADDRESS>HAL interface.
In other words it is a vendor driver for Mali for the Android NNAPI. You need it if you are phone OEM using Mali to accelerate the Android NNAPI. You don't need it if you are writing a program that targets the ArmNN API directly.
They won't merge, but you can think of the android-nn-driver as a separate, optional, component of the ArmNN product.

Thank you, @MatthewARM!
I'll try both on HiKey 960.

Hello,
I followed https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment/configuring-the-arm-nn-sdk-build-environment-single-page .
When i enter "make" command, it still searches for libboost in the "/usr/lib/x86_64-linux-gnu" directory. However, I clearly put "-DBOOST_ROOT=~/boost_1_64_0 " argument for cmake. And also I used -fPIC on the cxx flags to build boost.
The make command error is stated below:
[  3%] Built target armnnUtils
[  4%] Linking CXX shared library libarmnn.so
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/libboost_log.a(attribute_name.o): relocation R_X86_64_32 against `_ZZN5boost3log12v2s_mt_posix3aux14lazy_singletonINS1_14attribute_name10repositoryENS_10shared_ptrIS5_EEE3getEvE29_boost_log_once_block_flag_43' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/libboost_log.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libarmnn.so] Error 1
make[1]: *** [CMakeFiles/armnn.dir/all] Error 2
make: *** [all] Error 2

I think at least "cross-compile" should be mentioned in that guide (boost part).

Hi @atrah22,
You should add your cross-compiler with cmake, like:
-DCMAKE_CXX_COMPILER=aarch64-linux-gnu-c++ -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc
Or it will use /usr/bin/c++ and /usr/bin/gcc
Hi @MatthewARM,
Which toolchain do you recommend?
I used a randomly picked gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux but failed to build armnn.

@tsyu, Thankyou.
Now I am used the following command for cmake to build for Android OS, aarch64 arm:
cmake -DARMCOMPUTE_ROOT=/home/atul/git_work/ARM/ComputeLibrary -DARMCOMPUTE_BUILD_DIR=/home/atul/git_work/ARM/ComputeLibrary/build -DBOOST_LIBRARYDIR=/home/atul/boost_1_64_0/stage/lib -DCAFFE_GENERATED_SOURCES=/home/atul/git_work/caffe/caffe/.build_release/src -DBUILD_CAFFE_PARSER=1 -DARMCOMPUTECL=1 -DCMAKE_SYSTEM_NAME=Android -DCMAKE_ANDROID_STANDALONE_TOOLCHAIN=/home/atul/git_work/Android/android-ndk-r16b -DCMAKE_CXX_COMPILER=aarch64-linux-android-g++ -DCMAKE_C_COMPILER=aarch64-linux-android-gcc ..
Now the error is on hpp files like below ( @MatthewARM )
[  1%] Building CXX object CMakeFiles/armnnUtils.dir/src/armnnUtils/Logging.cpp.o
[  2%] Building CXX object CMakeFiles/armnnUtils.dir/src/armnnUtils/Permute.cpp.o
[  3%] Linking CXX static library libarmnnUtils.a
[  3%] Built target armnnUtils
Scanning dependencies of target armnn
[  4%] Building CXX object CMakeFiles/armnn.dir/src/armnn/backends/ClWorkloadFactory.cpp.o
In file included from /home/atul/git_work/ARM/armnn/include/armnn/IRuntime.hpp:12:0,
from /home/atul/git_work/ARM/armnn/src/armnn/backends/ClWorkloadFactory.hpp:9,
from /home/atul/git_work/ARM/armnn/src/armnn/backends/ClWorkloadFactory.cpp:5:
/home/atul/git_work/ARM/armnn/include/armnn/TypesUtils.hpp: In function 'constexpr const char* armnn::GetStatusAsCString(armnn::Status)':
/home/atul/git_work/ARM/armnn/include/armnn/TypesUtils.hpp:24:1: error: body of constexpr function 'constexpr const char* armnn::GetStatusAsCString(armnn::Status)' not a return-statement
}

Same error here.  I'm trying newer gcc version (4.9 -> 5 or 6)

Hello @tsyu , I solved it.
I  used clang++ instead of g++ and the error went away.
cmake -DARMCOMPUTE_ROOT=/home/atul/git_work/ARM/ComputeLibrary -DARMCOMPUTE_BUILD_DIR=/home/atul/git_work/ARM/ComputeLibrary/build -DBOOST_LIBRARYDIR=/home/atul/boost_1_64_0/stage/lib -DCAFFE_GENERATED_SOURCES=/home/atul/git_work/caffe/caffe/.build_release/src -DBUILD_CAFFE_PARSER=1 -DARMCOMPUTECL=1 -DCMAKE_SYSTEM_NAME=Android -DCMAKE_ANDROID_STANDALONE_TOOLCHAIN=/home/atul/git_work/Android/android-ndk-r16b -DCMAKE_CXX_COMPILER=aarch64-linux-android-c++ -DCMAKE_C_COMPILER=aarch64-linux-android-clang ..
However, I have a new problem regarding finding the libOpenCL.so file (It is by default considering the x86_64-lunx-gnu/libOpenCL.so file). I have the libOpenCL.so file for my device. How to include this libOpenCL file instead of the linux onw?

I think it's intended to link against ComputeLibrary/opencl-1.2-stubs, but once find_library() found your host libOpenCL.so, the host one was chosen:
cmake/GlobalConfig.cmake:
if(ARMCOMPUTECL)
...
find_library(OPENCL_LIBRARIES OpenCL)
if (NOT OPENCL_LIBRARIES)
    # Link against libOpenCL in opencl-1.2-stubs, but don't search there at runtime
    link_libraries(-L${ARMCOMPUTE_BUILD_DIR}/opencl-1.2-stubs)  # Should use this
    set(OPENCL_LIBRARIES OpenCL)
endif()

--
Modifying this to always link the stubs work for me, but I think better fix is required.

@tsyu ,
Yes that worked. Finally I am left with 1 error at 100% Linkin CXX executable UnitTests!
[ 99%] Building CXX object CMakeFiles/UnitTests.dir/src/armnn/backends/test/MemCopyTests.cpp.o
[100%] Linking CXX executable UnitTests
/home/atul/boost_1_64_0/stage/lib/libboost_unit_test_framework.a(unit_test_main.o): In function main': unit_test_main.cpp:(.text.startup+0x8): undefined reference to init_unit_test()'
unit_test_main.cpp:(.text.startup+0xc): undefined reference to init_unit_test()' libarmnn.so: undefined reference to stdout'
libarmnn.so: undefined reference to `__android_log_write'
clang50++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [UnitTests] Error 1
make[1]: *** [CMakeFiles/UnitTests.dir/all] Error 2
make: *** [all] Error 2

Hi @atrah22,
I'm using gcc-6, not ndk clang.  And I did not see your last error here.

gcc-6 for linux OS?
I am using Android OS. I am using ndk-16b and it only has gcc 4.9

Hi  @atrah22,
I'm using android-ndk-r16 with "cmake -DARMCOMPUTE_ROOT=/home/atul/git_work/ARM/ComputeLibrary -DARMCOMPUTE_BUILD_DIR=/home/atul/git_work/ARM/ComputeLibrary/build -DBOOST_LIBRARYDIR=/home/atul/boost_1_64_0/stage/lib -DCAFFE_GENERATED_SOURCES=/home/atul/git_work/caffe/caffe/.build_release/src -DBUILD_CAFFE_PARSER=1 -DARMCOMPUTECL=1 -DCMAKE_SYSTEM_NAME=Android -DCMAKE_ANDROID_STANDALONE_TOOLCHAIN=/home/atul/git_work/Android/android-ndk-r16b -DCMAKE_CXX_COMPILER=aarch64-linux-android-clang++ -DCMAKE_C_COMPILER=aarch64-linux-android-clang ..",but there are some new mistakes
Android: Did not detect API level from
android-ndk-r16/bin/clang  or android-ndk-r16/sysroot/usr/include/android/api-level.h
Call Stack (most recent call first):
cmake-3.10.2/Modules/CMakeDetermineSystem.cmake:130 (include)
CMakeLists.txt:2 (project)
CMake Error at cmake-3.10.2/Modules/Platform/Android-Determine.cmake:195 (message):
Android: The API specified by CMAKE_SYSTEM_VERSION='' is not an integer.
Call Stack (most recent call first):
cmake-3.10.2/Modules/CMakeDetermineSystem.cmake:130 (include)
CMakeLists.txt:2 (project)
Have you ever had this problem？

@Wayne-pw ,
Yes. Just delete the build folder and remake the build folder and use cmake again.

excuse me @atrah22, I want to know caffe compile with clang?

I'm using https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment-for-caffe (from the README.md) and when I try and build boost (the latest stable) I am at a loss as to where to put the build options mentioned in https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment-for-caffe/setting-up-the-build-dependencies.

Hi @madtom1999 those options are passed to b2 when building boost, you can see the full documentation for building boost here: https://www.boost.org/doc/libs/1_64_0/more/getting_started/unix-variants.html#invoke-b2
I'm going to close this issue as I think the discussion has run its course, and there is now content in the  Readme file. Those still having build problems please raise new specific issues, thanks!

hi，I arm porting arm nn to embedded platforms(imx6d ,linux), refer to Configuring the Arm NN SDK build environment for Caffe step by step and I have some doubts as below:
1,all of source code need to compile by arm-linux-gnueabihf-gcc/g++ (GCC-4.9) ?
2,arm-nn can only run embedded platforms arm64 not arm32?
3,arm-nn can run embedded platforms with embedded linux system?

@atrah22,
Have you solved below issues for Andorid OS?
libarmnn.so: undefined reference to `__android_log_write'

@phamyphen,
The error means you need liblog (android) library for the building.
You can manually add -llog in the command line to resolve the error OR
check cmake's parameters "-DCMAKE_SYSTEM_NAME". In the default setting, it might be Linux ("-DCMAKE_SYSTEM_NAME=Linux"). Please change it from Linux to Android. (like "-DCMAKE_SYSTEM_NAME=Android"). (This variable forces to add "-llog" option)

Hi @atrah22,
I met the same error as
"recompile with -fPIC
/libboost_log.a: error adding symbols: Bad value"
And I am using "gcc-linaro-7.2.1-2017.11-i686_arm-linux-gnueabihf", may I know how do you solve the problem?
Thanks,
Shelly

Hi @mvhsin you need to add cxxflags=-fPIC to your b2 command line. If you are still having trouble please could you open a new issue in order to improve visibility and tracking?

Thank you @MatthewARM!
I found my problem is that gcc version is different with boost and armnn.
Now it’s fixed. Thanks for your message!

@mvhsin You're welcome, good luck with your project.


Migrate old npm package registration

https://www.npmjs.org/package/tscollections this needs to be deleted or redirected.

I unpublished the package and left the link to the new package as the description.


Add show/hide menu button

Add a show/hide button for the menu. I put it in the middle under the menu. I really can't decide on this one. I feel like there are too many options! What do you folks think?

I have an idea here, if you don't mind waiting a bit. I should be able to look at it tonight

No rush at all! Please do.

Did not have time tonight 😅


Synthesis failed for Google.Cloud.OrgPolicy.V2

Hello! Autosynth couldn't regenerate Google.Cloud.OrgPolicy.V2. :broken_heart:
Please investigate and fix this issue within 5 business days.  While it remains broken,
this library cannot be updated with changes to the Google.Cloud.OrgPolicy.V2 API, and the library grows
stale.
See https://github.com/googleapis/synthtool/blob/master/autosynth/TroubleShooting.md
for trouble shooting tips.
Here's the output from running synth.py:
2021-03-19 22:44:48,193 autosynth [INFO] > logs will be written to: /tmpfs/src/logs/Google.Cloud.OrgPolicy.V2
2021-03-19 22:44:48,685 autosynth [DEBUG] > Running: git config --global core.excludesfile /home/kbuilder/.autosynth-gitignore
2021-03-19 22:44:48,689 autosynth [DEBUG] > Running: git config user.name yoshi-automation
2021-03-19 22:44:48,693 autosynth [DEBUG] > Running: git config user.email<EMAIL_ADDRESS>2021-03-19 22:44:48,696 autosynth [DEBUG] > Running: git config push.default simple
2021-03-19 22:44:48,700 autosynth [DEBUG] > Running: git branch -f autosynth-Google.Cloud.OrgPolicy.V2
2021-03-19 22:44:48,704 autosynth [DEBUG] > Running: git checkout autosynth-Google.Cloud.OrgPolicy.V2
Switched to branch 'autosynth-Google.Cloud.OrgPolicy.V2'
2021-03-19 22:44:48,914 autosynth [DEBUG] > Running: git rev-parse --show-toplevel
2021-03-19 22:44:48,921 autosynth [DEBUG] > Running: git log -1 --pretty=%H
2021-03-19 22:44:48,925 autosynth [DEBUG] > Running: git remote get-url origin
2021-03-19 22:44:48,960 synthtool [ERROR] > Failed executing git checkout master:

error: Your local changes to the following files would be overwritten by checkout:
	google/cloud/dialogflow/v2/answer_record.proto
	google/cloud/dialogflow/v2/conversation.proto
	google/cloud/dialogflow/v2/conversation_profile.proto
	google/cloud/dialogflow/v2/participant.proto
Please commit your changes or stash them before you switch branches.
Aborting

Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 354, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 189, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 312, in _inner_main
    git_source.enumerate_versions(sources, pathlib.Path(temp_dir))
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 202, in enumerate_versions
    source_versions = enumerate_versions_for_source(git_source, temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 166, in enumerate_versions_for_source
    local_repo_dir = str(synthtool_git.clone(remote))
  File "/tmpfs/src/github/synthtool/synthtool/sources/git.py", line 85, in clone
    shell.run(["git", "checkout", "master"], cwd=str(dest), check=True)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['git', 'checkout', 'master']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:


Update visual-studio-code-editor.md

Hi there! I'm a PM on the VS Code team, and I had just some minor wording / capitalization tweaks (i.e. consistently use "Visual Studio Code for the Web" and "VS Code Desktop." Please let me know if you have any questions, thanks!

Hey @ProfessorKendrick @nickdoelman, please just let me know if there are any questions I can help clarify. Thank you!


Update mutiny node methods and parameters

Changes

Accept zero-confirmation channel when matched LSP pubkey
Custom label and expiry for invoice
Skip LSP invoice verifying

Why skip lsp invoice check?


Unable to open Getting Started

Version: 1.55.0-insider
Commit: 04770364fdc1bebeca9d1a257df2cacce06b35d6
Date: 2021-03-05T15:41:28.520Z
Electron: 11.3.0
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 18.7.0
Now every time I open a new empty window in Insiders, I see this error:

I have these two settings:
"workbench.experimental.gettingStarted": true,
"workbench.startupEditor": "gettingStarted"

Same as the earlier issue, you can run Getting Started: Reset progress as workaround.


feat: update TargetFramework to net6.0

BREAKING CHANGE: The runtime library for .NET & generated .NET bindings will no longer support netcoreapp3.1 after this release. Users are advised to upgrade their apps to use net6.0 or net7.0 instead.
Related: https://github.com/aws/aws-cdk/pull/23926
Related: https://github.com/aws/aws-cdk/issues/23921

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

We'll also need to update the various documentation points mentioning .NET 3.1 as the minimum supported, the Mergify configuration file, and our branch protection rules. I'll try to have a look into these later this week.

Thank you for helping me to update the rest.

Due to changes in branch protection, etc... this is going to need hand-merging... I'll get to this tomorrow, as the other PRs that ware ahead of this one are now merged.

Good to go


ModelPropertyRule rule do not support methods such as: select(), find(), first()

Larastan Version: 2.8.1
--level used: 5

Description
I have observed that the ModelPropertyRule rule does not support methods that involve selecting columns, such as select(), find(), and first().
Example
MyModel::query()
    ->where('xxx1')
    ->first(['xxx2', 'xxx3']);

In this example, an error will be triggered for ->where('xxx1'), but not for ->first(['xxx2', 'xxx3']).
Is this behavior a bug, or does the ModelPropertyRule rule intentionally not support these methods?

Hi,
No it is not a bug. The support in that rule is not widespread yet. You can look into this issue, I wrote there in detail. And it also includes a section about how you can contribute,if you want.

Thank you @canvural for your reply. I checked the stub for ->first() method. model-property<TModelClass> is already present: https://github.com/larastan/larastan/blob/2.x/stubs/10.0.0/EloquentBuilder.stub#L107
I am not sure how I can fix/improve this stub.

Maybe something needs to be checked then.


Use nextjs/Image throughout site

convert any img tags to Next/image and get working on Fleek (currently broken)

too much trouble. just stuck w/ image.


N33: Dims

_Part of #1010

Ah sorry missed that somehow, made some updates hope it looks ok!
On Thu, 5 May 2022 at 17:41, Joe Clay @.***> wrote:

@.**** requested changes on this pull request.
Can you please rephrase this section to be in third person perspective, so
that it's consistent with the rest of the newsletter?
It also might be good to give a one line intro to what Dims is, for people
who haven't read earlier newsletters :)
—
Reply to this email directly, view it on GitHub
https://github.com/rust-gamedev/rust-gamedev.github.io/pull/1013#pullrequestreview-963578607,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJ2OSKJX4V4IP2OPDWOAZTVIPT3NANCNFSM5VEZOAPA
.
You are receiving this because you authored the thread.Message ID:
@.***
com>

Fixed!


NIFI-11189: When synchronizing a ProcessGroup to match a VersionedPro…

…cessGroup, do not remove the temporary funnel until the very end. This is important if the temporary funnel already exists in the flow on startup

Summary
NIFI-00000
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[ ] Apache NiFi Jira issue created

Pull Request Tracking

[ ] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[ ] Pull Request based on current revision of the main branch
[ ] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[ ] Build completed using mvn clean install -P contrib-check

[ ] JDK 11
[ ] JDK 17

Licensing

[ ] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[ ] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

Code changes are looking good and I was able to execute the failure scenario whitout the issue appearing. I reused the test flows from my previous PR and tried to start up NiFi with the "corrupted" flow. It did succeed. I will merge soonish!


chore: Trestle release

Types of changes

[ ] Hot fix (emergency fix and release)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation (change which affects the documentation site)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Release (develop -> main)

Quality assurance (all should be covered).

[x] My code follows the code style of this project.
[x] Documentation for my change is up to date?
[x] My PR meets testing requirements.
[x] All new and existing tests passed.
[x] All commits are signed-off.

Summary
Bumping version from 2.1.1 to 2.2.0
Key links:

Sonar coverage

Before you merge

Ensure it is a 'squash commit' if not a release.
Ensure CI is currently passing
Check sonar. If you are working for a fork a maintainer will reach out, if required.

@vikas-agarwal76 could you approve please? Manjiree seems to have lost admin access to approve


Search

Thank you for making this :)
Is there any way to search?

I found this application when looking for a simple way to open and view mbox files on my mac, without needing to import them into Mail.
A search of filter feature would be absolutely awesome.


Separate labels and annotations

Currently labels are queried as label:<foo>=value, but they appear together with annotations the annotations field with a label: prefix. This is a bit wonky, and at the protocol level they should be entirely separated into labels = {} ... annotations = {}.
They could be left combined in the code/database and the separation only done at JSON formatting time, but it would probably be cleaner to separate them there as well.

Done.


Rename project

The naming was chosen by the convention used by gnome for writing wrappers.
The mm's stands for minusminus which since the wrappers for gnome in the late 90's where named gtk-- instad of gtkmm.
I think this convention is sort of ugly, however I'm responsible for the name. So I'd like to hear some suggestions to naming of this project. If you already like the name, why not argue for it :)

@tedjk @oyvang @eidheim


removeChild not working

Issue Details

createJs version 1.0.0

if a Tween is added to some timeline on some target.
tween = cjs.Tween.get(target);
timeline.addTween(tween.wait(1));
if target is an instance of createjs.DisplayObject then in below mentioned _resolveState function(MovieClip.js) _addManagedChild(MovieClip.js) adds that target as a child to owner of the timeline.
Consider this.removeChild(target) is called and target is removed from parent
but child is still there because on next tick target again gets added as child in _resolveState function
and it looks like removeChild  didn't work.
p._resolveState = function() {
		var tl = this.timeline;
		this.currentFrame = tl.position;

		for (var n in this._managed) { this._managed[n] = 1; }

		var tweens = tl.tweens;
		for (var i=0, l=tweens.length; i<l; i++) {
			var tween = tweens[i],  target = tween.target;
			if (target === this || tween.passive) { continue; } // TODO: this assumes the actions tween from Animate has `this` as the target. There's likely a better approach.
			var offset = tween._stepPosition;

			if (target instanceof createjs.DisplayObject) {
				// motion tween.
				this._addManagedChild(target, offset);
			} else {
				// state tween.
				this._setState(target.state, offset);
			}
		}

		var kids = this.children;
		for (i=kids.length-1; i>=0; i--) {
			var id = kids[i].id;
			if (this._managed[id] === 1) {
				this.removeChildAt(i);
				delete(this._managed[id]);
			}
		}
	};

p._addManagedChild = function(child, offset) {
		if (child._off) { return; }
		this.addChildAt(child,0);

		if (child instanceof MovieClip) {
			child._synchOffset = offset;
			// TODO: this does not precisely match Adobe Flash/Animate, which loses track of the clip if it is renamed or removed from the timeline, which causes it to reset.
			// TODO: should also reset when MovieClip loops, though that will be a bit tricky to detect.
			if (child.mode === MovieClip.INDEPENDENT && child.autoReset && (!this._managed[child.id])) { child._reset(); }
		}
		this._managed[child.id] = 2;
	};

Mac 10.15.1 Chrome 78.0.3904.108

Possible solution:
setting child._off = true on removing child and
setting false on adding child.
this.removeChild(target);
 target._off = true;
this could be done either outside createjs or can be made part of removeChild and addChild
functions.

Is this ok or is there any other solution or any other approach to solve this problem?
https://jsfiddle.net/jaswant0709/mocqfj3s/17/

This was mentioned just recently in https://github.com/CreateJS/EaselJS/issues/1048#issuecomment-670836338
So... it sounds like it is not the right behavior to add the clip back again once it is removed.
Your proposed solution would be to set the _off property to true when removeChild() is used and set the _off property to false when the addChild() is used.  I have made a test version of CreateJS here: https://zimjs.org/cdn/1.3.3/createjs_doc_off.js
The three changes in it can be found by searching:
https://github.com/CreateJS/EaselJS/issues/1038
If you could test it and see if it works, that would be great.  If not, then I will set up tests here, etc.  Just going out for a swim!  (hahaha - funny, the issue is December and I am hoping for a test by the time I get back from swimming eight months later - I am so used to fixing bugs with developers as soon as they report them.)


8 cells minimum is wrong

Hi, I've BD4A8S4P which supports 4-8 cells. In settings is possible to configure min. 8 cells. It's wrong. Please don't limit count of cells to 8 or more.
The BMS works well, I set count of cells in the Android app.
Thanks.

Thanks for your report. I will push a fix!

Thanks; actually this BMS can handle 4 LifePo4 (minimum, because of the voltage needed to power the BMS) or 3 Li-Ion :-) (3 Li-Ion cells can power this BMS). Maybe one more limit decrease - 4 -> 3
https://www.aliexpress.com/item/1005004590744267.html - see the table, unfortunately as JPG picture only

Good catch! I will prepare another fix asap.

Fixed.


Addon not installing

Hi,
Nice idea but I'm struggling to make it work. I've placed the/a jar in the right place, modified the addons.cfg but am getting the following appear in the logs:
[ERROR] [core.karaf.internal.FeatureInstaller] - Failed installing 'openhab-binding-meross-java, openhab-binding-meross'
Reason it says it twice is because I wasn't sure whether it's called meross or meross-java.
Using the latest version of openhab2 on a pi zero w.
Thanks,

My bad, didn't realise this was a bundle not a binding.


Enable usage of a string as private key input instead of a file

This pull-request enables the use of the module on PaaS providers with volatile file systems (e.g. heroku), where the developer has no possibility to actually create a file (apart from checking it in).

Please merge, it's needed for project-tier/project-tier#4

Thanks for the PR, @schaermu and for the prompt, @alexgleason! Sorry it's taken me so long.


tr.ts

yarısı bitti

I need to try to fix the issue with the CI. The change I made seems to be erroneously affecting it. I will see if I can rebase this change and hopefully it will run the correct CI job instance after that.

Thanks, I'm looking forward to the update.


Add a sample console application, and add a few more features

This is based on https://github.com/mohabouje/WinToast/pull/12, which is required to make things compile easily in Visual Studio (we could define the constant UNICODE, but that would make it harder to use WinToast in other applications that may not want to define that constant).
First of all, this PR introduces a new example: a ready-to-build Visual Studio project (requires 2015 or later, I believe, I am using 2017).
Then, this PR goes on to add two features, demonstrating them via that console application in parallel. The features are:

adding buttons to the toast
setting an expiration time

The console application accepts command-line options to set:

the application name
the application ID
the image (if any)
the text
the expiration time
zero or more buttons (called "Action")

Thank you for your work, Im a little bit busy this week, I will take a look and merge everything as soon as possible!

Im a little bit busy this week, I will take a look and merge everything as soon as possible!

Thank you!
Please do not hesitate to ping me whenever anything is unclear (or needs to be changed).
For the record, I am available this week, but not next, but then again available the week starting Nov 27th.


feat(api): Support sending assets from contract

Solves https://github.com/CityOfZion/neon-js/issues/147
This PR allows you to send assets from a contract. It supports Contract and Invocation transactions (which are used in neo-boa examples such as https://github.com/CityOfZion/neo-boa/blob/master/boa/tests/src/WithdrawTest.py#L100).
I saw very similar functionality for mintTokens. I'm unsure how mintTokens was being used in this case. If we need it to work as before, is there a way to test it? It will be easy to add back in the exact same way as before if needed.
For my implementation I set invocationScript to '00' * number of contract parameters which is what the mintTokens version was doing. I did not append the main script's invocationScript as the issue says as this does not seem to be needed. The original mintToken implementation was using the contract's script hash in the attribute and I needed to use the sender's. Again, it wasn't clear to me how mintToken was working. What we have here is much more like how neo-python works with --from-addr when sending.
Here is some testing code:
https://gist.github.com/slipo/c1542c087bff7e17a067e903f0b24540
Here's a resulting transaction:
https://gist.github.com/slipo/6b2815058652fce6b386267f1b880639

yes we need the mintToken functionality. Please update it such that the old functions are retained and make your own new ones. They serve very different functions although they look similar. The mintToken function allows the contract to reject the transaction if the token sale is oversubscribed / finished. We are adding features to allow control over SC assets.
Do make a distinction for a smart contract. A normal send asset transaction is called ContractTransaction because an address is considered a normal contract.

Thank you for the feedback. I've made all changes.
I see that mintTokens is a special case where the assets are coming from the sender's regular address but they want the verification triggered. I've put all original mintTokens code back.
I also have created a sendAssets example:
https://gist.github.com/slipo/b4ff4569ada4a93fce683c3da512e0f2
Please see my question in that code. It seems to me we need to (option 1, shown in example) pass along a scriptHash when doing this form of send assets. Otherwise we need to (option 2) remove this:
    if (config.address !== acct.address && !sendingAddressIsSmartContract(config)) {
      return Promise.reject(
        new Error('Private Key and Balance address does not match!')
      )
    }

Or a third option is to add a new config.sendingFromSmartContract = true.  I would personally prefer options 1 or 3 because I think that this isn't the most common usage and that error message could be useful for people.

yes, I think adding a sendingFromSmartContract field would be the option here. We do not want to deviate from the original purpose of sending assets from a personal account. Another solution could be to create a new method called sendAssetsFromSC in order to differentiate. I will accept either methods for now.

Done. Looking cleaner to me.

Thanks for the work! There might be some changes as to where this should live but that should be minor.


Remove container types "panel", "box", "area", and "body".

The only container classes available will be "container" and "flex-container".
Padding can be applied using the pad-* utility classes.

Completed.


Route params mixup

First of all, love the project & the philosophy behind it - it's the perfect approach for Go 1.7+ IMO :thumbsup:
But I'm having an issue with some supporting some legacy route formats. Requests map to the correct handlers but the parameters don't match up correctly. Here's a simplified example replacing the routes in TestTree to show the issue I'm having:
func TestTree(t *testing.T) {
    hDate := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {})
    hCat := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {})

    tr := &node{}

    tr.InsertRoute(mGET, "/items/:year/:month", hDate)
    tr.InsertRoute(mGET, "/items/:category", hCat)

    tests := []struct {
        r string            // input request path
        h http.Handler      // output matched handler
        p map[string]string // output params
    }{
        {r: "/items/2016/08", h: hDate, p: map[string]string{"year": "2016", "month": "08"}},
        {r: "/items/things", h: hCat, p: map[string]string{"category": "things"}},
    }

That results in:
--- FAIL: TestTree (0.00s)
    tree_test.go:59: input [1]: find '/items/things' expecting params:map[category:things] , got:map[year:things]

Note that the /items/:category handler is correctly used but the parameter is called :year instead from the previous route.
It looks like it's due to how the tree is built with the name of the parameter ignored so it then gets the name from the previous node:
2016/08/23 10:40:56 [node 0 parent:0] typ:0 prefix: label: numEdges:1 isLeaf:false
2016/08/23 10:40:56 [node 1 parent:0] typ:0 prefix:/items/ label:/ numEdges:1 isLeaf:false
2016/08/23 10:40:56 [node 2 parent:1] typ:2 prefix::year label:: numEdges:1 isLeaf:true handler:map[512:<nil> 4:0x90450]
2016/08/23 10:40:56 [node 3 parent:2] typ:0 prefix:/ label:/ numEdges:1 isLeaf:false
2016/08/23 10:40:56 [node 4 parent:3] typ:2 prefix::month label:: numEdges:0 isLeaf:true handler:map[512:<nil> 4:0x90440]

Is this simply not supported (I know many Go routers are strict about the route variations, others such as Echo cope better with suffix variations) or is it a bug?
Many thanks.

@CaptainCodeman thanks man! this is definitely a bug and I know why it's happening. Thanks for the report, I'll fix it soon.

Brilliant, thanks !

hey @CaptainCodeman - I was looking to solve this problem when I realized its logically difficult. Did you say other routers can support this?
The reason I ask is, I can make the particular case you're describing work..
/items/:category => categoryHandler (urlParams: category)
/items/:year/:month => yearMonthHandler (urlParams: year, month)

but, imagine the routes now look like
/items/:category => categoryHandler
/items/:year/:month => yearMonthHandler
/items/:x/:y => xyHandler

.. for a request to /items/2016/09 would we expect to reach the yearMonthHandler or the xyHandler? the answer is, the /items/:x/:y route will overwrite the route and handler to xyHandler where the last one takes precedence.
The best we could, from someone definging those three routes is ending up with..
/items/:category => categoryHandler (urlParams: category)
/items/:x/:y => xyHandler (urlParams: x, y)

let me know what you think. but I'm still not convinced which is better / less confusing

Yeah, I totally get how things can quickly drift into being ambiguous and unclear. The httprouter and many of it's variants don't handle the suffix differences but Echo especially does a great job of getting the matching right (so can support routes that Gin, for instance, can't). I think if the routes are truly ambiguous as your yearMonth/xy example then all bets are off (without some additional constraint such as regex matches for a param).
The main use case I have actually has a static suffix (like /thumb.jpg) which disambiguates the route. I guess that could boil down to having something like:
/:name/user
/:id/order
That seems to match the type of thing you say could be supported which would be great if that's possible. Like I said, the route did match correctly in terms of getting to the right handler, it just didn't have the right param names set.
Thanks again for looking into this!

can you show me some sample code of your main use case like you mentioned with the suffix..? I don't fully understand that part yet.
also, any chance you can show me a gist of how echo works for these cases too..? I'm just on the road for the rest of the week but I'd like to come to the best possible solution

I appreciate there may be strong opposition to this, but +1 for regular expression matching. I'm finding this essential when migrating legacy code.

@jhngrant yea, I don't see that getting implemented soon by me, I'm quite busy with work on our actual platform, but hopefully someone submits a PR for that one day. I have some stubbed in code for regexp matching in the tree already

Good to hear that Chi does not rule out regexp - I wasn't aware. I'll endeavor to make a contribution.

@jhngrant :) https://github.com/pressly/chi/blob/master/tree.go#L47 and https://github.com/pressly/chi/blob/master/tree.go#L326-L327
for url param syntax, I was thinking either /:id([0-9]+) or #id^[0-9]+$ or /#id([0-9]+) .. I think the first or last one is best. example would be ... /users/#id([0-9]+) and /users/#username([a-z]+)

if you get any success tho, perhaps open a new issue where we can discuss it

@pkieltyka Sure, here's an example. I have some images that are stored in either AWS or GCS. The files in AWS are in a year / month structure and the ones in GCS are just based solely on the id. The routes using Echo (e being the echo router) would be:
e.Get("/:year/:month/:id/thumb.jpg", awsThumbnailHandler)
e.Get("/:id/thumb.jpg", gcsThumbnailHandler)

Both handlers are correctly called for the different URLs but the gcsThumbnailHandler currently gets a year parameter instead of the id which is confusing.
The suffix also comes into play with other handlers for things like ../preview.jpg URLs, tiles etc...
Maybe I should add a PR with some failing tests? I know, also including the code that then fixes them would be better ...

well, for you to just get by, I recommend just keep the same name for the url param and keep going. like /:year_id/:month/:id/thumb.jpg and /:year_id/thumb.jpg`.
no need for test case, I have it already, Im just trying to still figure out if its worth supporting the edge case. I'll try out echo to see how they'd work with the /:x/:y case we talked about above

yeah, that's what I'm doing ... just figured it may save someone the same initial confusion when just one route param didn't seem to work (esp. as it could be adding another route, someplace else that breaks it).

Awesome

On Aug 25, 2016, at 9:50 AM, Simon Green<EMAIL_ADDRESS>wrote:
yeah, that's what I'm doing ... just figured it may save someone the same initial confusion when just one route param didn't seem to work (esp. as it could be adding another route, someplace else that breaks it).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

for your original example @pkieltyka
/items/:category => categoryHandler
/items/:year/:month => yearMonthHandler
/items/:x/:y => xyHandler

Other routers like httprouter and httptreemux both panic when registering the xy version as it's an ambiguous match.
Basically, any method+path pair that doesn't result in a unique mapping generates a panic at setup time. (last I checked)
I think that's much preferred over last one registered "wins"

I'm having a similar issue. I have two routes:
/maps/:map_name/:z/:x/:y
/maps/:map_name/:layer_name/:z/:x/:y

When calling chi.RouteContext(r.Context()) on a request made to /maps/mymap/mylayer/1/2/3.vector.pbf I get the following values (formatted for easier reading):
&{
  URLParams:[
    {Key:map_name Value:mymap}
    {Key:z Value:mylayer} // this should be "1"
    {Key:x Value:1}
    {Key:y Value:2}
    {Key:y Value:3.vector.pbf} // why a second "y" value?
  ]
  RoutePath:
    RoutePattern:/maps/:map_name/:layer_name/:z/:x/:y
    RoutePatterns:[/maps/:map_name/:layer_name/:z/:x/:y]
  }

A few things to note:

it looks like a second "y" value was generated.
the "layer_name" parameter has disappeared and been replaced with the "z" value

This is only problematic when I have both routes defined.

Any plans to fix that?

solved by v3 release 02e6bbdfd14640d8c1beb15ec3a38140400fb5c2
See complete CHANGELOG for v3: https://github.com/go-chi/chi/blob/master/CHANGELOG.md


[B9] Magic Forest biome never generates

A friend and I were trying out the new Thaumcraft beta on a private server, and decided to live in a magic forest biome.
After searching for a couple hours, a decent portion of which was flying in creative, I changed I:biomeMagicalForestWeight to 100. I flew around with the new generation for about 15 minutes before trying to set I:dimensionOuterId to 0. I flew around again afterwards without finding anything. Attempted again in SSP with both configuration states.
Is the biome generating for anyone else?
Forge version: <IP_ADDRESS>55
Mod list:

Baubles-1.12-1.5.2
Thaumcraft-1.12.2-6.1.BETA9

Nope, magic forest generation was actually broken.


Argument 1 to "DatetimeIndex" has incompatible type "dict[str, str]"

import pandas as pd

anomalies = pd.DatetimeIndex({
    "Jan. 1, 2008": "New Year’s Day",
    "Jan. 21, 2008": "Martin Luther King Jr. Day",
    "Feb. 18, 2008": "Washington’s Birthday",
    "Mar. 9, 2008": "Anomaly day",
    "May 26, 2008": "Memorial Day",
    "Jul. 4, 2008": "Independence Day",
    "Sep. 1, 2008": "Labor Day",
    "Oct. 13, 2008": "Columbus Day",
    "Nov. 11, 2008": "Veterans Day",
    "Nov. 27, 2008": "Thanksgiving",
    "Dec. 25, 2008": "Christmas Day",
    "Jan. 1, 2009": "New Year’s Day",
    "Jan. 19, 2009": "Martin Luther King Jr. Day",
    "Feb. 16, 2009": "Washington’s Birthday",
    "Mar. 8, 2009": "Anomaly day",
})

dict[str, str] is not officially documented but Iterable[str] (excluding str itself) might be "array-like" and would allow dict[str, Any].

Btw. I have a potential workaround for the Iterable[str] vs str, but it's not sure if it will be accepted: https://github.com/python/cpython/issues/112319

Btw. I have a potential workaround for the Iterable[str] vs str, but it's not sure if it will be accepted: python/cpython#112319

In pandas we use https://github.com/python/typing/issues/256#issuecomment-1732414512 (but that is for a Sequence, not an Iterable - but Sequence might be more array-like than any iterable).


Merge upstream changes

Bringing the repo's further in sync again - draft because only superficially tested.
Needs a migration script for the histories as described in #35

we can't apply the histories-in-wrong collection fix until we make some db changes to fix the histories (otherwise old histories from cve5 cve's will not appear anymore).

with #97 now merged the diff has gotten a lot smaller, https://github.com/apache/security-vulnogram/compare/main...apache:security-vulnogram:merge-upstream-changes , will review/test before PR'ing again


Getting results from a different db

Type: Bug
I am connected to an SQL server through VPN. At random times I receive results from a different database with a similar schema.
I run e.g. "select * from customers" and I get the customers from the database "mydb" instead of the database "mydb_test" where I am currently at (both databases are on the same server). If I change the databases back and forth from the "Database:" dropdown at the top then the problem seems to be fixed but then it appears again. I have noticed that the problem shows mainly if I've been idle for a while.
Azure Data Studio version: azuredatastudio 1.47.0 (c7c2b2f21505562d21972d4c135119d00806db4f, 2023-11-07T17:19:19.203Z)
OS version: Darwin arm64 23.1.0
Restricted Mode: No
Preview Features: Disabled
Modes:

System Info

Item
Value

CPUs
Apple M1 (8 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
1, 1, 1

Memory (System)
16.00GB (0.05GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (1)

Extension
Author (truncated)
Version

agent
Mic
0.49.0

@cyberdrome
Can you enable capturing logs as per above comment, and when you do reproduce the issue, retrieve logs and upload them here. Please make sure to mask any servername or any other sensitive data as needed.

please reopen if logs can be provided, as requested above.


Fix travis cobertura-maven-plugin report

Changes Unknown when pulling a0a87283e802b142ad7a5a91cce354921cb939f1 on yiming187:cobertura into ** on ctripcorp:master**.

Current coverage is 32.44%

Merging #100 into master will increase coverage by +22.08% as of a8ec331

@@            master    #100   diff @@
======================================
  Files           58      96    +38
  Stmts         1061    1982   +921
  Branches       129     230   +101
  Methods          0       0
======================================
+ Hit            110     643   +533
- Partial          7      42    +35
- Missed         944    1297   +353

Review entire Coverage Diff as of a8ec331

Powered by Codecov. Updated on successful CI builds.


Feature local notification

please merge this feature into master.
See : https://developer.sinnerschrader-mobile.com/ios-how-to-remove-a-notification-programmatically-from-ios-notification-center/582/

TODO: Replace header of files to match S2MToolbox instead of S2MLocalNotification + see comments
Good addition :+1:


GatsbyJS Integration

- Do you want to request a feature or report a bug?
feature
- What is the current behavior?
It is quite hard to set up a (customized) netlify-CMS on GatsbyJS.
- What is the expected behavior?
A gatsby plugin which integrates netlify-CMS nicely in Gatsby. Gatsby is based on React, hence the parameter for the registerPreviewTemplate function could be automatical generated.
Also the "Hot-Reload" function from Gatsby is great function when customizing the CMS.
A simpler alternative would be a starter-template (#16) for GatsbyJS using registerPreviewTemplate.

@zionis137 Have you seen this starter template yet: https://github.com/AustinGreen/gatsby-starter-netlify-cms?


“Failed to download TypeScript language server”

Check for existing issues

[X] Completed (I don’t think #509 is identical)

Describe the bug / provide steps to reproduce it
Open a folder containing a TypeScript file.
Environment
Zed: v0.75.2 (stable)
OS: macOS 12.6.3
Memory: 64 GiB
Architecture: aarch64
If applicable, add mockups / screenshots to help explain present your vision of the feature
Language server error: TypeScript

failed to run npm info

Caused by:
    No such file or directory (os error 2)

If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.
If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.
2023-03-10T10:07:20 [INFO] ========== starting zed ==========
2023-03-10T10:07:20 [INFO] Opening main db
2023-03-10T10:07:20 [INFO] set environment variables from shell:/bin/zsh, path:/opt/homebrew/bin:/opt/homebrew/sbin:/Users/max_duval/.deno/bin:/Users/max_duval/Library/pnpm:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin:/Library/Apple/usr/bin:/Users/max_duval/.cargo/bin
2023-03-10T10:07:20 [INFO] Opening main db
2023-03-10T10:07:20 [INFO] open paths ["/Users/max_duval/Code/dotcom-rendering"]
2023-03-10T10:07:20 [INFO] Opening main db
2023-03-10T10:07:20 [ERROR] No path stored for this editor
2023-03-10T10:07:20 [ERROR] No path stored for this editor
2023-03-10T10:07:31 [ERROR] no cached binary
2023-03-10T10:07:31 [ERROR] failed to run npm info

Same issue and env as @DanielMSchmidt
fish with nvm
2023-03-12T04:57:14 [INFO] ========== starting zed ==========
2023-03-12T04:57:14 [INFO] Opening main db
2023-03-12T04:57:14 [INFO] Opening main db
2023-03-12T04:57:14 [INFO] open paths ["/Users/manu/developer/@exp/gather64"]
2023-03-12T04:57:14 [INFO] Opening main db
2023-03-12T04:57:14 [INFO] set environment variables from shell:/opt/homebrew/bin/fish, path:/Users/manu/Library/Android/sdk/emulator:/Users/manu/bin:/opt/homebrew/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/manu/Library/Android/sdk/tools:/Users/manu/Library/Android/sdk/platform-tools:/Users/manu/Library/Android/sdk/tools/bin
2023-03-12T04:57:14 [ERROR] no cached binary
2023-03-12T04:57:14 [ERROR] failed to run npm info

I also use a node version manager: fnm

I do have a default nvm alias for fish and other shells
In any shell that I open (sh, bash, zsh), node is available as an executable.
❯ nvm ls
       v16.14.0
       v18.12.0
default -> 16 (-> v16.14.0)

Upgrading my default node version to 18 solved this problem for me.
If anyone showing failed to execute npm info: error could try the same.

No such luck for me, @yuche
Upgraded Zed to today's release also
Zed: v0.76.1 (stable)
OS: macOS 13.2.1
Memory: 32 GiB
Architecture: aarch64

Zed: 0.77.3
OS: macOS 12.4
Using asdf and node 14.18.3
Also got
2023-03-16T19:46:20 [ERROR] failed to execute npm info:
stdout: "\nUsage: npm <command>\n\nwhere <command> is one of:\n    access, adduser, audit, bin, bugs, c, cache, ci, cit,\n    clean-install, clean-install-test, completion, config,\n    create, ddp, dedupe, deprecate, dist-tag, docs, doctor,\n    edit, explore, fund, get, help, help-search, hook, i, init,\n    install, install-ci-test, install-test, it, link, list, ln,\n    login, logout, ls, org, outdated, owner, pack, ping, prefix,\n    profile, prune, publish, rb, rebuild, repo, restart, root,\n    run, run-script, s, se, search, set, shrinkwrap, star,\n    stars, start, stop, t, team, test, token, tst, un,\n    uninstall, unpublish, unstar, up, update, v, version, view,\n    whoami\n\nnpm <command> -h  quick help on <command>\nnpm -l            display full usage info\nnpm help <term>   search for help on <term>\nnpm help npm      involved overview\n\nSpecify configs in the ini-formatted file:\n    /Users/swain/.npmrc\nor on the command line via: npm <command> --key value\nConfig info can be viewed via: npm help<EMAIL_ADDRESS>/Users/swain/.asdf/installs/nodejs/14.18.3/lib/node_modules/npm\n\n"
stderr: ""

I also experienced this issue for Typescript and HTML:
Language server error: TypeScript

failed to run npm info

Caused by:
    No such file or directory (os error 2)

I use fish with nvm. Macbook Pro M1 Pro, MacOS 13.2.1.

I did some messing around, and can guess why this is happening (at least for fish shell users)
And have a workaround.
In the absence of native fish support for nvm, they recommend using one of several options, including bass (and its recommended way of configuring nvm). Most users create a function (~/.config/fish/functions/nvm.fish) to wrap this functionality. This works, because now fish recognizes nvm as a valid command, and calls this wrapper.
Problem is, this does not update the default fish path to add the node path to it.
When Zed starts up, it reads the path, and does not find node in the path, and errors out
The workaround (that worked for me) was to use one of the other recommendations from the nvm site, which is plugin-nvm.
I deleted the nvm function that I had created, installed this plugin (I was already using OMF), and voila!
This plugin seems to run on startup, and adds the nvm paths to the system path.
Hope this helps

@manurana Unfortunately, your solution is not working for me. :(

@manurana Unfortunately, your solution is not working for me. :(

The key (I think) is that the path shown in the Zed startup log should contain the path to the node executable. You should be able to also see this in
echo $PATH

I tried to solve for that.
You might have to figure out a specific solution here. Sorry!

Why is this closed, @ForLoveOfCats? It's still not working for me and none of the provided solutions work.

We close issues when they're fixed internally, not when we ship said fixes. In our next release is a new system which allows Zed to manage its own copy of Node for language servers which require Node to install and run.
This issue would arise whenever Node was not installed or was too significantly old, which will no longer be an issue


Feature.migrate to inheritance 24

@pskergan
This pull request contains code to migrate from the get_attr, hasattr, getattr pattern to standard inheritance.    This seems safer, and more readable.
NOTE:  There's also a minor bufix in delete_all_listeners.

Only thing I noticed was an inserted pp statement, so nothing to hold oit up.


How to do a meshlib of levelblocks in godot?

I want to align all the blocks with each other, but I can’t do this without using a grid map. Is there a way to build a mesh library with level blocks in Godot? I’ve tried placing them side by side and exporting a mesh library in Godot, but it’s not working. When I try to load it into the grid map, nothing shows up. Can someone help me?

LevelBlocks will not work as a MeshLibrary, since it doesn't use mesh resources, but rather generates the meshes dynamically at runtime.
You'll just have to make use of Godot's snapping features to move things around on a grid. You can turn on snapping from the 3D view toolbar icon with the magnet and dots (or pressing Y by default), and configure the snapping interval from Transform -> Configure Snap. You can also hold Control while moving objects to temporarily turn on grid snapping, but if you are using a lot of LevelBlocks, it's probably easier to just turn on snapping permanently.


Event Implementation Progress Tracker

Event Progress Trackers: SpongeForge | SpongeCommon | SpongeVanilla
Progress tracker for events
Please keep this updated Sponge devs!
achievement.GrantAchievementEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

achievement.GrantAchievementEvent.TargetPlayer
Refer to SpongeForge or SpongeVanilla
action.FishingEvent.HookEntity

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

action.FishingEvent.Start

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

action.FishingEvent.Stop

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

action.LightningEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

action.LightningEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

action.LightningEvent.Strike
Refer to SpongeForge or SpongeVanilla
action.SleepingEvent.Finish
Refer to SpongeForge or SpongeVanilla
action.SleepingEvent.Post

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

action.SleepingEvent.Pre
Refer to SpongeForge or SpongeVanilla
action.SleepingEvent.Tick

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.ChangeBlockEvent.Break
Refer to SpongeForge or SpongeVanilla
block.ChangeBlockEvent.Decay

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.ChangeBlockEvent.Grow

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.ChangeBlockEvent.Modify

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.ChangeBlockEvent.Place
Refer to SpongeForge or SpongeVanilla
block.ChangeBlockEvent.Post

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.ChangeBlockEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.CollideBlockEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.CollideBlockEvent.Impact

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.InteractBlockEvent.Primary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.InteractBlockEvent.Primary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.InteractBlockEvent.Secondary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.InteractBlockEvent.Secondary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.NotifyNeighborBlockEvent
Refer to SpongeForge or SpongeVanilla
block.TickBlockEvent.Random

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.TickBlockEvent.Scheduled

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.BrewingEvent.Finish
Refer to SpongeForge or SpongeVanilla
block.tileentity.BrewingEvent.Interrupt

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.BrewingEvent.Start
Refer to SpongeForge or SpongeVanilla
block.tileentity.BrewingEvent.Tick

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.ChangeSignEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

block.tileentity.SmeltEvent.ConsumeFuel

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.SmeltEvent.Finish

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.SmeltEvent.Interrupt

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.SmeltEvent.Start

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.SmeltEvent.Tick

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

block.tileentity.TargetTileEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

command.SendCommandEvent
Refer to SpongeForge or SpongeVanilla
command.TabCompleteEvent.Chat

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

command.TabCompleteEvent.Command

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

data.ChangeDataHolderEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

data.ChangeDataHolderEvent.ValueChange

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

economy.EconomyTransactionEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.AttackEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.BreedEntityEvent.Breed

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.BreedEntityEvent.FindMate

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityEquipmentEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityEquipmentEvent.TargetHumanoid

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityEquipmentEvent.TargetLiving

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityEquipmentEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityExperienceEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityPotionEffectEvent.Expire

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityPotionEffectEvent.Gain

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ChangeEntityPotionEffectEvent.Remove

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.CollideEntityEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.CollideEntityEvent.Impact

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ConstructEntityEvent.Post
Refer to SpongeForge or SpongeVanilla
entity.ConstructEntityEvent.Pre

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.DamageEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.DestructEntityEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.DestructEntityEvent.Death
Refer to SpongeForge or SpongeVanilla
entity.ExpireEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.ExpireEntityEvent.TargetItem
Refer to SpongeForge or SpongeVanilla
entity.HarvestEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.HarvestEntityEvent.TargetHumanoid

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.HarvestEntityEvent.TargetLiving

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.HarvestEntityEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.HealEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.IgniteEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.InteractEntityEvent.Primary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.InteractEntityEvent.Primary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.InteractEntityEvent.Secondary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.InteractEntityEvent.Secondary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.LeashEntityEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.MoveEntityEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.MoveEntityEvent.Teleport

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.MoveEntityEvent.Teleport.Portal

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.RideEntityEvent.Dismount
Refer to SpongeForge or SpongeVanilla
entity.RideEntityEvent.Mount
Refer to SpongeForge or SpongeVanilla
entity.SpawnEntityEvent
Refer to SpongeForge or SpongeVanilla
entity.SpawnEntityEvent.ChunkLoad

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.SpawnEntityEvent.Custom

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.SpawnEntityEvent.Spawner
Refer to SpongeForge or SpongeVanilla
entity.TameEntityEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.UnleashEntityEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.ai.AITaskEvent.Add

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.ai.AITaskEvent.Remove

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.explosive.DefuseExplosiveEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.explosive.DefuseExplosiveEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.explosive.DetonateExplosiveEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.explosive.PrimeExplosiveEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.explosive.PrimeExplosiveEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.item.ItemMergeItemEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.AnimateHandEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.ChangeGameModeEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.ChangeGameModeEvent.TargetPlayer

[x] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.ChangeLevelEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.ChangeLevelEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.player.KickPlayerEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.player.PlayerChangeClientSettingsEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

entity.living.humanoid.player.ResourcePackStatusEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

entity.living.humanoid.player.RespawnPlayerEvent
Refer to SpongeForge or SpongeVanilla
entity.projectile.LaunchProjectileEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

game.GameReloadEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

game.state.GameAboutToStartServerEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameConstructionEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameInitializationEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameLoadCompleteEvent
Refer to SpongeForge or SpongeVanilla
game.state.GamePostInitializationEvent
Refer to SpongeForge or SpongeVanilla
game.state.GamePreInitializationEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameStartedServerEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameStartingServerEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameStoppedEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

game.state.GameStoppedServerEvent
Refer to SpongeForge or SpongeVanilla
game.state.GameStoppingEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

game.state.GameStoppingServerEvent
Refer to SpongeForge or SpongeVanilla
item.inventory.ChangeInventoryEvent.Equipment

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ChangeInventoryEvent.Held

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ChangeInventoryEvent.Pickup
Refer to SpongeForge or SpongeVanilla
item.inventory.ChangeInventoryEvent.Transfer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ClickInventoryEvent.Creative

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ClickInventoryEvent.Double

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Drag.Primary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Drag.Secondary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Drop.Full

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Drop.Outside.Primary

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ClickInventoryEvent.Drop.Outside.Secondary

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ClickInventoryEvent.Drop.Single

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.ClickInventoryEvent.Middle

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.NumberPress

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Primary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Secondary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Shift.Primary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.ClickInventoryEvent.Shift.Secondary

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.DropItemEvent.Custom

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.DropItemEvent.Destruct

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.DropItemEvent.Dispense
Refer to SpongeForge or SpongeVanilla
item.inventory.DropItemEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.InteractInventoryEvent.Close

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

item.inventory.InteractInventoryEvent.Open
Refer to SpongeForge or SpongeVanilla
item.inventory.InteractItemEvent.Primary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.InteractItemEvent.Primary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.InteractItemEvent.Secondary.MainHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.InteractItemEvent.Secondary.OffHand

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.UseItemStackEvent.Finish
Refer to SpongeForge or SpongeVanilla
item.inventory.UseItemStackEvent.Replace

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.UseItemStackEvent.Reset

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

item.inventory.UseItemStackEvent.Start
Refer to SpongeForge or SpongeVanilla
item.inventory.UseItemStackEvent.Stop
Refer to SpongeForge or SpongeVanilla
item.inventory.UseItemStackEvent.Tick
Refer to SpongeForge or SpongeVanilla
message.MessageChannelEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

message.MessageChannelEvent.Chat
Refer to SpongeForge or SpongeVanilla
network.BanIpEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

network.ChannelRegistrationEvent.Register

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

network.ChannelRegistrationEvent.Unregister

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

network.ClientConnectionEvent.Auth

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

network.ClientConnectionEvent.Disconnect
Refer to SpongeForge or SpongeVanilla
network.ClientConnectionEvent.Join
Refer to SpongeForge or SpongeVanilla
network.ClientConnectionEvent.Login

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

network.PardonIpEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

network.rcon.RconConnectionEvent.Connect

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

network.rcon.RconConnectionEvent.Disconnect

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

network.rcon.RconConnectionEvent.Login

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

server.ClientPingServerEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

server.query.QueryServerEvent.Basic

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

server.query.QueryServerEvent.Full

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

service.ChangeServiceProviderEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

statistic.ChangeStatisticEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

statistic.ChangeStatisticEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

user.BanUserEvent

[x] Fired from all relevant parts of the Minecraft/Sponge code
[x] In bleeding branch

user.BanUserEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

user.PardonUserEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

user.PardonUserEvent.TargetPlayer

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChangeWorldGameRuleEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChangeWorldWeatherEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChunkPreGenerationEvent.Cancelled

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChunkPreGenerationEvent.Complete

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChunkPreGenerationEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ChunkPreGenerationEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ConstructPortalEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ConstructWorldPropertiesEvent

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ExplosionEvent.Detonate
Refer to SpongeForge or SpongeVanilla
world.ExplosionEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.ExplosionEvent.Pre
Refer to SpongeForge or SpongeVanilla
world.GenerateChunkEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.GenerateChunkEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.LoadWorldEvent
Refer to SpongeForge or SpongeVanilla
world.SaveWorldEvent
Refer to SpongeForge or SpongeVanilla
world.SaveWorldEvent.Post

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.SaveWorldEvent.Pre

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.UnloadWorldEvent
Refer to SpongeForge or SpongeVanilla
world.chunk.ForcedChunkEvent
Refer to SpongeForge or SpongeVanilla
world.chunk.LoadChunkEvent
Refer to SpongeForge or SpongeVanilla
world.chunk.PopulateChunkEvent.Populate

[ ] Fired from all relevant parts of the Minecraft/Sponge code
[ ] In bleeding branch

world.chunk.PopulateChunkEvent.Post
Refer to SpongeForge or SpongeVanilla
world.chunk.PopulateChunkEvent.Pre
Refer to SpongeForge or SpongeVanilla
world.chunk.UnforcedChunkEvent
Refer to SpongeForge or SpongeVanilla
world.chunk.UnloadChunkEvent
Refer to SpongeForge or SpongeVanilla

I'm working in https://github.com/SpongePowered/SpongeCommon/tree/feature/eventsme4502
I've so far just implemented BlockRandomTickEvent

Should I check off the ones I've done in feature/events, or wait till they're in master?

This should only be for events in master. You could edit the issue to make a note that it is done in another branch (then finalize by ticking the box when merged)

I've checked off the ones ive done, to show people they have already been done. This should be a list of what needs to be done, versus what is in master.

Added LeafDecayEvent

@simon816: All of the fishing events are fired (except for the Human ones, since there's no support for Humans atm).

I just removed EntityChangeHealthEvent from here, due to API changes.

When implementing a CauseTracked event, please update it on https://github.com/SpongePowered/SpongeAPI/issues/839 as well.

ChangeGameModeEvent.TargetHuman is gone
ChangeGameModeEvent.TargetPlayer: https://github.com/SpongePowered/SpongeCommon/pull/376
PlayerChangeClientSettingsEvent: https://github.com/SpongePowered/SpongeCommon/pull/377

@kashike Updated

block.GrowBlockEvent and block.MoveBlockEvent have been removed in SpongePowered/SpongeAPI#1001

We need this to be updated, @simon816?

Please keep this updated Sponge devs!

Guess we forgot about this.
I'll go through and update the list of events we have.
It will take several days for me to verify they are fully implemented (involves setting up event handlers and verifying they fire whenever they should according to the event's javadoc)

@simon816 if you're going through that, could you store the cause that gets thrown as well? Just in a gist or whatever is fine, it'd save me some time testing the cause refactor.

Updated the list of events
Events added
block.ChangeBlockEvent.Pre
block.CollideBlockEvent.Impact
block.InteractBlockEvent.Primary.MainHand
block.InteractBlockEvent.Primary.OffHand
block.InteractBlockEvent.Secondary.MainHand
block.InteractBlockEvent.Secondary.OffHand
block.TickBlockEvent.Random
block.TickBlockEvent.Scheduled
entity.AttackEntityEvent
entity.CollideEntityEvent.Impact
entity.InteractEntityEvent.Primary.MainHand
entity.InteractEntityEvent.Primary.OffHand
entity.InteractEntityEvent.Secondary.MainHand
entity.InteractEntityEvent.Secondary.OffHand
entity.MoveEntityEvent
entity.MoveEntityEvent.Teleport
entity.MoveEntityEvent.Teleport.Portal
entity.RideEntityEvent.Dismount
entity.RideEntityEvent.Mount
entity.explosive.DefuseExplosiveEvent.Post
entity.explosive.DefuseExplosiveEvent.Pre
entity.explosive.DetonateExplosiveEvent
entity.explosive.PrimeExplosiveEvent.Post
entity.explosive.PrimeExplosiveEvent.Pre
entity.living.humanoid.AnimateHandEvent
entity.living.humanoid.HandInteractEvent
game.GameReloadEvent
item.inventory.InteractItemEvent.Primary.MainHand
item.inventory.InteractItemEvent.Primary.OffHand
item.inventory.InteractItemEvent.Secondary.MainHand
item.inventory.InteractItemEvent.Secondary.OffHand
item.inventory.UseItemStackEvent.Replace
item.inventory.UseItemStackEvent.Reset
message.MessageChannelEvent
world.ChunkPreGenerationEvent.Cancelled
world.ChunkPreGenerationEvent.Complete
world.ChunkPreGenerationEvent.Post
world.ChunkPreGenerationEvent.Pre
world.SaveWorldEvent.Post
world.SaveWorldEvent.Pre
world.ConstructWorldPropertiesEvent
Events removed
Events that were previously implemented
block.InteractBlockEvent.Primary
block.InteractBlockEvent.Secondary
block.TickBlockEvent
entity.DisplaceEntityEvent.Move
entity.DisplaceEntityEvent.Move.TargetHumanoid
entity.DisplaceEntityEvent.Move.TargetLiving
entity.DisplaceEntityEvent.Move.TargetPlayer
entity.DisplaceEntityEvent.Teleport
entity.DisplaceEntityEvent.Teleport.TargetHumanoid
item.inventory.CreativeInventoryEvent.Click
item.inventory.CreativeInventoryEvent.Drop
world.ConstructWorldEvent
Partially implemented
entity.DisplaceEntityEvent.TargetHumanoid
entity.InteractEntityEvent.Primary
Never were implemented
block.GrowBlockEvent
block.MoveBlockEvent
entity.DisplaceEntityEvent.Teleport.TargetLiving
entity.DisplaceEntityEvent.Teleport.TargetPlayer
List of 'base' events
Events not creatable from SpongeEventFactory
Event
action.CollideEvent
action.FishingEvent
action.LightningEvent
action.SleepingEvent
block.ChangeBlockEvent
block.InteractBlockEvent
block.InteractBlockEvent.Primary
block.InteractBlockEvent.Secondary
block.TickBlockEvent
block.tileentity.BrewingEvent
block.tileentity.SmeltEvent
command.TabCompleteEvent
entity.BreedEntityEvent
entity.ChangeEntityPotionEffectEvent
entity.ConstructEntityEvent
entity.InteractEntityEvent
entity.InteractEntityEvent.Primary
entity.InteractEntityEvent.Secondary
entity.RideEntityEvent
entity.ai.AITaskEvent
entity.explosive.DefuseExplosiveEvent
entity.explosive.PrimeExplosiveEvent
item.inventory.ChangeInventoryEvent
item.inventory.ClickInventoryEvent
item.inventory.ClickInventoryEvent.Drag
item.inventory.ClickInventoryEvent.Drop
item.inventory.ClickInventoryEvent.Drop.Outside
item.inventory.ClickInventoryEvent.Shift
item.inventory.DropItemEvent
item.inventory.InteractInventoryEvent
item.inventory.InteractItemEvent
item.inventory.InteractItemEvent.Primary
item.inventory.InteractItemEvent.Secondary
item.inventory.UseItemStackEvent
message.MessageEvent
network.ChannelRegistrationEvent
network.ClientConnectionEvent
network.rcon.RconConnectionEvent
server.query.QueryServerEvent
world.ChunkPreGenerationEvent
world.ExplosionEvent
world.GenerateChunkEvent
world.chunk.PopulateChunkEvent
Events creatable from SpongeEventFactory but determined to be 'base' events
action.InteractEvent
action.CollideEvent.Impact
block.TargetBlockEvent
entity.AffectEntityEvent
entity.TargetEntityEvent
entity.explosive.TargetExplosiveEvent
entity.explosive.TargetFusedExplosiveEvent
entity.item.TargetItemEvent
entity.living.TargetAgentEvent
entity.living.TargetLivingEvent
entity.living.humanoid.HandInteractEvent
entity.living.humanoid.TargetHumanoidEvent
entity.living.humanoid.player.TargetPlayerEvent
entity.projectile.TargetProjectileEvent
game.state.GameStateEvent
item.inventory.AffectItemStackEvent
item.inventory.AffectSlotEvent
item.inventory.TargetContainerEvent
item.inventory.TargetInventoryEvent
server.ClientPingServerEvent.Response (Not even an event)
server.ClientPingServerEvent.Response.Players
user.TargetUserEvent
world.TargetWorldEvent
world.chunk.TargetChunkEvent

Status?

@simon816 Any updates ? 😊

Update this plz.

Sadly, this is issue has not been updated in a long time, as a result most of the events have been implemented and some of them are no longer relevant.
Keeping this open would be misleading.
We hope to create a new updated Event Implementation Progress for API 8


GEOMESA-3245 Upgrade to GeoTools 28, GeoServer 2.22

Hints are no longer shared when copying a Query, requiring some refactoring to pass along configured hints
Remove benchmarks module as it's not used or maintained
Remove 'caching' data store config as unused

rolling this into the massive 4_0_0 pr


fix: correct logic checking for successful ID mapping in REL::ID::id2offset()

Should we consider changing the verbiage of the error message up to avoid users thinking the plugin doesn't actually support VR, since it is more likely that they just need to update their Address Library install if they are seeing this message?

I'm not wedded to the language.

Should I wait for you to fix the language or just merge this in?

I will update the wording momentarily

I have now adjusted the wording to something I think is more appropriate. If you agree then feel free to merge at will

Thanks!


Possible netlink leak on 3.29.1

We recently updated calico to 3.29.1 on one of our staging clusters and found that after a few hours there was a clear upward trend in the number of file descriptors held by calico-node pods.

Checking on a running instance after a couple days, we found that the calico-node -felix process had nearly 6000 file descriptors according to lsof, nearly all of which were like the following:
# lsof -p 1517383 | tail
calico-no 1517383 root 5778u  netlink                 0t0  689245146 ROUTE
calico-no 1517383 root 5779u  netlink                 0t0  688913733 ROUTE
calico-no 1517383 root 5780u  netlink                 0t0  689385180 ROUTE
calico-no 1517383 root 5781u  netlink                 0t0  689391746 ROUTE
calico-no 1517383 root 5782u  netlink                 0t0  689402663 ROUTE
calico-no 1517383 root 5783u  netlink                 0t0  689407738 ROUTE
calico-no 1517383 root 5784u  netlink                 0t0  689296536 ROUTE
calico-no 1517383 root 5785u  netlink                 0t0  689301559 ROUTE
calico-no 1517383 root 5790u  netlink                 0t0  689395559 ROUTE
calico-no 1517383 root 5791u  netlink                 0t0  689400833 ROUTE

Deleting that pod made dropped the fds although the new pod is starting the trend all over again.
Let me know if there is any other debugging data I can provide.
Expected Behavior
A relatively steady state of file descriptors for a calico-node pod.
Current Behavior
A steady increase in open file descriptors.
Possible Solution

Steps to Reproduce (for bugs)

Just deploy calico 3.29.1 afaict

Context
This is ok for now in our staging environment but are worried about going to production this way. It is entirely possible this is due to some weird config on our side but nothing is jumping out at me so far.
Your Environment

Calico version: 3.29.1
Calico dataplane (iptables, windows etc.): iptables
Orchestrator version (e.g. kubernetes, mesos, rkt): kubernetes
Operating System and version: Linux ip-10-213-23-129 6.8.0-1018-aws #19~22.04.1-Ubuntu SMP Wed Oct  9 16:48:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Link to your project (optional):

Uh oh, likely to be one of my PRs to rework route programming:

https://github.com/projectcalico/calico/pull/8418
https://github.com/projectcalico/calico/pull/9139
https://github.com/projectcalico/calico/pull/8979

Any interesting logs in calico-node from route_table.go?  I'd expect re-opening netlink sockets after a failure, might help to know which failure you're hitting (if any).

Actually, think it might be this one: https://github.com/projectcalico/calico/pull/9135  some of the calls to netlink.XXX got converted to use a Handle (which is a socket under the covers) and looks like we might have forgotten to close the Handle when done.

Well that was quick. Just responding to confirm I'm not seeing any logs from route_table.go just from poking around a bit.

@imbstack Is it possible for you to test an image with the fix? Image: docker.io/calico/node:v3.29.1-9-g95d2ad73b69e

Manifests here if that's more convenient; this is a nightly build of v3.29.next https://2024-12-19-v3-29-viper.docs.eng.tigera.net/

I've only had it deployed for an hour or so but it definitely looks better to me. At this point before the patch a pod would've had over 400 open fd but this time around they are sitting at ~160 and its looking flat!
I'll report back here if I see something different in the next couple days but this looks fixed to me. Thanks for the quick turnaround!

Thanks for testing this.

@imbstack Hope you did not see any FD leak.

Just checked and it's still flat! Looks fixed to me

Thank you.


Tabs: Add Best Practices and Accessibility guidelines

Summary

Add Best Practices, A11y and L10N, and related sections
Links

TDD

Lookin' really good! I'm a 👍 to ship!


Simplify scrypt in systests and reduce batch size

Motivation
Nodes in systests sporadically hang during POST init. The last message is:
initialization: continue looking for a nonce	{"startPosition": 256, "batchSize": 1048576}

It hangs because the batch size is big and init is performed on CPU (it should eventually finish, it just takes veeery long). This fix changes the batch size to match labelsPerUnit for the fastnet preset (which systests use).
Changes

reduce batch size to 128 in the fastnet preset,
reduce scrypt difficulty to the lowest possible N = 2 in the fastnet preset.

Test Plan
Existing tests pass

Failed to build a docker image.
bors merge

{"L":"ERROR","T":"2023-09-11T21:44:12.883Z","N":"a8349.post","M":"Proof is invalid: MSB value for index: 9 doesn't satisfy difficulty: 248 > 12 (label: [130, 102, 117, 246, 44, 81, 99, 77, 106, 119, 96, 59, 92, 95, 148, 235])","node_id":"a83497fcdd409b180b56907c292cb15a213021745a5d957e7495d11101d52258","module":"post","module":"post::post_impl","file":"ffi/src/post_impl.rs","line":242}

lots of errors like the one above https://grafana.spacemesh.dev/explore?orgId=1&left={"datasource":"loki-gke-dev","queries":[{"refId":"A","expr":"{namespace%3D\"test-xwcg\"} |%3D \"ERROR\"","queryType":"range","datasource":{"type":"loki","uid":"loki-gke-dev"},"editorMode":"code"}],"range":{"from":"now-12h","to":"now"}}

bors merge

bors merge

bors try

Flaky https://github.com/spacemeshos/go-spacemesh/issues/4171
bors try

Bors merge

Flaky TestAccountMeshDataStream_comprehensive
Bors merge


auto-add subfolders

In GitLab by @psimyn on Oct 23, 2017, 14:20
null

In GitLab by @tauriedavis on Nov 10, 2017, 04:08
What is the idea behind auto-adding subfolders? I have this issue as one of our design OKRs: https://gitlab.com/gitlab-org/gitlab-design/issues/76
It includes defining the different sections/subsections that will need to be added. I was going to manually add all these but not sure if the frontend team had a different idea based on this issue?

In GitLab by @tauriedavis on Nov 13, 2017, 23:53
I'm going to start adding folders manually unless there are objections @psimyn @winh :grinning:

In GitLab by @winh on Nov 14, 2017, 01:53
@tauriedavis It could be that storybook doesn't handle files in subfolders but that's probably the worst that can happen. I'm really busy getting 10.2 ready as fast as possible but if you run into any trouble while adding things manually, I can try to help next week. (or @psimyn if you have time?)

In GitLab by @tauriedavis on Nov 14, 2017, 03:55
Thanks @winh! Ill see what I can do on my own :ok_hand:

In GitLab by @gtsiolis on Jan 4, 2019, 03:56
@psimyn this is no longer relevant since storybook related code has moved to gitlab-ui, right? /cc @winh @tauriedavis

In GitLab by @psimyn on Jan 4, 2019, 06:34
yep, thanks @gtsiolis :raised_hands:

In GitLab by @psimyn on Jan 4, 2019, 06:34
closed

In GitLab by @gtsiolis on Jan 4, 2019, 18:53
Thanks @psimyn! :basketball:

In GitLab by @hfyngvason on Sep 19, 2019, 14:52
mentioned in merge request !1566


CI: asv 0.5 release causing a failure

In PRs with unrelated changes like gh-15531 the new asv version fails the "refguide check" Azure job with traceback below. Maybe I'll pin it temporarily.
2022-02-06T07:38:26.8809402Z Generating script.
2022-02-06T07:38:26.8818177Z Script contents:
2022-02-06T07:38:26.8819634Z pip install "asv>=0.4.1"
2022-02-06T07:38:26.8821155Z ========================== Starting Command Output ===========================
2022-02-06T07:38:26.8840664Z [command]/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/4fea1db0-e8f1-4af6-9cf3-991cfe58ba0e.sh
2022-02-06T07:38:27.2805040Z Collecting asv>=0.4.1
2022-02-06T07:38:27.3072908Z   Downloading asv-0.5.tar.gz (486 kB)
2022-02-06T07:38:27.3961664Z   Installing build dependencies: started
2022-02-06T07:38:29.1150758Z   Installing build dependencies: finished with status 'done'
2022-02-06T07:38:29.1185009Z   Getting requirements to build wheel: started
2022-02-06T07:38:29.7928447Z   Getting requirements to build wheel: finished with status 'error'
2022-02-06T07:38:29.7929628Z   ERROR: Command errored out with exit status 1:
2022-02-06T07:38:29.7930798Z    command: /opt/hostedtoolcache/Python/3.9.10/x64/bin/python /opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpmngw6og5
2022-02-06T07:38:29.7931788Z        cwd: /tmp/pip-install-rvb1kdv9/asv
2022-02-06T07:38:29.7932255Z   Complete output (20 lines):
2022-02-06T07:38:29.7932716Z   Traceback (most recent call last):
2022-02-06T07:38:29.7933609Z     File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py", line 280, in <module>
2022-02-06T07:38:29.7934204Z       main()
2022-02-06T07:38:29.7935016Z     File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py", line 263, in main
2022-02-06T07:38:29.7935856Z       json_out['return_val'] = hook(**hook_input['kwargs'])
2022-02-06T07:38:29.7936815Z     File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py", line 114, in get_requires_for_build_wheel
2022-02-06T07:38:29.7937750Z       return hook(config_settings)
2022-02-06T07:38:29.7938645Z     File "/tmp/pip-build-env-hmarp7mu/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 161, in get_requires_for_build_wheel
2022-02-06T07:38:29.7939295Z       return self._get_build_requires(
2022-02-06T07:38:29.7940151Z     File "/tmp/pip-build-env-hmarp7mu/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 142, in _get_build_requires
2022-02-06T07:38:29.7940776Z       self.run_setup()
2022-02-06T07:38:29.7941563Z     File "/tmp/pip-build-env-hmarp7mu/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 266, in run_setup
2022-02-06T07:38:29.7942191Z       super(_BuildMetaLegacyBackend,
2022-02-06T07:38:29.7943015Z     File "/tmp/pip-build-env-hmarp7mu/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 157, in run_setup
2022-02-06T07:38:29.7943810Z       exec(compile(code, __file__, 'exec'), locals())
2022-02-06T07:38:29.7944315Z     File "setup.py", line 292, in <module>
2022-02-06T07:38:29.7944797Z       run_setup(build_binary=True)
2022-02-06T07:38:29.7945458Z     File "setup.py", line 207, in run_setup
2022-02-06T07:38:29.7946159Z       with open('requirements-dev.txt', 'r') as f:
2022-02-06T07:38:29.7946941Z   FileNotFoundError: [Errno 2] No such file or directory: 'requirements-dev.txt'
2022-02-06T07:38:29.7947709Z   ----------------------------------------
2022-02-06T07:38:29.7949257Z ERROR: Command errored out with exit status 1: /opt/hostedtoolcache/Python/3.9.10/x64/bin/python /opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpmngw6og5 Check the logs for full command output.
2022-02-06T07:38:29.8103917Z WARNING: You are using pip version 21.2.4; however, version 22.0.3 is available.
2022-02-06T07:38:29.8105214Z You should consider upgrading via the '/opt/hostedtoolcache/Python/3.9.10/x64/bin/python -m pip install --upgrade pip' command.
2022-02-06T07:38:29.8763694Z ##[error]Bash exited with code '1'.
2022-02-06T07:38:29.8778785Z ##[section]Finishing: Install asv

This is a known asv bug, see this comment.

asv 0.5.1 has been just released, this should be fixed now.

alright, I'll close it then