Errors when compiling with CUDA 11.6

When we build paddlepaddle v2.2.2 with CUDA 11.6, it always has errors when we turn on TENSORRT. Could you give us some suggestions to resolve it ? Thank you very much!
In file included from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/util.h:36,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/internal/copy_cross_system.h:41,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/copy.h:100,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/detail/adl/copy.h:42,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/copy.inl:22,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/copy.h:90,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/allocator/copy_construct_range.inl:21,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/allocator/copy_construct_range.h:45,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/contiguous_storage.inl:23,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/contiguous_storage.h:234,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/vector_base.h:30,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/device_vector.h:26,
                 from /workspace/Paddle/paddle/fluid/inference/tensorrt/plugin/gather_nd_op_plugin.h:17,
                 from /workspace/Paddle/paddle/fluid/inference/tensorrt/convert/gather_nd_op.cc:16:
/usr/local/cuda/targets/x86_64-linux/include/cub/detail/device_synchronize.cuh:33: error: ignoring #pragma nv_exec_check_disable  [-Werror=unknown-pragmas]
 #pragma nv_exec_check_disable

In file included from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/util.h:36,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/internal/copy_cross_system.h:41,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/cuda/detail/copy.h:100,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/system/detail/adl/copy.h:42,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/copy.inl:22,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/copy.h:90,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/allocator/copy_construct_range.inl:21,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/allocator/copy_construct_range.h:45,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/contiguous_storage.inl:23,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/contiguous_storage.h:234,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/detail/vector_base.h:30,
                 from /usr/local/cuda/targets/x86_64-linux/include/thrust/device_vector.h:26,
                 from /workspace/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h:17,
                 from /workspace/Paddle/paddle/fluid/inference/tensorrt/convert/split_op.cc:16:
/usr/local/cuda/targets/x86_64-linux/include/cub/detail/device_synchronize.cuh:33: error: ignoring #pragma nv_exec_check_disable  [-Werror=unknown-pragmas]
 #pragma nv_exec_check_disable

Environment:
CUDA 11.6

This is the compilation command:
cmake .. -DWITH_PYTHON=OFF \
             -DWITH_GPU=ON \
             -DWITH_TESTING=OFF \
             -DWITH_INFERENCE_API_TEST=OFF \
             -DCMAKE_BUILD_TYPE=Release \
             -DCUDA_ARCH_NAME=Auto \
             -DON_INFER=ON \
             -DWITH_MKL=OFF \
             -DWITH_TENSORRT=ON \
             -DCMAKE_C_COMPILER=`which gcc-8` -DCMAKE_CXX_COMPILER=`which g++-8` \
&& make TARGET=SKYLAKEX -j`nproc`

@jiweibo

Add -DTENSORRT_ROOT=${your root of trt dir} to the cmake option and try.
Paddle should not have been verified on cuda11.6, currently only the version before cuda11.4 has been tested, maybe you can try to lower the cuda version

@erikguo ,
This is a known issue. The root-cause is CUB library in CUDA 11.6. There are 2 solutions to fix the error.

update CUB version to commit - 7d608bf in your local environment.
cherry-pick PaddlePaddle's commit - 40694 to your local PaddlePaddle

@jeng1220
Thank you for your great answers, I chose the first choice to do the compilation. It works.

Add -DTENSORRT_ROOT=${your root of trt dir} to the cmake option and try.
Paddle should not have been verified on cuda11.6, currently only the version before cuda11.4 has been tested, maybe you can try to lower the cuda version

Thank you for help, after I added TENSORRT_ROOT, I can compile successfully.  However, when I tried to test with Resnet model example, I got  the following error.  Could you please give me some suggestions? thanx  @jiweibo
I compiled paddle in the docker nvcr.io/nvidia/tritonserver:22.02-py3  (in which, CUDA 11.6 AND TENSORRT 8.2.3 :
I0404 13:46:31.718532 1 model_repository_manager.cc:994] loading: ResNet50-v1.5:1
I0404 13:46:31.819061 1 paddle.cc:1095] TRITONBACKEND_ModelInitialize: ResNet50-v1.5 (version 1)
I0404 13:46:31.825222 1 paddle.cc:1138] TRITONBACKEND_ModelInstanceInitialize: ResNet50-v1.5_0 (GPU device 0)
I0404 21:46:31.849813  3236 analysis_predictor.cc:849] TensorRT subgraph engine is enabled
--- Running analysis [ir_graph_build_pass]
--- Running analysis [ir_graph_clean_pass]
--- Running analysis [ir_analysis_pass]
terminate called after throwing an instance of 'phi::enforce::EnforceNotMet'
what():

C++ Traceback (most recent call last):
0   TRITONBACKEND_ModelInstanceInitialize
1   paddle_infer::CreatePredictor(paddle::AnalysisConfig const&)
2   paddle_infer::Predictor::Predictor(paddle::AnalysisConfig const&)
3   std::unique_ptr<paddle::PaddlePredictor, std::default_deletepaddle::PaddlePredictor > paddle::CreatePaddlePredictor<paddle::AnalysisConfig, (paddle::PaddleEngineKind)2>(paddle::AnalysisConfig const&)
4   paddle::AnalysisPredictor::Init(std::shared_ptrpaddle::framework::Scope const&, std::shared_ptrpaddle::framework::ProgramDesc const&)
5   paddle::AnalysisPredictor::PrepareProgram(std::shared_ptrpaddle::framework::ProgramDesc const&)
6   paddle::AnalysisPredictor::OptimizeInferenceProgram()
7   paddle::inference::analysis::Analyzer::RunAnalysis(paddle::inference::analysis::Argument*)
8   paddle::inference::analysis::IrAnalysisPass::RunImpl(paddle::inference::analysis::Argument*)
9   paddle::inference::analysis::IRPassManager::IRPassManager(paddle::inference::analysis::Argument*)
10  paddle::inference::analysis::IRPassManager::CreatePasses(paddle::inference::analysis::Argument*, std::vector<std::string, std::allocator<std::string > > const&)
11  paddle::framework::ir::PassRegistry::Get(std::string const&) const

Error Message Summary:
InvalidArgumentError: Pass tensorrt_subgraph_pass has not been registered. Please use the paddle inference library compiled with tensorrt or disable the tensorrt engine in inference configuration!
[Hint: Expected Has(pass_type) == true, but received Has(pass_type):0 != true:1.] (at /workspace/Paddle/paddle/fluid/framework/ir/pass.h:238)
Signal (6) received.
0# 0x00005607981D7299 in tritonserver
1# 0x00007F08ABA8D210 in /usr/lib/x86_64-linux-gnu/libc.so.6
2# gsignal in /usr/lib/x86_64-linux-gnu/libc.so.6
3# abort in /usr/lib/x86_64-linux-gnu/libc.so.6
4# 0x00007F08ABE43911 in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
5# 0x00007F08ABE4F38C in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
6# 0x00007F08ABE4F3F7 in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
7# 0x00007F08ABE4F6A9 in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
8# paddle::framework::ir::PassRegistry::Get(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) const in /opt/paddle/lib/libpaddle_inference.so
9# paddle::inference::analysis::IRPassManager::CreatePasses(paddle::inference::analysis::Argument*, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&) in /opt/paddle/lib/libpaddle_inference.so
10# paddle::inference::analysis::IRPassManager::IRPassManager(paddle::inference::analysis::Argument*) in /opt/paddle/lib/libpaddle_inference.so
11# paddle::inference::analysis::IrAnalysisPass::RunImpl(paddle::inference::analysis::Argument*) in /opt/paddle/lib/libpaddle_inference.so
12# paddle::inference::analysis::Analyzer::RunAnalysis(paddle::inference::analysis::Argument*) in /opt/paddle/lib/libpaddle_inference.so
13# paddle::AnalysisPredictor::OptimizeInferenceProgram() in /opt/paddle/lib/libpaddle_inference.so
14# paddle::AnalysisPredictor::PrepareProgram(std::shared_ptrpaddle::framework::ProgramDesc const&) in /opt/paddle/lib/libpaddle_inference.so
15# paddle::AnalysisPredictor::Init(std::shared_ptrpaddle::framework::Scope const&, std::shared_ptrpaddle::framework::ProgramDesc const&) in /opt/paddle/lib/libpaddle_inference.so
16# std::unique_ptr<paddle::PaddlePredictor, std::default_deletepaddle::PaddlePredictor > paddle::CreatePaddlePredictor<paddle::AnalysisConfig, (paddle::PaddleEngineKind)2>(paddle::AnalysisConfig const&) in /opt/paddle/lib/libpaddle_inference.so
17# paddle_infer::Predictor::Predictor(paddle::AnalysisConfig const&) in /opt/paddle/lib/libpaddle_inference.so
18# paddle_infer::CreatePredictor(paddle::AnalysisConfig const&) in /opt/paddle/lib/libpaddle_inference.so
19# 0x00007F07641015BC in /opt/tritonserver/backends/paddle/libtriton_paddle.so
20# 0x00007F0764102416 in /opt/tritonserver/backends/paddle/libtriton_paddle.so
21# 0x00007F0764105D36 in /opt/tritonserver/backends/paddle/libtriton_paddle.so
22# 0x00007F07641051EF in /opt/tritonserver/backends/paddle/libtriton_paddle.so
23# TRITONBACKEND_ModelInstanceInitialize in /opt/tritonserver/backends/paddle/libtriton_paddle.so
24# 0x00007F08AC62DDEE in /opt/tritonserver/bin/../lib/libtritonserver.so
25# 0x00007F08AC62F3B3 in /opt/tritonserver/bin/../lib/libtritonserver.so
26# 0x00007F08AC627067 in /opt/tritonserver/bin/../lib/libtritonserver.so
27# 0x00007F08AC4B07CA in /opt/tritonserver/bin/../lib/libtritonserver.so
28# 0x00007F08AC4BD9B1 in /opt/tritonserver/bin/../lib/libtritonserver.so
29# 0x00007F08ABE7BDE4 in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
30# 0x00007F08AC2F9609 in /usr/lib/x86_64-linux-gnu/libpthread.so.0
31# clone in /usr/lib/x86_64-linux-gnu/libc.so.6

I tried several methods, but all were failed.
First, I indicated the tensorrt root with -DTENSORRT_ROOT , it get the same error as above log.
Second, I tried to add protection in  "/workspace/Paddle/paddle/fluid/inference/tensorrt/plugin/gather_nd_op_plugin.h"  and "/workspace/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h" as @jeng1220  recommended (cherry-pick PaddlePaddle's commit), it got the following new errors:
[ 54%] Building CUDA object paddle/fluid/inference/tensorrt/plugin/CMakeFiles/tensorrt_plugin.dir/split_op_plugin.cu.o
[ 54%] Building CXX object paddle/fluid/framework/CMakeFiles/executor_cache.dir/executor_cache.cc.o
[ 54%] Building CUDA object paddle/fluid/inference/tensorrt/plugin/CMakeFiles/tensorrt_plugin.dir/gather_nd_op_plugin.cu.o
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(96): error: qualified name is not allowed
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(96): error: this declaration has no storage class or type specifier
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(96): error: expected a ";"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(97): error: qualified name is not allowed
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(97): error: this declaration has no storage class or type specifier
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(97): error: expected a ";"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(29): error: exception specification for implicitly declared virtual function "paddle::inference::tensorrt::plugin::SplitPlugin::~SplitPlugin" is incompatible with that of overridden function "paddle::inference::tensorrt::plugin::PluginTensorRTV2Ext::~PluginTensorRTV2Ext"
detected during:
instantiation of "std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_Vector_impl() [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::_Vector_base<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::vector<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(29): error: exception specification for implicitly declared virtual function "paddle::inference::tensorrt::plugin::SplitPlugin::~SplitPlugin" is incompatible with that of overridden function "nvinfer1::IPluginV2Ext::~IPluginV2Ext"
detected during:
instantiation of "std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_Vector_impl() [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::_Vector_base<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::vector<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.h(29): error: exception specification for implicitly declared virtual function "paddle::inference::tensorrt::plugin::SplitPlugin::~SplitPlugin" is incompatible with that of overridden function "nvinfer1::IPluginV2::~IPluginV2"
detected during:
instantiation of "std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_Vector_impl() [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::_Vector_base<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
instantiation of class "std::vector<_Tp, _Alloc> [with _Tp=int, _Alloc=std::allocator]"
(31): here
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(64): error: identifier "d_segment_offsets_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(64): error: class "paddle::inference::tensorrt::plugin::SplitPlugin" has no member "d_segment_offsets_"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(66): error: identifier "d_output_ptrs_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(66): error: class "paddle::inference::tensorrt::plugin::SplitPlugin" has no member "d_output_ptrs_"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(94): error: identifier "d_segment_offsets_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(96): error: identifier "d_output_ptrs_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(135): error: identifier "d_segment_offsets_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(138): error: identifier "d_output_ptrs_" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(139): error: class "paddle::platform::details::ExternalApiType<>" has no member "kSuccess"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(247): error: namespace "thrust" has no member "device_vector"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(247): error: type name is not allowed
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(247): error: identifier "d_segment_offsets" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(259): error: namespace "thrust" has no member "device_vector"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(259): error: type name is not allowed
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(259): error: expected an expression
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(260): error: identifier "d_output_ptrs" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(266): error: class "paddle::platform::details::ExternalApiType<>" has no member "kSuccess"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(275): error: namespace "thrust" has no member "device_vector"
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(275): error: type name is not allowed
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(275): error: expected an expression
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(276): error: identifier "d_output_ptrs" is undefined
/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu(282): error: class "paddle::platform::details::ExternalApiType<>" has no member "kSuccess"
31 errors detected in the compilation of "/workspace/backend/Paddle/paddle/fluid/inference/tensorrt/plugin/split_op_plugin.cu".
make[2]: *** [paddle/fluid/inference/tensorrt/plugin/CMakeFiles/tensorrt_plugin.dir/build.make:90: paddle/fluid/inference/tensorrt/plugin/CMakeFiles/tensorrt_plugin.dir/split_op_plugin.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
Third, I tried to update CUB version to commit  as @jeng1220 recommended, it also failed as the above new errors.
So all routes is broken. Do you have some more suggestions ? Thank you very much   @jiweibo @jeng1220
By the way, I'm tring to build paddle-backend with triton 22.02 version.

Paddle has released CUDA 11.6 packs, please use paddle 2.4.


audit: 3.1.2 -> 4.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/audit/versions.
meta.description for audit is: Audit Library
meta.homepage for audit is: https://people.redhat.com/sgrubb/audit/
meta.changelog for audit is: https://github.com/linux-audit/audit-userspace/releases/tag/v4.0
Updates performed

Version update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.0 with grep in /nix/store/vrb9j9xk3ba3ar7sdv9x2l80rnyibwdl-audit-4.0-bin
found 4.0 in filename of file in /nix/store/vrb9j9xk3ba3ar7sdv9x2l80rnyibwdl-audit-4.0-bin

Rebuild report (if merged into master) (click to expand)

48764 total rebuild path(s)

48764 package rebuild(s)

First fifty rebuilds by attrpath

ArchiSteamFarm
BeatSaberModManager
CHOWTapeModel
ChowCentaur
ChowKick
ChowPhaser
CuboCore.coreaction
CuboCore.corearchiver
CuboCore.corefm
CuboCore.coregarage
CuboCore.corehunt
CuboCore.coreimage
CuboCore.coreinfo
CuboCore.corekeyboard
CuboCore.corepad
CuboCore.corepaint
CuboCore.corepdf
CuboCore.corepins
CuboCore.corerenamer
CuboCore.coreshot
CuboCore.corestats
CuboCore.corestuff
CuboCore.coreterminal
CuboCore.coretime
CuboCore.coretoppings
CuboCore.coreuniverse
CuboCore.libcprime
CuboCore.libcsys
DisnixWebService
EBTKS
EmptyEpsilon
Fabric
HentaiAtHome
LAStools
LASzip
LASzip2
LibreArp
LibreArp-lv2
Literate
MIDIVisualizer
MMA
OSCAR
OVMF
OVMFFull
PageEdit
QuadProgpp
R
SDL
SDL2

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/vrb9j9xk3ba3ar7sdv9x2l80rnyibwdl-audit-4.0-bin \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A audit https://github.com/r-ryantm/nixpkgs/archive/114f15fd3a4c977c70ad64e6561bb37f197721fb.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/114f15fd3a4c977c70ad64e6561bb37f197721fb#audit

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/vrb9j9xk3ba3ar7sdv9x2l80rnyibwdl-audit-4.0-bin
ls -la /nix/store/vrb9j9xk3ba3ar7sdv9x2l80rnyibwdl-audit-4.0-bin/bin

Pre-merge build results
NixPkgs review skipped

Maintainer pings
cc @AndersonTorres for testing.

@ofborg build audit

@ofborg eval

What is the situation here? I need this for the Python 3.12 migration.

4.0.1 fails to build, because of a cyclic loop between outputs. Can you look into that?
failed: error: cycle detected in build of '/nix/store/1mnlczj1kz9qb5dcag8l6fix9srncdfs-audit-4.0.1.drv' in the references of output 'bin' from output 'out'

Merged in https://github.com/NixOS/nixpkgs/pull/320924.


publishModal: revise publish modal styles

The styles were a bit wonky on the publish modal, this moves the styling to styles.css and tries to align stuff on desktop / mobile.
mostly CSS changes.
current:

desktop:

mobile:

Thanks, this was a definite improvement! But the publication center really needed an overhaul, so I've created a brand new one here: #409. Closing this.


[Deploy] Superhuman Recipe

Service
Superhuman is a email portal that you access Gmail through with a sophisticated level of keyboard shortcuts and interaction to get you to inbox zero
Link to your repository
https://github.com/CrystalLarsh/franz-superhuman-recipe
Additional Information
I cannot figure out how to get Franz to use Chrome. Superhuman is only optimized for Chrome and will not let you login if it does not detect it.  I have tried a few snippets from other examples and looked through the issues answered to see if I could figure it out after searching the documentation.  Afraid I'm too new at this to get it.

I don't seem to have permissions to add labels but help is wanted.


Image cut top-bottom

Hey, thanks again for this great script.
I've found a small bug, when the image is is not square, the distorsion goes outside of the canvas size, cutting a little bit from the top and bottom.
Here's a screenshot:

I think the best solution to this is to expose a method that returns the dimensions of the distorted image, that way the desired canvas can be provided to the library. I'll look into this.


[SDP-1343] HTML Injection Vulnerability

What
Change text/template to html/template.
Why
Using the html/template package in Go instead of text/template package automatically escapes HTML special characters, preventing XSS attacks.
Checklist
PR Structure

[x] This PR has a reasonably narrow scope (if not, break it down into smaller PRs).
[x] This PR title and description are clear enough for anyone to review it.
[x] This PR does not mix refactoring changes with feature changes (split into two PRs otherwise).

Thoroughness

[x] This PR adds tests for the new functionality or fixes.
[x] This PR contains the link to the Jira ticket it addresses.

Configs and Secrets

[x] No new CONFIG variables are required -OR- the new required ones were added to the helmchart's values.yaml file.
[x] No new CONFIG variables are required -OR- the new required ones were added to the deployments (pr-preview, dev, demo, prd).
[x] No new SECRETS variables are required -OR- the new required ones were mentioned in the helmchart's values.yaml file.
[x] No new SECRETS variables are required -OR- the new required ones were added to the deployments (pr-preview secrets, dev secrets, demo secrets, prd secrets).

Release

[x] This is not a breaking change.
[x] This is ready for production.. If your PR is not ready for production, please consider opening additional complementary PRs using this one as the base. Only merge this into develop or main after it's ready for production!

Deployment

[ ] Does the deployment work after merging?

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr419.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr419.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr419.previews.kube001.services.stellar-ops.com


Python Script to Plot Sagemaker Endpoint Utilization Metrics , Heatmap to visualize Cost for Various RPMs

Description of changes:
This pull request adds a new python script to generate visualization plots for utilization metrics.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Updated PR,
New changes:
Added sagemaker_cost_RPM_plot.py script to create a heatmap which visualizes Cost for various requests per minutes. Also added logging.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.


Cherry pick disabling of state & state tests for Dataflow runner

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

LGTM for cherrypick.
R: @dhalperi

Confirmed integration tests for Dataflow runner.


tape output diffs / linebreak

I use tape to test a source-generator so I often have larger files to compare.
Tape shows me the output with linebreaks  escaped as '\n', which is difficult to read. Is there a way I could have a line-by-line diff. Or compare two arrays and have tape tell me which elements differ?

Improving the failure output seems like it's still a useful feature request, this should remain open.

I've just been running into the same problem: tape has been working really well, except for the fact that failures on the multiline strings I'm trying to assert on are pretty unreadable.
Looks like this happens with the use of inspect-object:
https://github.com/substack/tape/blob/021fa6d22bc85f2e8f075405bcb97c6a1b87af22/lib/results.js#L174-L175
Would it make sense to skip this if it's already a string? Line breaks would then be present, but you'd lose the single quotes surrounding it (does that qualify as a breaking change?).

@thewilkybarkid the surrounding quotes are important. It seems reasonable for tape to maybe take an option, and pass an option to object-inspect (and add the option there if needed) to improve the formatting here.


chore: upgrade jenkins-x/jx3-versions to version 0.3.4

from: https://github.com/jenkins-x-terraform/terraform-jx-azure.git

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign rajdavies
You can assign the PR to them by writing /assign @rajdavies in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


v1.63.0 broken on Mac (bash 3.2)

Describe the bug
https://github.com/antonbabenko/pre-commit-terraform/blob/v1.63.0/hooks/_common.sh#L30 uses declare -g which is not an option in all bash versions.
.cache/pre-commit/repo574zjemm/hooks/_common.sh: line 30: declare: -g: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

Tried with 2 different versions of bash.
/bin/bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin20)
Copyright (C) 2007 Free Software Foundation, Inc.

and
/usr/local/bin/bash --version
GNU bash, version 5.1.16(1)-release (x86_64-apple-darwin20.6.0)
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Version v1.62.3 works fine.

@MaxymVlasov I even tried with https://formulae.brew.sh/formula/bash and setting my SHELL to /usr/local/bin/bash

So looks like we need to maintain compatibility with bash 3.2 :roll_eyes:

Or include Bash >= 4 as requirement in README =)

@MaxymVlasov I even tried with https://formulae.brew.sh/formula/bash and setting my SHELL to /usr/local/bin/bash

You'd need to update your PATH var so that /usr/local/bin precedes /usr/bin (or which ever bash3 resides in).

https://github.com/antonbabenko/pre-commit-terraform/blob/v1.63.0/hooks/_common.sh#L30 uses declare -g which is not an option in all bash versions.

That's relatively easy to fix.
declare -g declares a variable to be global when used inside a function. To work on Bash 3.2, simply move the variable declaration outside the function - eg, move to the top of the file. Arguably, that's clearer than declaring a global var in a function anyway.
Move this to the top of the file:
  # common global arrays.
  # Populated via `common::parse_cmdline` and can be used inside hooks' functions
  declare -a ARGS=() HOOK_CONFIG=() FILES=()

Recently ran into the same issue recently, and came across this:
# For bash 4.x, must not be in posix mode, may use temporary files
mapfile -t array < <(mycommand)

# For bash 3.x+, must not be in posix mode, may use temporary files
array=()
while IFS='' read -r line; do array+=("$line"); done < <(mycommand)

# For ksh, and bash 4.2+ with the lastpipe option enabled (may require disabling monitor mode)
array=()
mycommand | while IFS="" read -r line; do array+=("$line"); done

I had to change my scripts to use option 2 instead of option 1 in order to be compatible on mac with enforcing a bash upgrade. Suggest to do the same here.

48bc03ca3f0f2f782d2f430069868019a6892062

This worked for me, @MaxymVlasov . I was having the same error as the issue outlines when upgrading to from v1.62 to v1.64

Just to compile main items that are required to keep compatibility with Bash v3:

builtins/utilities missing from Bash v3 or from base OS:

decalare -g: code changes → drop declare -g and (possibly) use export to populate var(s) globally where applicable and if needed
mapfile: fallback to read -a (looking at the code, where mapfile is used, we should be able to drop use of array at all (we only need the last item from that array, which can be accomplished by using tail -1)
realpath:

not enabled in Bash by default (requires enable -f realpath realpath to enable)
not built and enabled in Bash less than v4 by default
code changes:

bash version is equal or greater than 4 → enable this builtin
bash version is less than 4 and realpath binary is missing from PATH → implement realpath emulation via function and populate all shell hooks with it via e.g. _common.sh

alternatively can be "enabled" by installing coreutils using package manager on Linux and/or Homebrew on MacOS and Linux

is already in the list of requirements for MacOS along with Homebrew (requirements installation steps for MacOS assume brew is already installed)
is used by us in conjunction with dirname, which is part of coreutils at least on Ubuntu (is this available from base on other Linux distros and MacOS?)
alternatively use quirks like cd -P -- "${PATH_TO_DIR_WITH_HOOK}" && pwd -P

all contributors are aware of restriction to use modern bash features which are not implemented in Bash v3 (http://tiswww.case.edu/php/chet/bash/NEWS) and of restriction to rely on common core packages like coreutils
all contributors are aware of possible behavioral differences of common builtins and utilities (http://tiswww.case.edu/php/chet/bash/NEWS)
all contributors have an option to test their code using Bash v3 (e.g. with respective Docker container — available at https://hub.docker.com/_/bash?tab=tags)
all PRs must be automatically verified to be compatible with Bash v3 with e.g. GitHub workflow
PR reviewers should bear in mind the above
what else?

My only concerns are the items apart from the very first one and the need to support quite ancient version of shell interpreter.
Alternatively we can enforce Bash v4/v5 requirement. I realize this is intrusive for MacOS folks who are sort of enforced to use pre-commit (e.g. where corporate policy puts a requirement to use pre-commit-terraform for repos with Terraform code in the Company), though yet we already require them to install a bunch of tools and having one another relatively simple step like the below should be not a big deal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" && \
    brew install bash && \
    # as far as I remember Homebrew on MacOS links binaries into /usr/local/bin
    export PATH="/usr/local/bin:${PATH+:$PATH}" && \
    echo 'PATH="/usr/local/bin:${PATH+:$PATH}"' >> ~/.bashrc

➡ IMHO

rev 48bc03ca3f0f2f782d2f430069868019a6892062 resolved this error for me on OSX 12.2.1
- repo: https://github.com/antonbabenko/pre-commit-terraform
   rev: 48bc03ca3f0f2f782d2f430069868019a6892062
   hooks:
     - id: terraform_fmt
     - id: terraform_docs
       args:
         - '--args=--sort-by required'

I was able to get around this with a brew install bash. It looks like bash 5 is in Homebrew:
➜ brew info bash
bash: stable 5.1.16 (bottled), HEAD
Bourne-Again SHell, a UNIX command interpreter
https://www.gnu.org/software/bash/
/usr/local/Cellar/bash/5.1.16 (157 files, 10.9MB) *
  Poured from bottle on 2022-03-07 at 15:14:01
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/bash.rb
License: GPL-3.0-or-later
==> Options
--HEAD
        Install HEAD version
==> Analytics
install: 25,150 (30 days), 100,366 (90 days), 331,470 (365 days)
install-on-request: 20,579 (30 days), 82,799 (90 days), 276,640 (365 days)
build-error: 33 (30 days)

48bc03ca3f0f2f782d2f430069868019a6892062

I tried this but still hitting this error.  Was using rev: v1.64.0 on MacOS 12.3
/Users/andrstan/.cache/pre-commit/repo0nc0qtfr/hooks/_common.sh: line 30: declare: -g: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

This issue has been resolved in version 1.64.1 :tada:


Question: About Finetuning SAM

Did you finetune SAM with points and bounding boxes or just with bounding boxes? Also, if only bounding boxes were used for fine-tuning, so does it work with clicks/points just out of the box??
Thanks

Hi, we fine-tuned SAM on points, bounding boxes, and scribbles (represented as a series of points). So ScribblePrompt-SAM works out of the box with all three types of prompts (and combinations thereof) as well as mask inputs.

Thank you for getting back to me. Will you be releasing any training script, I would love to fine-tune the model for my images

Yes, we are planning to release training code! I am actively working on cleaning up the code so it can be released.


Ubuntu fail: setwallpaper not found, isn't an apt or snap I can install

On first run I was getting this error:

But I was able to resolve it with snap install sunwait. Unfortunately, there's no setwallpaper I can install on Ubuntu.

Yes, sunwait and wallutils (for setwallpaper) are dependencies for sunpaper
https://github.com/hexive/sunpaper/wiki/Install
wallutils has pretty good documentation for installing on ubuntu
https://github.com/xyproto/wallutils#ubuntu
And if you go their suggested route of first installing go, you can then install setwallpaper with:
go get -u github.com/xyproto/wallutilsthe/cmd/setwallpaper
https://github.com/hexive/sunpaper/wiki/Creative-Uses#building-wallutil-dependency

I have no idea how I missed that in the setup.


Documentation for resetoffsets is not clear

In latest version of documentation, the description for resetoffset is:

Whether to reset offsets on the consumer to the value provided by startOffset. Must be false if a KafkaRebalanceListener is provided; see Using a KafkaRebalanceListener.
Default: false.

But according to answers in below two questions:

https://stackoverflow.com/questions/53467918/spring-cloud-stream-2-0-and-startoffset-latest
https://stackoverflow.com/questions/55029402/will-spring-cloud-stream-kafka-consumer-not-consume-messages-that-were-sent-when

It's obvious that user should not set resetoffsets=true, otherwise when service restart or down, the un-consumed Kafka message will be missed.
From what I understand, startOffset is only designed for new groups, but some how magic happens if  resetoffsets=true
So I suggest to at least add a warning to indicate if you set resetoffsets, it will has impact when service restart.

That is not the latest documentation; see https://docs.spring.io/spring-cloud-stream-binder-kafka/docs/3.1.3-SNAPSHOT/reference/html/spring-cloud-stream-binder-kafka.html#reset-offsets

@garyrussell Thanks, glad to see it's updated in SNAPSHOT document.
Somehow this paragraph indicates:

When resetOffsets is true, the binder applies similar semantics to those that apply when there is no committed offset on the broker, as if this binding has never consumed from the topic; i.e. any current committed offset is ignored.

Can I also understand as in common use cases, for an existing consumer group, I should set resetOffsets=false to not miss any message and startOffset only effects if it's a new consumer group?

Yes; the most common use case is to leave it at its default false; there is no need to explicitly set it so.

Thanks @garyrussell , I think the new document it good.


Create a Debian package for ubuntu 20.04

Add a Debian package creation as Gradle task and create the package during the build

Package creation works fine, but testing needed. See #8


Bug when using Private Use Area UTF-8 codes that most icon libraries use.

Version
2.0.1 On WEB
First of all, congratulations on the amazing library.
Second, I found this weird behaviour while adding some logic taken from Font-Awesome.
The bug happens when using Private Use Area UTF-8 codes that most icon libraries use.
Reproduction
For example:
styled.h1`
  &:before {
    content: "\f0a3";
  }
`

https://www.webpackbin.com/bins/-Km3ra09bbCUAqDwFkDk
Expected Behavior
The CSS rendered should be
.styledClass:before{
  content: "\f0a3";
}

Actual Behavior
The CSS rendered should be
.styledClass:before{
  content: "0a3";
}

Plus the browser doesn't get the end of the string and keeps reading other rules.

Sounds like a normalisation bug with stylis. Can you confirm this by any chance, @thysultan? :)

Depending on the possible \<$> codes that can be used in css, stylis could monkey-patch this in the compile step so that you also don't need to escape them, though this has the caveat of not being able to monkey-patch \t(tab) or \n(newline) characters.

Thank you @philpl it that solved it.
For a moment forgot that I was working in JS. Great library again people.

pushed a patch that auto-escapes the un-escaped control characters that break browser css parsers \0, \f, '\v'.


Fixed typo in requirements file

Coverage decreased (-0.02%) to 87.282% when pulling a67b33f2b4b10e324b82e90542e096c7b4c72d45 on INM-6:fix/version into b0f328ece184ed0201d366e57d84dbe3ef667295 on NeuralEnsemble:master.


GEOMESA-2689 Reduce memory footprint of deserialized simple features

New V3 serialization format
Doesn't require tracking offsets into serialized bytes
De-references backing array when all attributes are read
Stores nulls in a bitmask to save space

Signed-off-by: Emilio Lahr-Vivaz<EMAIL_ADDRESS>

Some background:
The old serialization scheme using variable length int encoding to store the byte offsets of each attribute. Because the offset block length wasn't known up front (due to the variable length encoding), we put the offset values after all the serialized attributes (we actually could have computed the variable length up front, as we know the number of attributes and which ints take more than one byte, but we didn't do that). During serialization, we left a 4 byte space at a known offset that we back-filled with the location of the offsets block, using a fixed-length 4-byte int encoding. When decoding, we read the offset block location, then skipped ahead to the offsets and read them into an Array[Int]. For lazy deserialization, we could reference the offset to a particular feature by looking at the offset array. This scheme worked pretty well, however it required the allocation of the offset array for each feature.
This PR updates the serialization scheme to use a fixed-length 2-byte encoding for the offsets. Because the length is known up front, we can put the offsets at the start of the serialized value, and know that the offset for attribute i will be at a particular spot. This lets us avoid allocating an array for the offests - instead, when reading, we can skip to the offset value, read it, then skip to the serialized attribute value. Because we use 2-byte shorts, we can't handle more than 32k attributes (!?) or 32MB total size of the serialized feature.
An additional change is to use a bitset to store the null values - this bitset is loaded up once for each feature, so represents a small allocation, however it is optimized to only require 1-2 Ints (and no array) for schemas with less than 64 attributes. For larger schemas, it allocates an Array[Int], but only requires one Int per 32 attributes. (this could be optimized further by adding additional IntBitSet implementations if needed). Because all the null checks are stored in the bitset, we save 1 byte per attribute in the serialized array (minus the 4 bytes per 32 attributes required for the bitset).

@jahhulbert-ccri do you think adding additional BitSet impls here would be worthwhile to avoid allocating an array for schemas with > 64 attributes?


Enable specifying wrap_target

This pull request to pioemu/emulation.py adds two new parameters, wrap_target and wrap_top, to the emulate function. It also modifies the assignment of wrap_top.

pioemu/emulation.py: Added two new parameters, wrap_target and wrap_top, to the emulate function.
pioemu/emulation.py: Modified the assignment of wrap_top in the emulate function.
pioemu/emulation.py: Added an import statement. [1] [2] [3]

closes : https://github.com/NathanY3G/rp2040-pio-emulator/issues/125
Signed-off-by: Jos Verlinde<EMAIL_ADDRESS>

Thanks @Josverl - LGTM :+1:


Add Python 3 support

Should take care of #77, even if it took a little longer than expected. Works on my installations of 2.7.8 and 3.3.5. (I should get around to updating those.)
Changes:

Removed long literals (e.g., max_length=55L), which aren't a thing anymore.
Used io.StringIO instead of cStringIO.StringIO, so strings of all flavors can be passed as arguments without a lot of juggling.
Allowed Unicode to render properly in yes/no prompt at beginning of download process.
Replaced model __unicode__ methods with cross-compatible __str__ equivalents per the Django docs.
Used csvkit consistently throughout for Unicode-aware CSV handling.
Ensured model/admin __init__ imports worked consistently across versions.

Coverage increased (+0.03%) to 98.22% when pulling 1b77a3a694015fa48cf1c04bb0c5bc7770a0984f on myersjustinc:py3-rewrite into 17ede3f3111b225d3c8ae2495d5716b9862c080c on california-civic-data-coalition:master.

Coverage increased (+0.03%) to 98.22% when pulling 1b77a3a694015fa48cf1c04bb0c5bc7770a0984f on myersjustinc:py3-rewrite into 17ede3f3111b225d3c8ae2495d5716b9862c080c on california-civic-data-coalition:master.

Thanks for sticking with it! I'll download the code and give this a try.

Glad to do it. I'm noticing on the current Travis build that it's failing on Django 1.4--turns out Django doesn't support Python 3 until 1.5.
Everything else is passing so far (but taking some time), but when it complains that the build failed, that's why. If you're OK with that, I can add another commit to this PR to get rid of the Django 1.4 test.

I'm working on that very issue right now. We don't need to support those old versions of Django so I'm going to cut the tests.

Sounds good—I'll leave it alone, then.

In case you are curious, Travis has a "Matrix" setting that lets you omit certain envs for Python 3, ala django-debug-toolbar

Nice. First time using Travis, actually, so I'm still getting used to such things—but good to know!

Coverage increased (+0.03%) to 98.22% when pulling 36b79479e842b255705cbf00a3cf9748082ce9b3 on myersjustinc:py3-rewrite into 17ede3f3111b225d3c8ae2495d5716b9862c080c on california-civic-data-coalition:master.

Coverage increased (+0.03%) to 98.22% when pulling 36b79479e842b255705cbf00a3cf9748082ce9b3 on myersjustinc:py3-rewrite into 17ede3f3111b225d3c8ae2495d5716b9862c080c on california-civic-data-coalition:master.

You're in! Thanks again!

 Glad to help.


springsecurityservice dependency injection fails during dbm updates

So, the thread  in issue https://github.com/grails-plugins/grails-database-migration/issues/42 appears to have gotten off topic from the initial question, and focused on skipping Bootstrap.groovy. I'm opening a new issue to focus on the original plugin load order issue.
I'm having a similar problem as issue https://github.com/grails-plugins/grails-database-migration/issues/42 calling User.encodePassword() from within a dbm changeSet. The springsecurityservice bean used for encoding is not injected into User in grails 3.1, but it was injected properly in grails 2.5.5 during dbm-update. My existing migration was broken by this change in functionality when I moved from grails 2.5 to 3.1
Can the db plugin be loaded after spring-security-core?
Grails 3.1.14
database-migration:2.0.0
spring-security-core:3.1.1

I don't see how that would make a difference since the User class isn't created until after the application is started (after all plugins are loaded)

@jameskleeh Thanks, any other ideas why this dependency injection is failing?

@edwardotis Not really. If you attach an example project I can take a look

Closing due to no example attached


fixed some typos and grammatical mistakes

@shahincsejnu both I and @kbhawkey had comments on your PR why dis you resolve that?


high resolution PyWGCNA_overview.png

Hi,
Some letters on PyWGCNA_overview.png are too small to see clearly, would you mind providing higher resolution figures ?

Hi,
I upload the higher resolution here!
Don't hesitate to reopen this issue if the quality is not good enough yet!

Thanks for you reply!
However, there are some flaws on the figure. such as
3) find modules, 4. the bottom of "identify gene moudles" was covered by the plot
4) study modules, 3. module GO term. The points are covered by the legend
5) compare pywgcnas, 1. comparison table. There are red wave lines under some letter.


Added support for the Tuya TS0207

Based design on my Groovy driver I researched and built last year.   Tested with a Tuya TS0207.  Works fine.     Its not a great leak sensor though.... :)

Please ignore.  There are some issues with the TS0207.   Looking into it.


Add a problem response type for InputValidationProblem

validate by the WG

added swagger version on master branch (I overlooked that)


authentication credentials for hostedSuppressionsUrl

Hi!
We are running the dependency checker as maven plugin in a ci/cd-runner without internet access. The runner has however access to a local service which is able to mirror the suppression-url. The service requires authentication in order to access the url.
It seems when specifying the hostedSuppressionsUrl setting, the plugin is trying to access the local service, but it seems the suppressionFileUser and suppressionFilePassword is not used when accessing hostedSuppressionsUrl?
It it possible to specify username and password/access-token in any way for the hostedSuppressionsUrl, or is it something that would be considered useful in an upcominge update?

As we already support a similar case for retireJS mirrors with the retireJsUser/Password parameters I think this is a valid enhancement request.

If this is accepted, then maybe if it is not too much more work, the same could be configured for the knownExploitedUrl also? We currently have this disabled for the same reason, that username and password/access-token cannot be specified.


beforeBump tasks don't exit immediately

Hi, I was using grunt-release with a beforeBump task to run the tests of my project before a release, but when these tasks error, the deferred.reject doesn't get caught or exit correctly, so regardless of the grunt status, the release continues.
Here's an example of the gruntfile.js
grunt.initConfig({
    // Task configuration.
    release:  {
        options: {
            beforeBump: ['test']
        }
    }
});

So when I run
grunt release

It runs the tests, but if they fail, it just continues with the release.
Is there a reason why we don't just call grunt.fail.warn here? Because this will exit the task immediately...

I too want to run my tests pre release/bump and exit on failure, any updates regarding this?

Thanks for the report. Makes total sense not to continue any further. Will have a look at implementing this.


Is there a demo for store thumbnail to s3?

I have no idea about how to store thumbnail to s3?
Any help will be appreciate.

This is not something related to sort-thumbnail. Take a look here https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html


TTFT remains the same with the same query.

My GPU is not large enough to run 2 vLLM instances. So I followed the quick start guide and started only 1 vLLM container instance.  I tried the same query multiple times using openai_chat_completion_client.py. I had expected the TTFT of the first response would be larger since handling the same query could utilize saved kv cache by LMCache. However, TTFT remains the same.
Is my understanding of LMCache correct? Does LMCache work only with multiple vLLM instances?
Thanks.

It was my script error. lmcache-config-file did not take effect.


Manage integration with global stuff

[ ] systemd units
[ ] profile.d
[ ] more?!

Migrated to https://github.com/uniget-org/cli/issues/28


(WIP) Weechat plugin split

Motivation for this change
#22746
This change moves each language plugin into a separate output, significantly reducing weechat's closure size. It also adds a withPlugins function to weechat, which generates a wrapper for adding the plugins.
This relies on weechat/weechat#971 and so probably shouldn't be merged until the next stable release which will (hopefully!) include that change.
This is probably my biggest nixpkgs change yet, so I'm PRing it now in search of feedback — any input would be highly appreciated! Particularly, the way in which I add the withPlugins function to weechat. This should allow using it like weechat.withPlugins [weechat.ruby weechat.guile], but is there a more elegant way of adding it than the set union I'm doing here? I'd also like to know what people think about the mechanism as a whole, i.e. how this runtime composition is implemented.
Checklist before this can be merged:

[ ] weechat/weechat#971 merged and incorporated into a release
[ ] Remove references from main weechat derivation to python and perl packages — these should be in the wrapper as well
[ ] Document it — but where? This isn't specific to NixOS (so probably not the NixOS manual), nor is it only applicable to people intending to contribute to nixpkgs (so probably not the nixpkgs manual). Do we have an "end-user's guide" to nixpkgs?

Ideas:

Potentially handle the plugins in a more unified way; I'll be experimenting with this a bit.

Things done

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

[ ] NixOS
[ ] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

I would also appreciate if anyone could comment on whether they think https://github.com/lheckemann/nixpkgs/commit/e8bf1f9b9db78a3a10527d077f32dcfb0ffdfd6e is an improvement on this. It has yet to address the issue of plugin-specific environment variables properly, so is also WIP on top of this.

@lheckemann to not wait for upstream you could also point to that PR and add it to the patches list.

Of course, I forgot about that!

Yes, that was my plan. I also still need to fix the perl/python path stuff in the wrapper — currently just weechat will still depend on perl and python, without even bringing in the plugins.

It also still needs docs, which I don't know where to put.

This definitely isn't ready for merging yet — for instance, fish.py from the official scripts repo doesn't work with it

@lheckemann I think you can open a new section about weechat at Chapter 10. Package Notes
I'll do a bit of dreaming in this comment and you stop me when I go too far :P Also I'm interested to work on this myself, just for some things I'm too short on my skills.
(1) nixos module: maybe it would be worthwhile to also create a nixos module for weechat. eg
programs.weechat.enable = true;
programs.weechat.plugins = [ ... ];
programs.weechat.<other-options>...

(2) like with plugins it would be nice to have a variable to configure weechat to write logs in location other then $WEECHAT_HOME/logs, we could add this as an argument like withPlugins
(3) configuring weechat: it would be also nice to be able to disallow weechat to write configuration. and create a nice way to configure weechat (eg. like i already do with neovim for example), we could add this as an argument like withPlugins

Not sure how useful this would be, given that weechat doesn't really require any system-wide configuration — most modules, as far as I can tell, exist because they require system-wide settings e.g. programs.zsh for registering it as the users' default shell, programs.cdemu for setting appropriate permissions, etc. A module for weechat, as far as I can tell, wouldn't provide anything that installing an expression wouldn't already.

Yes.

Yes. Generally, separating the state and the config would be nice.

I'm not aware of any plugins that don't ship with weechat. Most extra functionality seems to be implemented through scripts built on the existing language plugins.

you're probably right. .override to configure weechat is enough. maybe having a service that would spawn weechat+tmux like i do here

& 3. I would love to poke with weechat's code but this goes beyond my skills.

Sorry for the confusion. I was talking about scripts. instead of using weechat to pull in unknown code we can use nix. That would of-course require us to disable /scripts command.

Yeah, I'll have a look at making those changes to weechat in the next few days.
As for script installation, yes I guess that would be the logical next step from there. I'll see what I can do!

The python plugin needs some python libraries on its path. I think the right solution would be to allow passing in a python environment as created by python3.withPackages, but I'm not sure how best to expose this. @garbas do you have any ideas for what a nice way to do this would look like? Some ideas so far…
weechat.override { configure = {
  plugins = ["python"];
  environment = {
      PYTHON_HOME = python.withPackages (ps: with ps; [pycrypto dbus-python]);
  };
};}

But I'm not really sure if this is a nice way to do it, particularly because it relies on "magical" values so much. It would be nicer if it could somehow be included in the plugins attribute, something like
weechat.override { configure = {
  plugins = available: [
    (available.python.withPackages (ps: with ps; [pycrypto python-dbus]))
  ];
};}

or even
weechat.override { configure = {availablePlugins, ...}: {
  plugins = [availablePlugins.python.withPackages (ps: with ps; [pycrypto python-dbus])];
};}

But all of these look rather complicated to use. Any thoughts?

does the basic package, without plugins, need Python, or is it only needed for a plugin? If it does not build against a Python env, then you can just add the Python env to PATH.

The python plugin for weechat requires python obviously. It does not execute python as a process though, it uses the library interface to the interpreter, so I think the approach I'm taking is the right one?

That's it documented. If nobody has any further objections, I'll rebase and squash for the actual merge.

I have no feedback on the actual features, so I will leave that to others. I am happy to see documentation again.

@FRidh @garbas ping?

@lheckemann I'd like to give the final word to whoever maintains this

Oh yeah, maybe @the-kenny and @lovek323 would like to weigh in as well :)

@lheckemann merge conflicts can you rebase? Also @the-kenny and @lovek323 we're looking for feedback here. If we don't get a response, I say we go ahead and merge it.

Would this PR make it possible to use plugins like https://github.com/wee-slack/wee-slack which, for instance, depend on other Python packages?

@jluttine yes, see the addition to the manual for details on how. The packages in question do need to be included in nixpkgs though.

@lheckemann are there any remaining blockers? I've packaged some Weechat plugins for Nixpkgs and I'd try to make them compatible with this in the next time :-)

Just approval from maintainers.

ah nice :-D
will try to make my weechat derivations compatible with this :-)

@lheckemann just to ensure that I got this right: your change adds the ability to builda weechat with plugins.
My PR (see #28897) adds an FHS wrapper to make it possible that the scripts inside are buildable with nix. It surely needs some refactoring (I hacked this in ~1h to have an example that can be used for further discussion about this), but in the end it should live happily together with this, right?

Yes, in principle: they're concerned with different parts of weechat, mine is for plugins and yours for scripts. I think the "patch weechat to search an alternative path" approach would be nicer than building a FHS env for scripts too, but I don't see any reason the latter approach would be incompatible with this PR either.

just found your weechat patch. If such an approach is applicable to weechat scripts as well, I'll close this and open another PR

On 17. Nov 2017, at 10:32 AM, Linus Heckemann<EMAIL_ADDRESS>wrote:
Yes, in principle: they're concerned with different parts of weechat, mine is for plugins and yours for scripts. I think the "patch weechat to search an alternative path" approach would be nicer than building a FHS env for scripts too, but I don't see any reason the latter approach would be incompatible with this PR either.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

I started using this feature and it seems really great. I figured out how to add Python dependencies that some scripts need, but I couldn't figure out how to do the same for Lua dependencies.. There's no lua.withPackages apparently as there is for Python. Any ideas? I'm trying to add cjson Lua package required by this script: https://github.com/torhve/weechat-matrix-protocol-script

Yes, it doesn't currently have support for this, largely because lua library support in nixpkgs isn't that great in general as far as I remember. I seem to remember @teto doing some work on that, maybe you can advise?

the work is visible here https://github.com/NixOS/nixpkgs/pull/33903. It works well except for some torch packages. I have yet to understand what's the problem there.

Ok, thanks! So at the moment, weechat cannot be used with lua dependencies. (?)

Other packages hack their way around via adjusting the LUA_PATH in a wrapper but if you are not hurry, there should be a better way soon :)


File not specified and Error 2

I had some problems trying to use it at first because nmake command wouldn't work with it with regular cmd/PowerShell and I'd get errors running it with VS Developer Shell .  I got it working with chocolatey's make somehow but it's giving an error:
cc -Wall   -c -o legArchive.o legArchive.c
process_begin: CreateProcess(NULL, cc -Wall -c -o legArchive.o legArchive.c, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [<builtin>: legArchive.o] Error 2
I tried to tinker with it, mainly the prefix so it would find the legArchive files but that didn't really work either. Same thing happens when I run it with mingw32-make, the only difference being it tries to use windowsgarbage.c and windowsstuff.h instead. I was at the verge of giving up and tried to atleast see if the pre-release executable would do anything but it didn't.
I want to use the archive mainly to replace some audio files on android VNDS to Vita conversions. For example, Kagetsu Tohya and Tsukihime Plus+Disc's VNDS version don't have audio files innately but the scripts make use of them. Adding them before the conversion doesn't result in anything for some reason so I want to add them after converting to VNDS-Vita.

Alright, I completely forgot about this before I found another solution to the problem I was having (it was all my fault honestly, the sound files I was trying to use were encrypted in a different format than I had decrypted with so it wouldn't even open with mpv) but, trying to convert True Rememberance from VNDS to Vita (rather trying to use it in widescreen mode) didn't go so well, so I came back to try to use legArchive.
I didn't try CC=gcc make at the time, but now with Msys2 make works just fine. I don't remember but maybe I didn't have the make on the PATH environment variables. The thing about executable was also totally my fault. Opening the exe, I expected a GUI and when opened and closed simultaneously, I didn't bother doing anything else.

It might be too late, but thanks for the needed help.

yes. this file format is dumb anyway


Document the use of HTML elements in System.Web.UI.WebControls.TreeNode.Text

Idea Title
Document the use of HTML elements in System.Web.UI.WebControls.TreeNode.Text
Issue Details
The System.Web.UI.WebControls.TreeNode.Text property accepts HTML elements but there appears to be no documentation on the effects of including these html fragments.
There are two problems with this: First, the documentation doesn't include the normal warning about cross Site Scripting vulnerabilities (you'll notice the example below includes some HtmlEncoding). Second, there's no description of how to adjust the visual appearance of the text.
As the property doesn't expose any methods/properties to adjust the visual appearance of the text
there have been quite a number of developers posting inquiries (e.g., [https://forums.asp.net/t/1241062.aspx?TreeNode+text+color], [https://forums.asp.net/t/1342537.aspx?Change+TreeView+treenode+background+color])  about how to set the color of the text. The typical solution is along the lines of 'childNode.Text = "" + childNode.Text + "</div>";"
Mike

close as duplicate with #326


[Plugin Request] Desktop Cube Effect

Description
It is the old Compiz style 3D desktop effect.
It is also supported in Wayfire with Cube plugin and in GNOME using the Desktop Cube extension.

Well I guess we at least have hyprexpo now


INT B-20080 Incorrect GBLOC in Search Results

B-20080
Summary

[!TIP]
This is a lot of detail for a small change but the scenario is odd and took me a while to understand. Plus I've been wanting to use this new markdown feature.

A move's origin GBLOC depends on the viewer and the move's status. For the SC, it is based on the origin duty location; for other office users, it's based on the pickup address. Before counseling, a move search should use the origin duty location, and after counseling, it should use the pickup address. These two zips usually fall within the same GBLOC, but in the rare case they differ the move search results were always using the origin duty location regardless of the move's status.
The ticket's description suggests the logic for selecting the correct address to base the GBLOC on was wrong, however, the logic appears to be fine. Instead it was that the pickup address GBLOCs were not included in the search query so the array being checked (move.ShipmentGBLOC[]) was always empty so it was falling back on the origin duty location. This updates the search query to return the necessary data.
Is there anything you would like reviewers to give additional scrutiny?
If you have any ideas of how to add tests for this I'm open to them. This seemed niche enough to not matter too much.
Verification Steps for the Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Have the Agility acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.

[ ] Has the branch been pulled in and checked out?
[ ] Have the BL acceptance criteria been met for this change?
[ ] Was the CircleCI build successful?
[ ] Has the code been reviewed from a standards and best practices point of view?

Setup to Run the Code

Instructions for starting storybook
Instructions for starting the MilMove application
Instructions for running tests

How to test

Access the customer app as a new or existing customer.
Create a move noting the GBLOC of your selected duty location. I used Scott AFB, AGFM.
Add a new shipment (PPM or HHG but ideally HHG so you can easily access it as a TOO)
Select a pickup location that is in a different GBLOC than your selected duty location. (I used Savannah GA 31406, CNNQ)
Submit the move as a customer.
Log in as a services counselor for the GBLOC of the above move's Duty Location.
Verify the move is in your queue.
Search for the move from the move searcher and verify the origin GBLOC displayed is that of the origin duty location.
As the counselor approve the move.
Verify the move is no longer in your counseling queue.
Search for the move again and verify the listed origin GBLOC is now that of the pickup address.
Log out as the counselor.
Log in as a TOO in the GBLOC of the shipment's the pickup address.
Verify the move is in your queue.
Search for the move from the move searcher and verify the origin GBLOC displayed is that of the shipment's pickup location.

Frontend

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, Edge).
[ ] There are no new console errors in the browser devtools.
[ ] There are no new console errors in the test output.
[ ] If this PR adds a new component to Storybook, it ensures the component is fully responsive, OR if it is intentionally not, a wrapping div using the officeApp class or custom min-width styling is used to hide any states the would not be visible to the user.
[ ] This change meets the standards for Section 508 compliance.

Backend

[ ] Code follows the guidelines for Logging.
[ ] The requirements listed in Querying the Database Safely have been satisfied.

Database
Any new migrations/schema changes:

[ ] Follows our guidelines for Zero-Downtime Deploys.
[ ] Have been communicated to #g-database.
[ ] Secure migrations have been tested following the instructions in our docs.

Screenshots

Everything looks good! The only reservation I have is that testing step 15 says "Origin Duty Location" instead of Pickup location, but I believe that's a typo because all of the other steps before it are ensuring that it's the gblock of the pickup location.

Yes, that was a copy and paste error. It should have read pick up location.


Automated Package Upgrade

:tada: This PR is included in version 5.3.80 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


What is the difference between bbox ap and segm ap?

Hi @vansin ,  the 'bbox' and 'segm' ap in COCODetectionMetric follows the definitions in pycocotools.

There are two object detection tasks for COCO dataset: using either bounding box output or object segmentation output (the latter is also known as instance segmentation).
The evaluation metrics for detection with bounding boxes and segmentation masks are identical in all respects except for the IoU computation (which is performed over boxes or masks, respectively).

For more see: https://cocodataset.org/#detection-eval


Cannot disable Global Identifiers for IntelliSense

VS Code IntelliSense offers different types of completions, but there are too many completions for Global Identifiers type
It collects all words inside a file, better we can have a setting to disable this type

I would love to see this work like autocomplete in a browser URL bar -- use the cursor keys to select a "bad" selection, press the Delete key, it's removed from the list.  You could store a "stop-word list" somewhere in user preferences so it's easy to edit.

Delete unwanted items is not enough to me.
If you open a large javascript file, and the variable type is any, IntelliSense will show all the keywords in that file, this is a list of more than 100 items, and almost all of them are useless.
Probably a dynamic adjustment by use frequency would help.

@kaala Is this concern specific to javascript/typescript?

I think this is specific to weakly-typed languages where autocomplete needs to be inferred / best-guess.  Technically it could be an issue for Typescript but suggestions for strongly-typed variables are quite good.  I can't personally come up with anything else that would be nearly as problematic as JS.

javascript only

Thanks @thw0rted and @kaala
Assigning to @mjbvz who works on the language service for javascript and typescript which provides the completions.

Try setting:
"editor.wordBasedSuggestions": false,
"javascript.nameSuggestions": false

If these settings do not address what you are after, please provide an screenshot of the unexpected suggestions that are showing up

Thanks
"javascript.nameSuggestions": false is enough to make the unwanted suggestions disappear.


aws-sam-cli: 1.90 -> 1.98 for fix of sam init

Description of changes
Change Logs from 1.90
https://github.com/aws/aws-sam-cli/releases/tag/v1.98.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.97.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.96.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.95.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.94.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.93.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.92.0
https://github.com/aws/aws-sam-cli/releases/tag/v1.91.0
There is a multiplatform bug in versions of sam init below 1.98 which causes it fail unable to find an architecture for the AWS template.
Things done
This is just a proxy for the pip build process that AWS manages so as far as updating this package I have only updated the version and sha for the downloaded artifact.

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

closing to move changes to https://github.com/NixOS/nixpkgs/pull/249774


Refactor of tickets table rows, to normalize the layout

Adjusting the admin table rows layout that PR #320 was broken in same time that fix other sector fo Helpy.
Here is a PR that normalize the layout refactoring some helpers (has a fallback support of use), HTML structure, and adjusting some CSS rules.
I made a new PR, because I made some other changes here.
Here's a screenshot after refactor:

I am still seeing some issues- specifically the right column in not right aligned on my end (even though in your screenshot they are) and the lines are still not vertically centered (See attachment.)  I reverted the original PR until we get this sorted.  Can you send a PR that just has the locale switcher change, and then we can work out the formatting in a separate PR?

Sure, I will made the language switcher in another PR.
In PR, strange rule detection in your screen, because I maintain the text-align: right; rule in CSS.
I think, the vertical alignment issue is solved in new commit that I've made here. My has conflicts now, but I think, it's because you made a revert on another PR.
See the screenshots below of fixes:
**Admin area -> **

** User area -> **

I've made a commit to adjust my branch able to merge with Helpy, but check the layout style. If the PR has some issues in alignment, please take a screenshot and attach here. :smile:

Yeah I know the right/left alignment thing seemed strange to me, although I didn't look at the actual cause.  But this was one reason I decided to revert the merge just to get a "fresh" try.  Maybe something got mixed up...
Anyways I will review this later today, I hope.


how to connect bridge-server to my own configured stellar-core

Hello Guys,
I need to connect the bridge-server to my owned configured private stellar-code node, which is currently running on HTTP_PORT=11626
I tried to put the local path like "<IP_ADDRESS>:11626" and "localhost:11626" in bridge.cfg into the horizon option.
Thanks

Bridge does not connect to stellar-core directly. Please ask questions at Stack Exchange.


Rename RuleFile to PrometheusRule

Generic CRD names should be avoided. RuleFile could be anything and used by other projects and it's not self-documented.
We can rename it to PrometheusRule, which is more specific.

I agree with the fact that RuleFile is too generic.
The name PrometheusRule is confusing to me. A PrometheusRulecustom resource  would contain multiple Prometheus rules.
Instead I suggest PrometheusRuleFile.
@ant31 @brancz @community what do you think?

While semantically not 100% correct, the file part is meaningless to users, it's just a means to an end.
I still think PrometheusRule makes the most sense, even in the sense of a collection of rules. It's what will be most comprehensible by users. The File part would just cause additional confusion I believe.

My thought is that then we should have also called Prometheus PrometheusSet and Alertmanager AlertmanagerPeer, but the shortened versions make it clear to users what this is about, rather than detailed correctness of the term.

I think it's acceptable to have 'multiple' rule in a crd name PrometheusRule, it's like the resource 'Ingress' you can define many routes in, or all the RBAC resources (e.g. ClusterRole) with many rules inside.

My thought is that then we should have also called Prometheus PrometheusSet and Alertmanager AlertmanagerPeer

That is a good point.
Let's go with PrometheusRule then.

I wonder if you could apply the same argument to every other CRD in any other project including ServiceMonitor in prometheus-operator (i.e. why not "PrometheusServiceMonitor"); the kind is arbitrary and could be defined by any number of other CRDs given their versions are unique.
As the number of CRD-based components installed in the cluster grows, I wonder if disambiguation in the UI (e.g. CLI) is an inevitability to deal with. I'd be surprised if this hasn't already been discussed at length somewhere else (/cc @deads2k)...

the kind is arbitrary and could be defined by any number of other CRDs given their versions are unique.

Actually I'm not even sure if that's true...

When creating with kubectl, it uses the full API group, so there is no abiguity. Your argument regarding the ServiceMonitor is somewhat true, although (almost) nothing is specific to Prometheus, the concept could be used by any other monitoring system just as well.
When getting resources and there is abiguity you can specify the kind + api group, as in:
kubectl get servicemonitor.monitoring.coreos.com


Python error is not shown in the right file

This issue has been moved from a ticket on Developer Community.

If I have two files, main.py and something.py and there is a error in something.py the cursor jumps to where the function in main.py was called when I start with F5. It should jump to where the actual error is.

Original Comments
Feedback Bot on 11/7/2021, 05:44 PM:
We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.

Original Solutions
(no solutions)

This is as designed because the import is failing due to a parsing error in the imported file.


JSON <-> Constant conversion for EIP-24, EIP-34

Analogous to https://github.com/ergoplatform/sigma-rust/issues/611, we need appkit to support conversion between json to ErgoValue and vice versa. Or at the very least, support types introduced in EIP-24 and 34.
The motivation behind this is explained here by @aslesarenko: https://github.com/ergoplatform/eips/pull/69#discussion_r890013696

Hi @anon-real  kindly visit the official ERGO page to start a chat with an agent on a live chat to report this for review and for further assistance via LIVE CHAT

@anon-real visit the official ERGO page to start a chat with an official agent on a live chat support to report this for review and for further assistance via LIVE CHAT


⚠ ETF has degraded performance

In eae6e7d, ETF (https://markets.hankyung.com/equity-product/etf) experienced degraded performance:

HTTP code: 200
Response time: 8424 ms

Resolved: 신규상장 performance has improved in 5ad2163.


right side topbar elements broken when below min-width

The right side of topbar stops functioning properly when you shrink the size of the screen under the min-width. This is observable in both the app and fluid layout if you shrink the screen size.
This is due to the position fixed of the topbar forcing it to be anchored to the top right. I tried looking to see if there was a way to support the min-width, but this does not seem possible without javascript usage. That said the UX should not break under these conditions. Simply adding something like the code below will prevent this, but it's not a bulletproof solution.
.topbar .container {
width: auto;
max-width: 940px;
}
.topbar .container-fluid {
min-width: 0px;
}

Duplicate of #667.

I've also noticed this. By default, if I shrink below the min-width, my fields on the right of the topbar disappear, and there is no way to scroll horizontally so they come in view.


changes to match EEA V2 spec

changed IP from bytes to string
combined enodeHigh + enodeLow to enodeId (single string)
don't modify to hex, pass strings as is
return boolean

Signed-off-by: Sally MacFarlane<EMAIL_ADDRESS>

These changes match the v2 Permissioned Chains spec, and the v6 Client Spec.
Would it help if EEA brought the spec version numbers in alignment? (e.g. by skipping v3-v6 for the permissioned chains spec?
(Yeah, this is a somewhat "bikeshed" comment...)

These changes match the v2 Permissioned Chains spec, and the v6 Client Spec.
Would it help if EEA brought the spec version numbers in alignment? (e.g. by skipping v3-v6 for the permissioned chains spec?
(Yeah, this is a somewhat "bikeshed" comment...)

These changes match the v2 Permissioned Chains spec, and the v6 Client Spec.
Would it help if EEA brought the spec version numbers in alignment? (e.g. by skipping v3-v6 for the permissioned chains spec?
(Yeah, this is a somewhat "bikeshed" comment...)

@chaals we don't have strong opinions on the version number. If they are the same it's easier in a way - but then why are they different things? And also v2 of the Permissioned Chains spec doesn't exactly match v6 of the Client spec (connectionAllowed return type bytes vs bool)


Floating point inputs in inspector behave dIfferently between Linux and macOS versions of the editor and lose precision upon saving

Tested versions

Reproducible in 4.2.2.stable, 4.0.stable, 4.0.alpha1

System information
Godot v4.2.2.stable - Debian GNU/Linux 12 (bookworm) 12 - X11 - Vulkan (Mobile) - dedicated NVIDIA GeForce RTX 4070 (nvidia) - AMD Ryzen 7 3700X 8-Core Processor (16 Threads)  ///  Godot v4.2.2.stable - macOS 14.5.0 - Vulkan (Mobile) - integrated Apple M1 - Apple M1 (8 Threads)
Issue description
The Inspector behaves differently between macOS and Linux when editing float (and floating-point vector-type) properties.
It seems on macOS numbers are usually displayed and saved correctly, while on Linux both whole numbers and fractions are often displayed and saved incorrectly.
If I remember correctly, months ago I read in another issue about property range hints that the behavior on Linux was intended to reflect the inability of floats to store arbitrary fractions, but the conversion from the entered value to one that can be stored in a float often does not work correctly.
Small whole numbers can usually be stored without loss of precision. The number 40 for example is represented as<PHONE_NUMBER>1000000000000000000000 (sign 0 = positive, exponent 10000100 = 2^5 = 32, mantissa<PHONE_NUMBER>0000000000000 = 1 + 0.25 = 1.25), which is 32 * 1.25 = 40 (exact).
Fractions that are 1 divided by a power of two (1/2^x) can also be stored without loss of precision for small exponents, yet on Linux Godot rounds 0.015625 (which is 1/64) to 0.01559599999746 (displayed when hovering the field), displays it as 0.0156 in the text field and saves it as 0.015596 in the tscn-file.
Converting a manually entered 0 to -0 should also be avoided, even if both are valid IEEE 754 floats.
These conversions occur in the step-field of TextureProgressBar as well as its custom_minimum_size, Control's position and size, Node2D's scale, but not Node2D's or Node3D's position (where whole numbers are usually stored as entered, but fractions are rounded to 3 decimal places (e.g. 0.0625 to 0.0630000000092, saved as 0.063) which is not ideal either.
Steps to reproduce
Create a new TextureProgressBar. Its min_value is shown as 0 and its max_value as 100 on macOS, while on Linux -0 and 99.9999 is displayed. The resulting tscn-files do not differ.
However, entering 40, 40 in the TextureProgressBar's custom_minimum_size fields results in tscn-files reflecting the difference in the editor: on macOS the resulting file contains custom_minimum_size = Vector2(40, 40) (as displayed in the Inspector on macOS), while the file created on Linux containes custom_minimum_size = Vector2(39.9996, 39.9996) (as displayed in the Inspector on Linux).
This behavior is not unique to TextureProgressBar, but affects many if not all floating-point inputs in the editor.
Minimal reproduction project (MRP)
N/A

Likely duplicate of:

https://github.com/godotengine/godot/issues/91631

Closing as solved, if you can still reproduce this in 4.3.rc2 please comment and this can be reopened


[namespacing] update link-to-external-component to be called link-to-external so references to it are not confused

Why?
To get our application ready to codemod to template imports, we are trying to namespace all external addon helpers and components from a previously formatted
{{link-to-external ...}

to
{{ember-engines::link-to-external ...}

Problem?
Currently engines exports the component for link-to-external as link-to-external-component. This will force us to reference
{{ember-engines::link-to-external-component ...}

Which is confusing as the docs specify a helper called link-to-external.

@stefanpenner it looks like the CI failed due to a yarn lock issue? Would you be able to re-run it? I don't have access to that option from my side.

CI failure doesn't seem to be lock file related:

"ENOENT: no such file or directory, lstat '/home/travis/build/ember-engines/ember-engines/tests/dummy/lib/eager-blog/node_modules'".

CI fixed

@rwjblue since the CI is fixed, does the change seem okay to merge now?

@gabrielcsapo do you need help here?

@villander @rwjblue added the re-export. Sorry for the delay.

Why we need keep addon/components/link-to-external-component.js with re-export @rwjblue ?

@villander this is considered public as @rwjblue said. Keeping it would maintain forward compatibility for those use cases.

Ah ok, just for backward compatibility. Sounds good
LGTM!

@villander would we be able to merge and release this? ❤

Unfortunately I don’t have this privilege 😕
Can you help here @rwjblue?


Should we require nominee EQF level to be provided before nomination?

Currently, <nominee-eqf-level> is required, but I'm not sure if this is correct.

Will all sending partners be able to provide this information?
Is it very important for the receiving partner?

I think we should make it recommended, but not required.

@kaiqu, what do you think.

It should probably be optional for Staff Mobilities. As for Student Mobilities, I leave it to people who know the domain better than I do.

This API supports "Student Mobility for Studies" only. Other types of mobilities are referenced in IIAs API, but not here.

This API supports "Student Mobility for Studies" only.

In that case, I leave it to the domain experts - they presumably know if student mobilities can be meaningful without an EQF Level.

In which situation would a sending institution not be able to provide the EQF-level of it's student? For UGent it's ok to be mandatory.

In which situation would a sending institution not be able to provide the EQF-level of it's student? For UGent it's ok to be mandatory.

@kamil-olszewski-uw, could you comment?
BTW, related issue: https://github.com/erasmus-without-paper/ewp-specs-api-mobilities/issues/20
Now, both of these new elements are optional. Should we make the second one (<efq-level-studied-at-departure>) required? Perhaps it's a bit safer to leave it optional after the splitting? Perhaps some HEIs might have problems with providing it?

Our IRO says that EQF level is usually not mandatory, but some receiving HEIs require it (e.g. they have different campuses for every level of studies). In those cases EQF level of studies at the moment of mobility is more important than EQF level of studies at the moment of nomination.

Both new elements were made optional in version 0.7.0.


Expose functionality shared only by all members of a light group

The main change is intersecting the features instead of unioning them: a light group should expose only the common functionality.

This may need a broader discussion. We union together color modes and effects, I think this behavior is not correct and we should instead intersect.

Hmm, it would definitely be a breaking change.
For example, I could see combining brightness only lights with RGB(-CCT) lights to be somewhat "common". You'd still want the color control for the lights that support it if they're grouped.


Expanded information #1326

Added another example and fixed the MBs spelling

OPS Build status updates of commit f6a626d:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit f6a626d:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit f6a626d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit 93c1e9e:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit 93c1e9e:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit 93c1e9e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit c2b8e70:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit c2b8e70:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit c2b8e70:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit 41c9e51:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit 41c9e51:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit 41c9e51:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit 3b8f26e:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit 3b8f26e:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit 3b8f26e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit ef22e18:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

OPS Build status updates of commit ef22e18:
:clock10: Incremental building: average incremental building time is 12 min(s) 24 sec(s)

OPS Build status updates of commit ef22e18:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-online/Set-SPOGeoStorageQuota.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


This module isn't compatible with Node 0.12

Any information on why?

There was some native api breaking changes in node 0.12 that cause the "ldapjs" package to break and it wasn't fixed yet.
Try
npm install passport-ldap

on node version 0.12.x and see that the native function calls are incorrect and you get errors during installing.

ok thanks, when mcavage/node-ldapjs/issues/266 is fixed then ill update this if there are are api changes

I'm creating my first web app and I need an ldap module for authentication and authorization to use certain buttons in forms.  I was planning on using this but with the latest version of node, it is not possible.  Should I downgrade node to use this module or find an alternative module to use with the latest node?


chore: Phone Input Widget Integration

Fixes #27746

/build-deploy-preview skipTests=true

@jsartisan ”Change country code” doesn't seem to work.

”Change country code” doesn't seem to work.
@ichik Yes, that will be handled after we create the select component.

/ok-to-test


Create right menu

Your add-on is great. Add-on will be perfect if you provide ability to add Right responsive menu like left one.

Doing this isn't actually complicated, it's just that I won't develop a feature for a single user. If you are interested in developing this your self, I'll gladly point you in the right direction.

Reopen if you plain to make a pull request.


Fix data replication script for search-api

When trying to replicate search-api data locally via $ gds aws govuk-integration-poweruser --assume-role-ttl 180m ./bin/replicate-elasticsearch.sh - the result was an error...
{ "error": {
  "root_cause": [
      {
        "type": "repository_exception",
        "reason": "[snapshots] location [/usr/share/replication] doesn't match any of the locations specified by path.repo because this setting is empty"
      }
  ],
  "type": "repository_exception",
  "reason": "[snapshots] failed to create repository",
  "caused_by": {
    "type": "repository_exception",
    "reason": "[snapshots] location [/usr/share/replication] doesn't match any of the locations specified by path.repo because this setting is empty"
    }
  },
  "status": 500
}

After a lot of trial-and-error and investigation where we saw the elasticesearch config YAML file (inside the docker container) reporting as a directory! And what appeared to be a user permissions issue (again inside the docker container). We finally, found that by moving the path.repo config option into the dummy config file it resolved the issue and the snapshots were loaded correctly.

That must have been fun 😱

Oh, yeah! I love being knee-deep in docker container innards!


[Bug] typeDecl.derivedTypeDeclTransitive not work

Describe the bug
While using joern to query an Android application, derivedTypeDeclTransitive returns empty result:
joern> cpg.typeDecl.fullNameExact("androidx.appcompat.app.AppCompatActivity").derivedTypeDeclTransitive.l
res41: List[TypeDecl] = List()

However inheritsFromTypeFullName got the results:
joern> cpg.typeDecl.filter(_.inheritsFromTypeFullName.contains("androidx.appcompat.app.AppCompatActivity")).fullName.l
res40: List[String] = List(
  "oversecured.ovaa.activities.EntranceActivity",
  "oversecured.ovaa.activities.MainActivity",
  "oversecured.ovaa.activities.WebViewActivity",
  "oversecured.ovaa.activities.LoginActivity",
  "oversecured.ovaa.activities.DeeplinkActivity"
)

To Reproduce
Steps to reproduce the behavior:

joern openCode("ovaa.apk")
perform query

the APK source can be found at https://github.com/oversecured/ovaa, And the the binary file is ovaa.apk.zip
Expected behavior
Get list of activities like the second query.
Desktop (please complete the following information):

OS: Ubuntu 22.04.1 LTS (Jammy Jellyfish)
Joern Version: 1.2.12+0-6ff8c800+20230611-1839
Java version: OpenJDK Runtime Environment (build 17.0.7+7-Ubuntu-0ubuntu122.04.2)

I generate the cpg with following command:
jimple2cpg --android /path/to/android.jar -o ovaa.cpg ovaa.apk

And then use importCpg in joern to import the ovaa.cpg.

@prabhu I'm using the exact same SDK version, aka $ANDROID_HOME/platforms/android-33/android.jar. However the joern I use is built from source. That's strange, I'll update the code and test with the release version to see if get different results.

Could you compare the difference in jimple2cpg between the two versions? I made some changes recently, but it might not cause any difference since those were optional flags.

@prabhu After updating to the latest commit it works, however I did not find any changes in jimple2cpg frontend, which the diff comparation is https://github.com/joernio/joern/compare/6ff8c8009..58358b433

Update:
It works in the first time. But later when I import it from saved workspace, it shows empty result again!
joern> workspace
res0: workspacehandling.WorkspaceManager[io.joern.joerncli.console.JoernProject] =
___________________________________________________________________________________________________________
| name    | overlays                                       | inputPath                             | open  |
|==========================================================================================================|
| cpg.bin | callgraph,controlflow,typerel,base,dataflowOss | /tmp/aaf/oversecured.ovaa_1.0/cpg.bin | false |

joern> workspace.openProject("cpg.bin")
Creating working copy of CPG to be safe
Loading base CPG from: /tmp/aaf/oversecured.ovaa_1.0/workspace/cpg.bin/cpg.bin.tmp
res1: Option[workspacehandling.Project] = Some(
  value = Project(
    projectFile = ProjectFile(inputPath = "/tmp/aaf/oversecured.ovaa_1.0/cpg.bin", name = "cpg.bin"),
    path = /tmp/aaf/oversecured.ovaa_1.0/workspace/cpg.bin,
    cpg = Some(value = Cpg (Graph [846091 nodes]))
  )
)

joern> cpg.typeDecl.fullNameExact("androidx.appcompat.app.AppCompatActivity").derivedTypeDeclTransitive.fullName.l
res2: List[String] = List()

Note that while opening from workspace, the cpg only contains 846091 nodes, but if you use importCpg it will be 926362 nodes instead.
According to my test, the reason why the saved workspace miss some changes is that I did not enter save command    explicitly after first importCpg. The prompt of joern says:
The graph has been modified. You may want to use the `save` command to persist changes to disk.  All changes will also be saved collectively on exit

But seems that the changes are not automatically saved on exit.
So in conclusion, this issue is caused by not correctly saved cpg in workspace, maybe I didn't understand it correctly.


Bump npm package depdendencies

Didn't update ava and eslint to the latest in this PR as they need more tuning.

unsure if that won't break all the cases.

I think it depends on the coverage and the confidence of the tests :)

#1849