rocprof makes application runs failed bug series 2

A follow up of #1257
Using ROCm 3.10,
Without rocprof, my application always run.
With rocprof, application crashes.
build the app with AOMP shipped by 3.10.
AOMP_11.9-1 clang version 11.0.0 (/src/external/rocm-aomp/amd-llvm-project/clang 5cfd278ccb98e85bc8c193bc9d8fe40233c5e2be)
Here is a backtrace from gdb rocprof --hsa-trace gdb ./bin/check_spo_batched
Thread 1 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
0x0000000000500c00 in ?? ()
(gdb) bt
#0  0x0000000000500c00 in ?? ()
#1  0x00007fffb5cb8da8 in rocr::HSA::hsa_signal_store_screlease(hsa_signal_s, long) ()
   from /opt/rocm/aomp/lib/../../hsa/lib/libhsa-runtime64.so.1
#2  0x00007ffeb4712e6e in roctracer::hsa_support::hsa_signal_store_screlease_callback(hsa_signal_s, long) ()
   from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#3  0x00007fffb6088360 in core::Runtime::Memcpy(hsa_signal_s, void*, void const*, unsigned long) ()
   from /opt/rocm/aomp/lib/libomptarget.rtl.hsa.so
#4  0x00007fffb609d0a8 in __tgt_rtl_data_submit_async () from /opt/rocm/aomp/lib/libomptarget.rtl.hsa.so
#5  0x00007ffff6a671dd in target_data_begin(DeviceTy&, int, void**, void**, long*, long*, __tgt_async_info*) ()
   from /opt/rocm/aomp/lib/libomptarget.so
#6  0x00007ffff6a677e2 in target(long, void*, int, void**, void**, long*, long*, int, int, int) ()
   from /opt/rocm/aomp/lib/libomptarget.so
#7  0x00007ffff6a5ec79 in __tgt_target () from /opt/rocm/aomp/lib/libomptarget.so
#8  0x000000000041397b in qmcplusplus::einspline_spo_omp<double>::einspline_spo_omp(qmcplusplus::einspline_spo_omp<double> const&, int, int) ()
#9  0x0000000000408264 in omp_outlined. ()
#10 0x00007ffff6d1a813 in __kmp_invoke_microtask () from /opt/rocm/aomp/lib/libomp.so
#11 0x00007ffff6cacca5 in __kmp_invoke_task_func () from /opt/rocm/aomp/lib/libomp.so
#12 0x00007ffff6cb13de in __kmp_fork_call () from /opt/rocm/aomp/lib/libomp.so
#13 0x00007ffff6c9da79 in __kmpc_fork_call () from /opt/rocm/aomp/lib/libomp.so
#14 0x0000000000406eb5 in main ()

second run
Thread 2 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffb59e5700 (LWP 24526)]
0x00007fffb5cb89df in rocr::HSA::hsa_signal_load_relaxed(hsa_signal_s) ()
   from /opt/rocm/aomp/lib/../../hsa/lib/libhsa-runtime64.so.1
(gdb) bt
#0  0x00007fffb5cb89df in rocr::HSA::hsa_signal_load_relaxed(hsa_signal_s) ()
   from /opt/rocm/aomp/lib/../../hsa/lib/libhsa-runtime64.so.1
#1  0x00007ffeb4712b51 in roctracer::hsa_support::hsa_signal_load_relaxed_callback(hsa_signal_s) ()
   from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#2  0x00007ffeb474284a in proxy::Tracker::Complete(long, roctracer::trace_entry_t*) ()
   from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#3  0x00007ffeb4742dc7 in proxy::Tracker::Handler(long, void*) ()
   from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#4  0x00007fffb5cd59eb in rocr::core::Runtime::AsyncEventsLoop(void*) ()
   from /opt/rocm/aomp/lib/../../hsa/lib/libhsa-runtime64.so.1
#5  0x00007fffb5c83367 in rocr::os::ThreadTrampoline(void*) () from /opt/rocm/aomp/lib/../../hsa/lib/libhsa-runtime64.so.1
#6  0x00007ffff6a22609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff6949293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Using AOMP
AOMP_STANDALONE_11.11-2 clang version 11.0.0 (https://github.com/ROCm-Developer-Tools/amd-llvm-project de58da8db4581dd8f17a613a33c0f916b56be788)
Thread 9 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffd2d833a00 (LWP 25473)]
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007fffadd7f479 in ?? () from /usr/lib/aomp/lib/libhsa-runtime64.so.1
#2  0x00007fffac9f7c35 in roctracer::hsa_support::hsa_signal_wait_scacquire_callback(hsa_signal_s, hsa_signal_condition_t, long, unsigned long, hsa_wait_state_t) () from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#3  0x00007fffae0273da in __tgt_rtl_run_target_team_region () from /usr/lib/aomp/lib/libomptarget.rtl.amdgpu.so
#4  0x00007fffae027ee0 in __tgt_rtl_run_target_region_async () from /usr/lib/aomp/lib/libomptarget.rtl.amdgpu.so
#5  0x00007ffff6a675c3 in ?? () from /usr/lib/aomp/lib/libomptarget.so
#6  0x00007ffff6a5dfb9 in __tgt_target () from /usr/lib/aomp/lib/libomptarget.so
#7  0x000000000041397b in qmcplusplus::einspline_spo_omp<double>::einspline_spo_omp(qmcplusplus::einspline_spo_omp<double> const&, int, int) ()
#8  0x0000000000408264 in omp_outlined. ()
#9  0x00007ffff6d1a793 in __kmp_invoke_microtask () from /usr/lib/aomp/lib/libomp.so
#10 0x00007ffff6cacc25 in ?? () from /usr/lib/aomp/lib/libomp.so
#11 0x00007ffff6cabd41 in ?? () from /usr/lib/aomp/lib/libomp.so
#12 0x00007ffff6d03dc2 in ?? () from /usr/lib/aomp/lib/libomp.so
#13 0x00007ffff6a21609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007ffff6948293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

run 2
Thread 8 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffd2e035980 (LWP 25551)]
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007fffadd7f088 in ?? () from /usr/lib/aomp/lib/libhsa-runtime64.so.1
#2  0x00007fffac9eed5e in roctracer::hsa_support::hsa_signal_store_relaxed_callback(hsa_signal_s, long) ()
   from /opt/rocm-3.10.0/roctracer/tool/../lib/libroctracer64.so.1
#3  0x00007fffae027369 in __tgt_rtl_run_target_team_region () from /usr/lib/aomp/lib/libomptarget.rtl.amdgpu.so
#4  0x00007fffae027ee0 in __tgt_rtl_run_target_region_async () from /usr/lib/aomp/lib/libomptarget.rtl.amdgpu.so
#5  0x00007ffff6a675c3 in ?? () from /usr/lib/aomp/lib/libomptarget.so
#6  0x00007ffff6a5dfb9 in __tgt_target () from /usr/lib/aomp/lib/libomptarget.so
#7  0x000000000041397b in qmcplusplus::einspline_spo_omp<double>::einspline_spo_omp(qmcplusplus::einspline_spo_omp<double> const&, int, int) ()
#8  0x0000000000408264 in omp_outlined. ()
#9  0x00007ffff6d1a793 in __kmp_invoke_microtask () from /usr/lib/aomp/lib/libomp.so
#10 0x00007ffff6cacc25 in ?? () from /usr/lib/aomp/lib/libomp.so
#11 0x00007ffff6cabd41 in ?? () from /usr/lib/aomp/lib/libomp.so
#12 0x00007ffff6d03dc2 in ?? () from /usr/lib/aomp/lib/libomp.so
#13 0x00007ffff6a21609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007ffff6948293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

run 3
Thread 3 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffadadf700 (LWP 26064)]
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007fffadd7f1c8 in ?? () from /usr/lib/aomp/lib/libhsa-runtime64.so.1
#2  0x00007fffad0b07b5 in ?? () from /opt/rocm-3.10.0/rocprofiler/lib/librocprofiler64.so
#3  0x00007fffad0b0b3d in ?? () from /opt/rocm-3.10.0/rocprofiler/lib/librocprofiler64.so
#4  0x00007fffadd9bd4b in ?? () from /usr/lib/aomp/lib/libhsa-runtime64.so.1
#5  0x00007fffadd49787 in ?? () from /usr/lib/aomp/lib/libhsa-runtime64.so.1
#6  0x00007ffff6a21609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff6948293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

run 4
error(4105) "queue_event_callback(), queue error handling is not supported"

Thread 7 "check_spo_batch" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffd2e837900 (LWP 26445)]
0x0000000000000000 in ?? ()

Reproducer uses AOMP clang++:
git clone https://github.com/ye-luo/miniqmc.git
cd miniqmc/build
cmake -D CMAKE_CXX_COMPILER=clang++       -D ENABLE_OFFLOAD=1       -D OFFLOAD_TARGET=amdgcn-amd-amdhsa       -D OFFLOAD_ARCH=gfx906 ..
make -j
export OMP_NUM_THREADS=8
rocprof --hsa-trace ./bin/check_spo_batched
rocprof --hsa-trace ./bin/check_spo

Thanks @ye-luo
We are tracking this issue internally and working with dev.
Will share an update soon.
Thank you.

Ping. Still broken in 4.1.

Hi @ye-luo, yes, its broken in 4.1 too, which we know.
I just informed developer for the status on this. Let me share an update once I get any.
Thank you.

remains broken in 4.3

Hi @ye-luo
Thanks for the update. I have increased the priority and it will be hopefully fixed in next public release.
Thank you.

Still broken in 4.5.

Hi Ye, we recently fixed an issue in the libomptarget where we released a packet a bit too early:
[libomptarget] [amdgpu] After a kernel dispatch packet is published, its contents must not be accessed.
can you try on ROCm 4.5 with the AOMP 14.0 you built yesterday ?

My AOMP build
$ clang++ -v
AOMP_STANDALONE_14.0-0 clang version 14.0.0 (https://github.com/radeonopencompute/llvm-project 11d5fa11d52cc4beca16e57b9a16a56947e58635)

And using rocprof from ROCm 4.5, both
rocprof --hsa-trace ./bin/check_spo_batched

and
rocprof --stats ./bin/check_spo_batched

crash. The crashes happen at the beginning of the run.

@ye-luo Do you have a stack trace for the latest crash?

With --hsa-trace
/opt/rocm/bin/rocprof --hsa-trace gdb ./bin/check_spo_batched
RPL: on '211103_212535' from '/opt/rocm-4.5.0/rocprofiler' in '/home/yeluo/opt/miniqmc/build_r7_rocmbuild_offload'
...
Starting program: /home/yeluo/opt/miniqmc/build_r7_rocmbuild_offload/bin/check_spo_batched
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffee50c6700 (LWP 3664285)]
[New Thread 0x7ffee3e57700 (LWP 3664286)]
ompt_pre_init(): tool_setting = 1
ompt_pre_init(): ompt_enabled = 0
ROCProfiler: input from "/tmp/rpl_data_211103_212535_3664250/input.xml"
  0 metrics
ROCTracer (pid=3664276):
    HSA-trace()
    HSA-activity-trace()

Thread 1 "check_spo_batch" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ffff6a64859 in __GI_abort () at abort.c:79
#2  0x00007ffee2fe3743 in HsaRsrcFactory::HsaRsrcFactory(bool) () from /opt/rocm-4.5.0/roctracer/tool/libtracer_tool.so
#3  0x00007ffee2fcd747 in OnLoad () from /opt/rocm-4.5.0/roctracer/tool/libtracer_tool.so
#4  0x00007ffee3f38ddf in rocr::core::Runtime::LoadTools() () from /home/yeluo/rocm/aomp/lib-debug/../lib/libhsa-runtime64.so.1
#5  0x00007ffee3f398f0 in rocr::core::Runtime::Load() () from /home/yeluo/rocm/aomp/lib-debug/../lib/libhsa-runtime64.so.1
#6  0x00007ffee3f399fc in rocr::core::Runtime::Acquire() () from /home/yeluo/rocm/aomp/lib-debug/../lib/libhsa-runtime64.so.1
#7  0x00007ffee3f18ade in rocr::HSA::hsa_init() () from /home/yeluo/rocm/aomp/lib-debug/../lib/libhsa-runtime64.so.1
#8  0x00007ffee43428e9 in HSALifetime::HSALifetime (this=0x7ffee48c1230 <DeviceInfo>) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/rtl.cpp:359
#9  0x00007ffee43401e9 in RTLDeviceInfoTy::RTLDeviceInfoTy (this=0x7ffee48c1230 <DeviceInfo>) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/rtl.cpp:722
#10 0x00007ffee4340100 in __cxx_global_var_init.4(void) () at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/rtl.cpp:875
#11 0x00007ffee4340133 in _GLOBAL__sub_I_rtl.cpp () at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/trace.h:114
#12 0x00007ffff7fe0c4a in call_init (l=<optimized out>, argc=argc@entry=1, argv=argv@entry=0x7fffffffc538, env=env@entry=0x7fffffffc548) at dl-init.c:72
#13 0x00007ffff7fe0d51 in call_init (env=0x7fffffffc548, argv=0x7fffffffc538, argc=1, l=<optimized out>) at dl-init.c:30
#14 _dl_init (main_map=0x334680, argc=1, argv=0x7fffffffc538, env=0x7fffffffc548) at dl-init.c:119
#15 0x00007ffff6ba2915 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:182
#16 0x00007ffff7fe520f in dl_open_worker (a=a@entry=0x7fffffffbdb0) at dl-open.c:758
#17 0x00007ffff6ba28b8 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:208
#18 0x00007ffff7fe474a in _dl_open (file=0x30c610 "/home/yeluo/rocm/aomp/lib-debug/libomptarget.rtl.amdgpu.so", mode=-2147483646, caller_dlopen=<optimized out>, nsid=-2, argc=1, argv=0x7fffffffc538,
    env=0x7fffffffc548) at dl-open.c:837
#19 0x00007ffff714334c in dlopen_doit (a=a@entry=0x7fffffffbfd0) at dlopen.c:66
#20 0x00007ffff6ba28b8 in __GI__dl_catch_exception (exception=exception@entry=0x7fffffffbf70, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:208
#21 0x00007ffff6ba2983 in __GI__dl_catch_error (objname=0x2faa40, errstring=0x2faa48, mallocedp=0x2faa38, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:227
#22 0x00007ffff7143b59 in _dlerror_run (operate=operate@entry=0x7ffff71432f0 <dlopen_doit>, args=args@entry=0x7fffffffbfd0) at dlerror.c:170
#23 0x00007ffff71433da in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#24 0x00007ffff6ceaa11 in RTLsTy::LoadRTLs (this=0x2f9880) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/src/rtl.cpp:151
#25 0x00007ffff6ce8e7e in std::__invoke_impl<void, void (RTLsTy::*)(), RTLsTy*> (__f=@0x7fffffffc3d0: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>,
    __t=@0x7fffffffc3c8: 0x2f9880) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:73
#26 0x00007ffff6ce8de2 in std::__invoke<void (RTLsTy::*)(), RTLsTy*> (__fn=@0x7fffffffc3d0: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>, __args=@0x7fffffffc3c8: 0x2f9880)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95
#27 0x00007ffff6ce8d9c in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#1}::operator()() const (this=0x7fffffffc368)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:671
#28 0x00007ffff6ce8d54 in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#2}::operator()() const (this=0x7ffff713b758)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:676
#29 0x00007ffff6ce8d29 in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#2}::__invoke() ()
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:676
#30 0x00007ffff6c434df in __pthread_once_slow (once_control=0x2f98bc, init_routine=0x7ffff7035c20 <__once_proxy>) at pthread_once.c:116
#31 0x00007ffff6ce881b in __gthread_once (__once=0x2f98bc, __func=0x7ffff7035c20 <__once_proxy>) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:700
#32 0x00007ffff6ce895c in std::call_once<void (RTLsTy::*)(), RTLsTy*> (__once=..., __f=@0x7fffffffc3d0: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>,
    __args=@0x7fffffffc3c8: 0x2f9880) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:683
#33 0x00007ffff6ce48d9 in __tgt_register_lib (desc=0x245230 <omp_offloading.descriptor>) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/src/interface.cpp:36
#34 0x00000000002b33bd in __libc_csu_init ()
#35 0x00007ffff6a66040 in __libc_start_main (main=0x257020 <main>, argc=1, argv=0x7fffffffc538, init=0x2b3370 <__libc_csu_init>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffc528)
    at ../csu/libc-start.c:264
#36 0x000000000025655e in _start ()

with --stats or nothing
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ffff6a64859 in __GI_abort () at abort.c:79
#2  0x00007ffee3446474 in ?? () from /opt/rocm-4.5.0/rocprofiler/lib/librocprofiler64.so
#3  0x00007ffee34240e0 in ?? () from /opt/rocm-4.5.0/rocprofiler/lib/librocprofiler64.so
#4  0x00007ffee3428e95 in ?? () from /opt/rocm-4.5.0/rocprofiler/lib/librocprofiler64.so
#5  0x00007ffee343d687 in ?? () from /opt/rocm-4.5.0/rocprofiler/lib/librocprofiler64.so
#6  0x00007ffee34433ed in ?? () from /opt/rocm-4.5.0/rocprofiler/lib/librocprofiler64.so
#7  0x00007ffee4340c1b in RTLDeviceInfoTy::RTLDeviceInfoTy (this=0x7ffee48c1230 <DeviceInfo>) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/rtl.cpp:815
#8  0x00007ffee4340100 in __cxx_global_var_init.4(void) () at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/rtl.cpp:875
#9  0x00007ffee4340133 in _GLOBAL__sub_I_rtl.cpp () at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/plugins/amdgpu/src/trace.h:114
#10 0x00007ffff7fe0c4a in call_init (l=<optimized out>, argc=argc@entry=1, argv=argv@entry=0x7fffffffc588, env=env@entry=0x7fffffffc598) at dl-init.c:72
#11 0x00007ffff7fe0d51 in call_init (env=0x7fffffffc598, argv=0x7fffffffc588, argc=1, l=<optimized out>) at dl-init.c:30
#12 _dl_init (main_map=0x334670, argc=1, argv=0x7fffffffc588, env=0x7fffffffc598) at dl-init.c:119
#13 0x00007ffff6ba2915 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:182
#14 0x00007ffff7fe520f in dl_open_worker (a=a@entry=0x7fffffffbe00) at dl-open.c:758
#15 0x00007ffff6ba28b8 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:208
#16 0x00007ffff7fe474a in _dl_open (file=0x30c620 "/home/yeluo/rocm/aomp/lib-debug/libomptarget.rtl.amdgpu.so", mode=-2147483646, caller_dlopen=<optimized out>, nsid=-2, argc=1, argv=0x7fffffffc588,
    env=0x7fffffffc598) at dl-open.c:837
#17 0x00007ffff714334c in dlopen_doit (a=a@entry=0x7fffffffc020) at dlopen.c:66
#18 0x00007ffff6ba28b8 in __GI__dl_catch_exception (exception=exception@entry=0x7fffffffbfc0, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:208
#19 0x00007ffff6ba2983 in __GI__dl_catch_error (objname=0x2faa40, errstring=0x2faa48, mallocedp=0x2faa38, operate=<optimized out>, args=<optimized out>) at dl-error-skeleton.c:227
#20 0x00007ffff7143b59 in _dlerror_run (operate=operate@entry=0x7ffff71432f0 <dlopen_doit>, args=args@entry=0x7fffffffc020) at dlerror.c:170
#21 0x00007ffff71433da in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#22 0x00007ffff6ceaa11 in RTLsTy::LoadRTLs (this=0x2f9880) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/src/rtl.cpp:151
#23 0x00007ffff6ce8e7e in std::__invoke_impl<void, void (RTLsTy::*)(), RTLsTy*> (__f=@0x7fffffffc420: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>,
    __t=@0x7fffffffc418: 0x2f9880) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:73
#24 0x00007ffff6ce8de2 in std::__invoke<void (RTLsTy::*)(), RTLsTy*> (__fn=@0x7fffffffc420: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>, __args=@0x7fffffffc418: 0x2f9880)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95
#25 0x00007ffff6ce8d9c in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#1}::operator()() const (this=0x7fffffffc3b8)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:671
#26 0x00007ffff6ce8d54 in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#2}::operator()() const (this=0x7ffff713b758)
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:676
#27 0x00007ffff6ce8d29 in std::call_once<void (RTLsTy::*)(), RTLsTy*>(std::once_flag&, void (RTLsTy::*&&)(), RTLsTy*&&)::{lambda()#2}::__invoke() ()
    at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:676
#28 0x00007ffff6c434df in __pthread_once_slow (once_control=0x2f98bc, init_routine=0x7ffff7035c20 <__once_proxy>) at pthread_once.c:116
#29 0x00007ffff6ce881b in __gthread_once (__once=0x2f98bc, __func=0x7ffff7035c20 <__once_proxy>) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:700
#30 0x00007ffff6ce895c in std::call_once<void (RTLsTy::*)(), RTLsTy*> (__once=..., __f=@0x7fffffffc420: (void (RTLsTy::*)(struct RTLsTy * const)) 0x7ffff6cea540 <RTLsTy::LoadRTLs()>,
    __args=@0x7fffffffc418: 0x2f9880) at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:683
#31 0x00007ffff6ce48d9 in __tgt_register_lib (desc=0x245230 <omp_offloading.descriptor>) at /home/yeluo/git/aomp14.0/llvm-project/openmp/libomptarget/src/interface.cpp:36
#32 0x00000000002b33bd in __libc_csu_init ()
#33 0x00007ffff6a66040 in __libc_start_main (main=0x257020 <main>, argc=1, argv=0x7fffffffc588, init=0x2b3370 <__libc_csu_init>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffc578)
    at ../csu/libc-start.c:264
#34 0x000000000025655e in _start ()

@ye-luo An issue was just fixed.
https://github.com/RadeonOpenCompute/llvm-project/commit/c974d826ca4596739c47b8d2a1520c35affc5ead
Can you please update llvm-project in AOMP14 so that you have the above commit and then rebuild and try again? Also, please use rocprof built by AOMP14, not the one from ROCm4.5.

fresh built compiler and rocprof still don't work
yeluo@epyc-server:~/git/aomp14.0$ aomp/bin/clone_aomp.sh list
MANIFEST FILE: /home/yeluo/git/aomp14.0/aomp/bin/../manifests/aomp_14.0.xml
  repo src       branch                 path                 repo name    last hash    updated           commitor         for author
  --------       ------                 ----                 ---------    ---------    -------           --------         ----------
       roc amd-stg-open         llvm-project              llvm-project c974d826ca45 2021-11-04      Ron Lieberman       Greg Rodgers
       roc amd-stg-open rocm-compilersupport      ROCm-CompilerSupport ef72f4edb3dd 2021-10-12      Jeremy Newton      Jeremy Newton
       roc amd-stg-open     rocm-device-libs          ROCm-Device-Libs 2011841dfe9e 2021-11-03      Ron Lieberman        gregrodgers
  roctools     aomp-dev                flang                     flang 4f1282c59a76 2021-09-22             GitHub            ronlieb
  roctools     aomp-dev          aomp-extras               aomp-extras aefc0d6c7434 2021-10-18      Ron Lieberman      Ron Lieberman
  roctools     aomp-dev                 aomp                      aomp f4c110ac8ad4 2021-11-04 Dhruva Chakrabarti Dhruva Chakrabarti
  roctools   rocm-4.5.x          rocprofiler               rocprofiler e140f47f3609 2021-10-08 Gerrit Code Review      Zhongyu Zhang
  roctools   rocm-4.5.x            roctracer                 roctracer d8ecefda4efd 2021-10-09      Ammar Elwazir      Ammar ELWazir
  roctools   rocm-4.5.x            ROCdbgapi                 ROCdbgapi 1040f1521831 2021-09-26 Laurent Morichetti Laurent Morichetti
  roctools   rocm-4.5.x               ROCgdb                    ROCgdb a1f2a479f060 2021-09-24 Laurent Morichetti       Simon Marchi
  roctools   rocm-4.5.x               hipamd                    hipamd bedc5f614221 2021-10-04  Pruthvi Madugundu            Sourabh
  roctools   rocm-4.5.x                  hip                       hip 3413a164f458 2021-10-11      Maneesh Gupta      Maneesh Gupta
  roctools   rocm-4.5.x               ROCclr                    ROCclr aba55f5c2775 2021-10-07      Zhongyu Zhang   German Andryeyev
       roc   rocm-4.5.x  ROCm-OpenCL-Runtime       ROCm-OpenCL-Runtime bf77cab71234 2021-09-27        Freddy Paul        Freddy Paul
       roc    roc-4.5.x             rocminfo                  rocminfo 1452f8fa24b2 2021-07-19      Icarus Sparry      Icarus Sparry
       roc rocm-rel-4.5           rocm-cmake                rocm-cmake 8d82398d269d 2021-09-14            Jenkins            Jenkins
       roc   rocm-4.5.x         rocr-runtime              ROCR-Runtime f32dfa887d02 2021-10-27         Sean Keely         Sean Keely
       roc    roc-4.5.x roct-thunk-interface      ROCT-Thunk-Interface 5b152ed0f043 2021-09-30         Sean Keely         Sean Keely

@ye-luo Thanks for checking. Is there a way we can get a reproducer?

@dhruvachak Search above "Reproducer uses AOMP clang++" ;)
You will need a LAPACK library but any LAPACK will work and it is not called by the check_spo_batched executable.
Thank you for trying it out on your side.

@ye-luo Thanks, I did not see the reproducer earlier.
After installing LAPACK, I was able to build/run miniqmc successfully. For me, rocprof --stats and --hsa-trace both work as well on both check_spo and check_spo_batched. Don't know why it is not working for you. I have an older ROCm but that should not matter.
Can you please verify whether "rocprof --hsa-trace" works for you on a smoke test? Try
$ cd $AOMP_REPOS/aomp/test/smoke/vmulsum
$ make run
$ rocprof --hsa-trace ./vmulsum
If that does not work, I suggest removing $AOMP_REPOS/build, the install directory pointed to by $AOMP, and then rebuild all of AOMP by using build_aomp.sh and try again.
Also, please ensure you are picking up the compiler and rocprof from AOMP14 and not from ROCm.
Thanks.

Unfortunately. I had no progress. I tried removing the whole /opt/rocm (not the dkms), remove build, remove installation. I still got the above error. My OS is ubuntu 20.04. Since you succeeded to run, could you post the --stats output, so we can verify that GPU offload is happening as intended.

I am attaching the --stats output of check_spo_batched.
spo_batched.csv

@ye-luo No need to remove the ROCm installation. You should be able to use the AOMP14 build/install.
My OS is Ubuntu 20.04 as well. Can you please post how you are building AOMP14?

I am attaching the --stats output of check_spo_batched. spo_batched.csv

This all look good.

I just follow. https://github.com/ROCm-Developer-Tools/aomp/blob/aomp-dev/docs/SOURCEINSTALL.md#clone-and-build-aomp no modification. My run will fail at rocgdb due to missing dependencies. Then I just run
./aomp/bin/build_aomp.sh continue roctracer

roctracer is the package after rocgdb

[AMD Official Use Only]
Is your gdb build failing on GMP ?
If so,  I noticed a new dependency recently came in on gdb build
sudo apt-get install libgmp-dev
From: Ye Luo @.>
Sent: Friday, November 5, 2021 7:48 PM
To: RadeonOpenCompute/ROCm @.>
Cc: Lieberman, Ron @.>; Comment @.>
Subject: Re: [RadeonOpenCompute/ROCm] rocprof makes application runs failed bug series 2 (#1328)
[CAUTION: External Email]
I just follow. https://github.com/ROCm-Developer-Tools/aomp/blob/aomp-dev/docs/SOURCEINSTALL.md#clone-and-build-aomphttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FROCm-Developer-Tools%2Faomp%2Fblob%2Faomp-dev%2Fdocs%2FSOURCEINSTALL.md%23clone-and-build-aomp&data=04|01|ron.lieberman%40amd.com|924d70f8891d460d363008d9a0b6be04|3dd8961fe4884e608e11a82d994e183d|0|0|637717529017396487|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=HWDkwUAw3lIhPmULo%2Bb5kPmNx2Y0IEpg9DnFxqU%2FdIs%3D&reserved=0 no modification. My run will fail at rocgdb due to missing dependencies. Then I just run
./aomp/bin/build_aomp.sh continue roctracer
roctracer is the package after rocgdb

You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FRadeonOpenCompute%2FROCm%2Fissues%2F1328%23issuecomment-962282515&data=04|01|ron.lieberman%40amd.com|924d70f8891d460d363008d9a0b6be04|3dd8961fe4884e608e11a82d994e183d|0|0|637717529017406483|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=v%2FYln17L9NTB8XqifgcSt2AYObuBjcoSS26fT0hhVA0%3D&reserved=0, or unsubscribehttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAD3EYZYPTW2BNPT2R3UAIQDUKR3NDANCNFSM4UWE7JOQ&data=04|01|ron.lieberman%40amd.com|924d70f8891d460d363008d9a0b6be04|3dd8961fe4884e608e11a82d994e183d|0|0|637717529017406483|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=3nuxfkGgoEIBbrqnhar25L2P1qG2Cmm0khm%2BANjpl%2Fs%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|ron.lieberman%40amd.com|924d70f8891d460d363008d9a0b6be04|3dd8961fe4884e608e11a82d994e183d|0|0|637717529017416478|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=0dWrfmEggJV%2FXo2kYArJ2XOkN7U7qb4a0Vvbpi%2BGqOM%3D&reserved=0 or Androidhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|ron.lieberman%40amd.com|924d70f8891d460d363008d9a0b6be04|3dd8961fe4884e608e11a82d994e183d|0|0|637717529017416478|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=ghFS05Ikg8SPUDehSuFXsRmZLD3ynmG0Fmr8zmfmswU%3D&reserved=0.

Yes, that sounds right, same as what I did. After updating your llvm-project repo yesterday, did you remove the build directory from $AOMP_REPOS and the install directory $AOMP and re-build using build_aomp.sh?
This cleanup step is usually not required unless something unexpected is happening.

@ronlieb I have libgmp-dev installed. So it is something else causing rocgdb build issue unfortunately.
@dhruvachak I tried removing the whole build folder, "~/rocm" installation folder. I even tried deleting the git/aomp14.0 source repo folder to start fresh. They still didn't work. So to prevent being affected by /opt/rocm, I also make sure it is removed. Still doesn't help. It will be nice if you try a node other than your workstation. Maybe try the nightly build from your test farm?

@ye-luo Ok, will try and let you know.

@ye-luo I tried a different machine with Ubuntu 20.04 and ROCm 4.5 installed. I freshly cloned/built AOMP14.0 and cloned/built miniqmc. I can run "rocprof --stats/--hsa-trace" on both check_spo and check_spo_batched without any problems. The CSV and JSON files look good.
Is it possible for you to try a different machine?

@ye-luo Does rocprof work for you on a smoke test like I suggested earlier?

@ye-luo Does rocprof work for you on a smoke test like I suggested earlier?

I did try since vmulsum is even simpler to reproduce. Same failure unfortunately.

@ye-luo I tried a different machine with Ubuntu 20.04 and ROCm 4.5 installed. I freshly cloned/built AOMP14.0 and cloned/built miniqmc. I can run "rocprof --stats/--hsa-trace" on both check_spo and check_spo_batched without any problems. The CSV and JSON files look good.
Is it possible for you to try a different machine?

Thank you so much. I will try on another machine as soon as I can.

I still got the same failure on another machine as above.

@ye-luo Can you please share the stack traces again? Your previous ones had rocm4.5 in them.

$ rocprof gdb ./vmulsum

(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ffff7b5f859 in __GI_abort () at abort.c:79
#2  0x00007fffe4559a27 in ?? () from /home/yeluo/rocm/aomp_14.0-0/rocprofiler/lib/librocprofiler64.so
#3  0x00007fffe452da97 in ?? () from /home/yeluo/rocm/aomp_14.0-0/rocprofiler/lib/librocprofiler64.so
#4  0x00007fffe45454a8 in ?? () from /home/yeluo/rocm/aomp_14.0-0/rocprofiler/lib/librocprofiler64.so
#5  0x00007fffe4556bf1 in ?? () from /home/yeluo/rocm/aomp_14.0-0/rocprofiler/lib/librocprofiler64.so
#6  0x00007fffe51e6d3d in RTLDeviceInfoTy::RTLDeviceInfoTy() () from /home/yeluo/rocm/aomp/lib/libomptarget.rtl.amdgpu.so
#7  0x00007fffe51eca16 in _GLOBAL__sub_I_rtl.cpp () from /home/yeluo/rocm/aomp/lib/libomptarget.rtl.amdgpu.so
#8  0x00007ffff7fe0c4a in call_init (l=<optimized out>, argc=argc@entry=1, argv=argv@entry=0x7fffffffc588,
    env=env@entry=0x7fffffffc598) at dl-init.c:72
#9  0x00007ffff7fe0d51 in call_init (env=0x7fffffffc598, argv=0x7fffffffc588, argc=1, l=<optimized out>) at dl-init.c:30
#10 _dl_init (main_map=0x280b80, argc=1, argv=0x7fffffffc588, env=0x7fffffffc598) at dl-init.c:119
#11 0x00007ffff7c9d915 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>)
    at dl-error-skeleton.c:182
#12 0x00007ffff7fe520f in dl_open_worker (a=a@entry=0x7fffffffc000) at dl-open.c:758
#13 0x00007ffff7c9d8b8 in __GI__dl_catch_exception (exception=<optimized out>, operate=<optimized out>, args=<optimized out>)
    at dl-error-skeleton.c:208
#14 0x00007ffff7fe474a in _dl_open (file=0x24dd20 "/home/yeluo/rocm/aomp/lib/libomptarget.rtl.amdgpu.so", mode=-2147483646,
    caller_dlopen=<optimized out>, nsid=-2, argc=1, argv=0x7fffffffc588, env=0x7fffffffc598) at dl-open.c:837
#15 0x00007ffff7b2834c in dlopen_doit (a=a@entry=0x7fffffffc220) at dlopen.c:66
#16 0x00007ffff7c9d8b8 in __GI__dl_catch_exception (exception=exception@entry=0x7fffffffc1c0, operate=<optimized out>,
    args=<optimized out>) at dl-error-skeleton.c:208
#17 0x00007ffff7c9d983 in __GI__dl_catch_error (objname=0x24dd00, errstring=0x24dd08, mallocedp=0x24dcf8, operate=<optimized out>,
    args=<optimized out>) at dl-error-skeleton.c:227
#18 0x00007ffff7b28b59 in _dlerror_run (operate=operate@entry=0x7ffff7b282f0 <dlopen_doit>, args=args@entry=0x7fffffffc220)
    at dlerror.c:170
#19 0x00007ffff7b283da in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#20 0x00007ffff7ddaef8 in RTLsTy::LoadRTLs() () from /home/yeluo/rocm/aomp/lib/libomptarget.so
#21 0x00007ffff7d3e4df in __pthread_once_slow (once_control=0x24db8c, init_routine=0x7fffee93cc20 <__once_proxy>)
    at pthread_once.c:116
#22 0x00007ffff7dd556d in __tgt_register_lib () from /home/yeluo/rocm/aomp/lib/libomptarget.so
#23 0x000000000020b38d in __libc_csu_init ()
#24 0x00007ffff7b61040 in __libc_start_main (main=0x20aac0 <main>, argc=1, argv=0x7fffffffc588, init=0x20b340 <__libc_csu_init>,
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffc578) at ../csu/libc-start.c:264
#25 0x000000000020a9fe in _start ()

@ye-luo Update: Though I am still not able to reproduce the failure, some of my colleagues are. While we are still investigating the root cause, we found that setting LD_LIBRARY_PATH to the ROCm4.5 lib works.
Can you check with this workaround?
% LD_LIBRARY_PATH=/opt/rocm-4.5.0/lib rocprof --stats ./vmulsum
Please make sure the application is built with AOMP14. The rocprof script can be either from the ROCm installation or from AOMP14.
Thanks.

I finally got it working. The last missing piece is libhsa-amd-aqlprofile64.so which is from hsa-amd-aqlprofile package I didn't install.
With AOMP14 and hsa-amd-aqlprofile, profiling works for me now!!!
Here is my thoughts.

AOMP probably needs to include hsa-amd-aqlprofile to make it self-contained.
librocprofiler64.so is missing error handling when libhsa-amd-aqlprofile64.so is not found
ROCm release needs to add hsa-amd-aqlprofile as a dependency of rocprof

Indeed found another user bug report https://github.com/ROCm-Developer-Tools/rocprofiler/issues/49
$ LD_DEBUG=libs rocprof --hsa-trace vmulsum 2&>1 > log.txt

directly indicates missing librocprofiler64.so

@dhruvachak Is your fix to the OpenMP offload plugin also needed in LLVM upstream? If yes, could you submit a patch?

I finally got it working. The last missing piece is libhsa-amd-aqlprofile64.so which is from hsa-amd-aqlprofile package I didn't install. With AOMP14 and hsa-amd-aqlprofile, profiling works for me now!!!
Here is my thoughts.

AOMP probably needs to include hsa-amd-aqlprofile to make it self-contained.
librocprofiler64.so is missing error handling when libhsa-amd-aqlprofile64.so is not found
ROCm release needs to add hsa-amd-aqlprofile as a dependency of rocprof

Thanks for the update.

@dhruvachak Is your fix to the OpenMP offload plugin also needed in LLVM upstream? If yes, could you submit a patch?

@ye-luo Are you referring to
[libomptarget] [amdgpu] After a kernel dispatch packet is published, its contents must not be accessed.
The above fix has been pushed to trunk already.

@dhruvachak I was thinking of https://github.com/RadeonOpenCompute/llvm-project/commit/c974d826ca4596739c47b8d2a1520c35affc5ead but it seems is not the part of upstream. So never mind.

Hi @ye-luo and all,
Looks like I have seen some positive updates in the latest/recent comments. Can we close this issue now?
Please share your thoughts. Thank you.

I make the following request earlier

1. AOMP probably needs to include hsa-amd-aqlprofile to make it self-contained.

I just realize that hsa-amd-aqlprofile seems closed-source. So it may not be easily incorporated in AOMP. So I will leave AOMP team to sort out a reasonable solution.

2. librocprofiler64.so is missing error handling when libhsa-amd-aqlprofile64.so is not found

This bug needs a fix in high priority. Users constantly hit this issue as reported in several repos (rocporf/AOMP/ROCm). So needs actions from rocprof developers.

3. ROCm release needs to add hsa-amd-aqlprofile as a dependency of rocprof

This also needs to be addressed by the packaging team. rocprofiler-dev and rocprofiler-dev4.5.0 need the additional dependency to hsa-amd-aqlprofile and hsa-amd-aqlprofile4.5.0
@ROCmSupport could you confirm with rocprof team and the packaging team that they are aware of point 2 and 3 and they will be taken care of in the upcoming releases? I guess 3 should be no challenge for ROCm 5.0 but rocprof change maybe depends on the 5.0 release cycle but preferably ASAP.
About closing this issue, I would prefer leaving this issue open till point 2 and 3 being fixed by one ROCm release. Otherwise, it gives false feeling that the issue has been addressed as a "closed" status indicates.

Thanks @ye-luo
I informed the same to Profiler team and I will share some update once I receive.
Thank you.

Fixed by 4.5.2 release.

Thanks @ye-luo for the closure.
Feel free to file a new issues, if any, for quick resolutions. Thank you.


Implement autodetection for targets

Detecting the nRF51822 works.

All changes implemented. I'll merge this.
I'm glad if someone can also test cargo flash (maybe even on an STM32F042 (I don't have one atm)) and the cli revamp before we do a 0.2.0.


Feature/refactor use cases working on vendorconsents

This PR:

Sets the VendorConsents object in the middle of the domain
Uses the ConsentString object to restore a VendorConsents from the euconsent cookie

Codecov Report

Merging #13 into feature/develop-v1.0.0 will increase coverage by 0.04%.
The diff coverage is 100%.

@@                    Coverage Diff                     @@
##           feature/develop-v1.0.0      #13      +/-   ##
==========================================================
+ Coverage                    95.2%   95.24%   +0.04%
==========================================================
  Files                          15       16       +1
  Lines                         542      589      +47
  Branches                       37       46       +9
==========================================================
+ Hits                          516      561      +45
- Misses                         26       28       +2

Impacted Files
Coverage Δ

src/cmp/domain/filterConsentMustExist.js
100% <100%> (ø)

src/cmp/application/GetConsentDataUseCase.js
100% <100%> (ø)
:arrow_up:

...epository/ConsentStringVendorConsentsRepository.js
96.61% <100%> (ø)

src/cmp/application/GetVendorListUseCase.js
100% <100%> (ø)
:arrow_up:

...frastructure/repository/CookieConsentRepository.js
100% <100%> (ø)
:arrow_up:

...rastructure/repository/HttpVendorListRepository.js
100% <100%> (ø)

src/cmp/application/GetConsentStatusUseCase.js
100% <100%> (ø)
:arrow_up:

src/cmp/application/GetVendorConsentsUseCase.js
100% <100%> (ø)
:arrow_up:

...rc/cmp/infrastructure/factory/IABConsentFactory.js
100% <100%> (ø)
:arrow_up:

...cture/controller/IABConsentManagementProviderV1.js
80.35% <100%> (+1.11%)
:arrow_up:

... and 8 more

Continue to review full report at Codecov.

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


Any chance of supporting conan package manager?

Issue
Artifactory supports the Conan package manager for building and analyzing c/c++ projects.  Conan is owned by Artifactory.
https://conan.io/
The Frogbot documentation says it only supports the following:

Go
Gradle
Maven
.NET
npm
NuGet
Pip
Pipenv
Poetry
Yarn 2

Would it be possible to add Conan 2.0 support to Frogbot?
What I would like to see
I would like to use Frogbot to support Conan package manager for C/C++ projects.  Frogbot would have to parse the conanfile.py file in each repository and do XRAY analysis on the package requirements found in that file.
Current solution
Currently we build our job in Jenkins and then upload the build to Artifactory, using the JFrog CLI.  The uploaded build is then scanned by XRAY analysis.  Frogbot sounds like an excellent tool to push that analysis more left and do XRAY scanning at commit time, instead of waiting for a build to be uploaded.

Thanks for sharing this requirement @jjardina.
We plan to have Frogbot support Conan in the future, but we're not yet able to share a timeline for that.

Any update on this please? We'd love to see Frogbot support conan as in the meantime we are going to need to craft something in-house to grab the scan results from Xray and decorate the PR with them.


StatementFactory: Detect cached faulted Task and attempt to re-prepare + cache key fixes

Fixes: CSHARP-660 and CSHARP-667.
Check for cached faulted Task and attempt to re-prepare on the StatementFactory.
Additionally, use a composed cache key,

cc @landim

Thanks for the review @landim


Remove deprecated ScmDataFrame

ScmDataFrame will be deprecated in v0.5.0 and scheduled for removal in v0.6.0

@lewisjared releasing 0.6.1 was an error, bump this to 0.7?


[BUG] webkit works but chromium not

System info

Playwright Version: 1.33.0
Operating System: Windows 11
Browser: Chromium, WebKit
Other info:

Source code

[x] I provided exact source code that allows reproducing the issue locally.

Test file (self-contained)
package me.ericdeng.price_watcher;

import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;

public class PlayWrightTest {
    public static void main(String[] args) {
        var p = Playwright.create();
        var browser = p.chromium().launch();
        Page page = browser.newPage();
        page.navigate("https://jp.mercari.com/search?keyword=%E5%8E%9F%E7%A5%9E%E3%80%80%E9%AD%88");
        page.waitForSelector("#item-grid > ul");
        browser.close();
        p.close();
    }
}

Above one timeout after 30s.
Just replace p.chromium().launch() to p.webkit().launch() solves the problem
package me.ericdeng.price_watcher;

import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;

public class PlayWrightTest {
    public static void main(String[] args) {
        var p = Playwright.create();
        var browser = p.webkit().launch();
        Page page = browser.newPage();
        page.navigate("https://jp.mercari.com/search?keyword=%E5%8E%9F%E7%A5%9E%E3%80%80%E9%AD%88");
        page.waitForSelector("#item-grid > ul");
        browser.close();
        p.close();
    }
}

Steps

[Run the test]

Expected
Both webkit and chromium should work.
Actual
chromium timeout for unknown reason.
Additional Info: I can open the page in my Microsoft Edge

update: now webkit can not work either. I suspect something to do with cache. But I dont know how to clear them.

This site has most likely anti bot protection in place, this is unfortunately out of scope for Playwright, since Playwright focuses on end-to-end testing. Closing by that.

Firstly, I want to thank you for your reply.
But I must say that without testing my code to jump to a conclusion is not a good thing.
After a long time test around very many things, I found the problem is quite simple:
In playwright java edition, when use chromium, it does not auto download the deps it needs.
After I run command npx playwright install --with-deps chromium, everything works ok.
Please check if you are doing auto install correctly

One more thing:
When I run mvn exec:java -e -D exec.mainClass=com.microsoft.playwright.CLI -D exec.args="install-deps" it asks me to have nodejs installed.
It is very inconvenient in Docker image build

But I must say that without testing my code to jump to a conclusion is not a good thing.

You are right, I apologize and will be more careful the next time. (keep the issue open, ask for follow-ups etc.)
Thanks for your research and debugging notes! Helpful for future users.
For your other issue, this looks like a different bug. There shouldn't be Node.js required to use Playwright for Java.


something wrong in kubelet-integration.md

kubelet does not have the init command.

/lgtm
/approve


change prints to raise error

Fix it so if the validator fails, rather than print the detail in console, raise an error instead. Outputs the same message.

@Mahir-Sparkess you don't want it to raise because you want it to run through all the files and give the output. Otherwise, if there were multiple files which failed, it would take multiple runs to actually get the full test.


DAG is missing / "no service dependencies found"

Requirement - what kind of business use case are you trying to solve?
I am trying to display the DAG i.e. the service dependencies, but as of now they are missing in our Jaeger installation.
Problem - what in Jaeger blocks you from solving the requirement?
In the "all-in-one" deployment the DAG was working, but now with a docker-compose file based on
https://github.com/jaegertracing/jaeger/blob/master/docker-compose/jaeger-docker-compose.yml
and using a local cassandra it is no longer working.
Proposal - what do you suggest to solve the problem or improve the existing situation?
Any open questions to address
As I am new to Jaeger (and Cassandra) I am struggling a bit with the following questions which would probably help me to fix the problem:

What is the difference between the modules jaeger-query and jaeger-ui?
How and where do I do the configuration as described on
https://www.jaegertracing.io/docs/1.9/frontend-ui/
I tried to run https://github.com/jaegertracing/spark-dependencies but failed with
" Failed to open native connection to Cassandra at {<IP_ADDRESS>}:9042"

Any help or information is welcome, thanks

there's no such thing as jaeger-ui (aside from a code repository). jaeger-query is the microservice that hosts UI assets.

it is explained in the doc you linked:

These options can be configured by a JSON configuration file. The --query.ui-config command line parameter of the query service must then be set to the path to the JSON file when the query service is started.

That's the reason you don't see the DAG, Spark job needs to generate the data first.

Hi Yurishkuro
Thanks for your answers.

I thought so, but thanks for the confirmation

I read the doc but I don't know how to do this in a docker container. I tried to login into the running jaeger-query but failed because there seems to be no shell.
I probably could pass the config via modification of Docker file or docker-compose but I assume that this is not the cause of my problem anyway, therefore I did not spend too much effort here.

I tried to start the jaegertracing/spark-dependencies docker container but as written above, it fails to connect to Cassandra and currently I don't have a clue what the problem is... I tried the different envs, e.g. the following command, but it failed:
docker run --env STORAGE=cassandra --env CASSANDRA_CONTACT_POINTS=localhost:9042 jaegertracing/spark-dependencies

2 - fair enough, we can point to https://www.jaegertracing.io/docs/1.9/deployment/#configuration-options from that UI config page (would you like to create a PP?)
3 - please open a ticket in jaegertracing/spark-dependencies repo or ask on Gitter chat

Thanks for the information, I created a ticket in jaegertracing/spark-dependencies repo
https://github.com/jaegertracing/spark-dependencies/issues/57
closing this issue


crunch-friendlier attribution. :)

I'm going to pull this into Respond.js as an external dependency, instead of rewriting the thing internally. This change made things a lil smaller.

SGTM!


Unable to load EC2 instance profile creds via headless Error: Failed to resolve AWS credentials with --yes flag.

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm install -g @aws-amplify/cli --unsafe-perm=true
If applicable, what version of Node.js are you using?
v12.18.4
Amplify CLI Version
4.51.2
What operating system are you using?
Alpine
Amplify Categories
Not applicable
Amplify Commands
pull
Describe the bug
I am trying to setup continuous deployments to my amplify environment using the headless CLI for Amplify.
I am running this in an EC2 attached to an instance profile, which I hope to get the IAM credentials from for Amplify's use.
Here's the issue I face when I attempt to do an amplify pull
$ export AWS_SDK_LOAD_CONFIG=1
$ AWS_SDK_LOAD_CONFIG=1
$ export AWS_PROFILE=agent
$ AWS_PROFILE=agent
$ aws sts get-caller-identity
{
    "UserId": "AROA2XWK57AAQAEUV2SVR:i-076b538a2f7271784",
    "Account": "redacted",
    "Arn": "arn:aws:sts::redacted:assumed-role/iam-profile-bgp-teamcity-agent/i-076b538a2f7271784"
}

$ AWSCLOUDFORMATIONCONFIG='{  "configLevel":"general"}'
$ AMPLIFY='{  "appId":"redacted",  "envName":"master"}'
$ PROVIDERS='{  "awscloudformation":{  "configLevel":"general"}}'

$ amplify pull --amplify '{  "appId":"d2txt42zoj2f4o",  "envName":"master"}' --providers '{  "awscloudformation":{  "configLevel":"general"}}' --yes

# Logs Below
Initializing new Amplify CLI version...
Done initializing new version.
Scanning for plugins...
Plugin scan successful
Failed to resolve AWS credentials with --yes flag.
Access keys for continuous integration can be configured with headless paramaters: https://docs.amplify.aws/cli/usage/headless

I get an error "Failed to resolve AWS credentials with --yes flag."
As you can see, the EC2 credentials is retrieved properly via the AWS CLI (aws sts get-caller-identity), however, via Amplify is not.
According to Amplify's docs here: https://docs.amplify.aws/cli/usage/headless#amplify-pull-parameters
Using general config should default to the Javascript's AWS SDK mode of pulling the credentials, which means it should attempt to retrieve from EC2's instance profile. It didn't work. So I tried to configure the below profile,
[profile agent]
credential_source = Ec2InstanceMetadata
region = ap-southeast-1

to ~/.aws/config, and set AWS_PROFILE=agent explicilty. It also did not work.
What went wrong?
Expected behavior
With the provider config below:
AWSCLOUDFORMATIONCONFIG='{  "configLevel":"general"}

I should expect the Amplify SDK to retrieve the EC2 IAM credentials for me automatically, and I should not see the error  "Failed to resolve AWS credentials with --yes flag."
Reproduction steps

Attach an EC2 with an instance profile.
 Use GraphQL Tools instead to stay up-to-date! Check out https://www.graphql-tools.com/docs/migration-from-import for migration and https://the-guild.dev/blog/graphql-tools-v6 for new changes.
[22:18:39]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS>GraphQL Toolkit is deprecated and merged into GraphQL Tools, so it will no longer get updates. Use GraphQL Tools instead to stay up-to-date! Check out https://www.graphql-tools.com/docs/migration-from-toolkit for migration and https://the-guild.dev/blog/graphql-tools-v6 for new changes.
[22:18:45]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
[22:18:45]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
[22:18:46]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS><EMAIL_ADDRESS>is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.
[22:18:48]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS>GraphQL Toolkit is deprecated and merged into GraphQL Tools, so it will no longer get updates. Use GraphQL Tools instead to stay up-to-date! Check out https://www.graphql-tools.com/docs/migration-from-toolkit for migration and https://the-guild.dev/blog/graphql-tools-v6 for new changes.
[22:18:59]	[Step 2/2] npm WARN deprecated<EMAIL_ADDRESS>Use promise-toolbox/fromEvent instead
[22:19:27]	[Step 2/2] /usr/bin/amplify -> /usr/lib/node_modules/@aws-amplify/cli/bin/amplify
[22:19:27]	[Step 2/2]
[22:19:27]	[Step 2/2] ><EMAIL_ADDRESS>postinstall /usr/lib/node_modules/@aws-amplify/cli/node_modules/@aws-amplify/graphql-types-generator/node_modules/core-js
[22:19:27]	[Step 2/2] > node -e "try{require('./postinstall')}catch(e){}"
[22:19:27]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] ><EMAIL_ADDRESS>postinstall /usr/lib/node_modules/@aws-amplify/cli/node_modules/amplify-graphql-types-generator/node_modules/core-js
[22:19:28]	[Step 2/2] > node -e "try{require('./postinstall')}catch(e){}"
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] ><EMAIL_ADDRESS>postinstall /usr/lib/node_modules/@aws-amplify/cli/node_modules/core-js
[22:19:28]	[Step 2/2] > node -e "try{require('./postinstall')}catch(e){}"
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] ><EMAIL_ADDRESS>postinstall /usr/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk
[22:19:28]	[Step 2/2] > node scripts/check-node-version.js
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] ><EMAIL_ADDRESS>postinstall /usr/lib/node_modules/@aws-amplify/cli
[22:19:28]	[Step 2/2] > node scripts/post-install.js
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] ----------------------------------------
[22:19:28]	[Step 2/2] Successfully installed the Amplify CLI
[22:19:28]	[Step 2/2] ----------------------------------------
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] JavaScript Getting Started - https://docs.amplify.aws/start
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] Android Getting Started - https://docs.amplify.aws/start/q/integration/android
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] iOS Getting Started - https://docs.amplify.aws/start/q/integration/ios
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] Flutter Getting Started - https://docs.amplify.aws/start/q/integration/flutter
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] Amplify CLI collects anonymized usage data, which is used to help understand
[22:19:28]	[Step 2/2] how to improve the product. If you don't wish to send anonymized Amplify CLI
[22:19:28]	[Step 2/2] usage data to AWS, run amplify configure --usage-data-off  to opt-out.
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] Learn more - https://docs.amplify.aws/cli/reference/usage-data
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/@aws-amplify/cli/node_modules/chokidar/node_modules/fsevents):
[22:19:28]	[Step 2/2] npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
[22:19:28]	[Step 2/2]
[22:19:28]	[Step 2/2] +<EMAIL_ADDRESS>[22:19:28]	[Step 2/2] added 1375 packages from 783 contributors in 74.371s
[22:19:29]	[Step 2/2] + ./deploy.sh
[22:19:29]	[Step 2/2] + AWSCLOUDFORMATIONCONFIG='{  "configLevel":"general"}'
[22:19:29]	[Step 2/2] + AMPLIFY='{  "appId":"redacted",  "envName":"master"}'
[22:19:29]	[Step 2/2] + PROVIDERS='{  "awscloudformation":{  "configLevel":"general"}}'
[22:19:29]	[Step 2/2] + amplify pull --amplify '{  "appId":"redacted",  "envName":"master"}' --providers '{  "awscloudformation":{  "configLevel":"general"}}' --yes
[22:19:32]	[Step 2/2] Initializing new Amplify CLI version...
[22:19:33]	[Step 2/2] Done initializing new version.
[22:19:33]	[Step 2/2] Scanning for plugins...
[22:19:33]	[Step 2/2] Plugin scan successful
[22:19:45]	[Step 2/2] Failed to resolve AWS credentials with --yes flag.
[22:19:45]	[Step 2/2] Access keys for continuous integration can be configured with headless paramaters: https://docs.amplify.aws/cli/usage/headless

Additional information
No response

We do currently have an enhancement request open for this. Closing this to bring more visibility to the enhancement request.
https://github.com/aws-amplify/amplify-cli/issues/2106


Add utility method to parse metric labels/base name from a mangled bigquery  metric name.

This method will be used to extract the base metric name and the metric labels when extracting perworker metric updates from the user worker.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @johnjcasey

LGTM, the FHIR tests are flaky


Update libc packages in docker images to address CVE-2023-4911

Please provide a brief summary of the bug
The current latest eclipse temurin image, eclipse-temurin:<IP_ADDRESS>_1-jdk, includes Ubuntu packages libc-bin and libc at version 2.35-0ubuntu3.3. This version is vulnerable to CVE-2023-4911, a CVSS 3.x 7.8 HIGH scored vulnerability.
Can you please update the image to include at least version 2.35-0ubuntu3.4 to eliminate this vulnerability?
Thank you!
Please provide steps to reproduce where possible
Use trivy to scan the image by running: docker run -it aquasec/trivy image eclipse-temurin:<IP_ADDRESS>_1-jdk
Expected Results
The image should not show as being vulnerable to CVE-2023-4911
Actual Results
The image is vulnerable to CVE-2023-4911
What Java Version are you using?
n/a
What is your operating system and platform?
No response
How did you install Java?
No response
Did it work before?
No response
Did you test with the latest update version?
No response
Did you test with other Java versions?
No response
Relevant log output
No response

These images get updated at DockerHub by Docker, please submit an issue there - thanks!


Callback url doesn't include query params

Environment
------------------------------
- Operating System: Linux
- Node Version:     v20.9.0
- Nuxt Version:     3.8.1
- CLI Version:      3.9.1
- Nitro Version:    2.7.0
- Package Manager<EMAIL_ADDRESS>- Builder:          -
- User Config:      -
- Runtime Modules:  -
- Build Modules:    -
------------------------------

Reproduction
No response
Describe the bug
The ?callbackUrl=<url> to which the user should be redirected after login doesn't include the original url query parameters.
Additional context
No response
Logs
No response

@AbdallahAlhaddad
Does this bug still exist?
With the latest version, I don't encounter this bug, at least in my development environment.

it still doesn't work, what happens is that the original url query params gets replaced by module specific param: &error=undefined
Environment
------------------------------
- Operating System: Darwin
- Node Version:     v20.10.0
- Nuxt Version:     3.9.0
- CLI Version:      3.10.0
- Nitro Version:    2.8.1
- Package Manager<EMAIL_ADDRESS>- "@sidebase/nuxt-auth":  0.6.3
- "next-auth": 4.22.5
------------------------------

auth module configuration
// nuxt.config.ts
  auth: {
    isEnabled: true,
    provider: 'authjs',

    session: {
      enableRefreshPeriodically: false,
      enableRefreshOnWindowFocus: true,
    },

    globalAppMiddleware: {
      isEnabled: true,
      allow404WithoutAuth: false,
    },
  },

@AbdallahAlhaddad try modifying this part of your nuxt.config.ts as follows:
  auth: {
    globalAppMiddleware: {
      isEnabled: true,
      allow404WithoutAuth: false,
      addDefaultCallbackUrl: false,
    },
  },

I was able to maintain all query parameters this way - hope this helps you as well!

Hi @AbdallahAlhaddad , @fotyG
The problem always appears to occur when both of the following conditions are met.
auth: {
addDefaultCallbackUrl: true
}

// server/api/auth/[...].ts
// Indicates that you are setting `pages`.
pages: {
    signIn: '/login',
  },

I don't think this problem would occur if addDefaultCallbackUrl: true is used but pages is not set?
In any case, it appears to be a glitch, so I'm going to look into it some more and try to create a PR.

@AbdallahAlhaddad , @fotyG
This problem is not caused by the nuxt-auth code base, but seems to be an issue with the dependency next-auth.
Specifically, the issue is in the AuthHandler function in next-auth/src/core.
case "signin":
        if (pages.signIn) {
          let signinUrl = `${pages.signIn}${
            pages.signIn.includes("?") ? "&" : "?"
          }callbackUrl=${encodeURIComponent(options.callbackUrl)}`
          if (error)
            signinUrl = `${signinUrl}&error=${encodeURIComponent(error)}`
          return { redirect: signinUrl, cookies }
        }

Specifically, the issue is in the AuthHandler function in next-auth/src/core.

Always upsetting when this happens.... However, I am also unsure how this would work on a technical level, as I am unsure if you can include query parameters in a query parameter 😵.
Therefore my main question would be, is it absolutely necessary that it includes the query parameters on the callback or is there some way to circumvent this, as a fix is tricky to implement (maybe even impossible if we cannot change NextAuth)

@zoey-kaiser
Yes, you are right. There are some limitations to adding query parameters in the callbackURL, as it is up to the browser to parse the URL. I think it can be tricky to make it work in all cases and across all browsers.
However, technically, we can work around this by encoding the callback URL using Base 64 URL Encoding.

case "signin":
        if (pages.signIn) {
          let signinUrl = `${pages.signIn}${
            pages.signIn.includes("?") ? "&" : "?"
          }callbackUrl=${encodeURIComponent(options.callbackUrl)}`
          if (error)
            signinUrl = `${signinUrl}&error=${encodeURIComponent(error)}`
          return { redirect: signinUrl, cookies }
        }

@nojiritakeshi
This code snippet seems fine to me, I think the issue is with passing wrong/incomplete callback URL in options.callbackUrl

The issue is with the nuxt middleware callback url determination, it uses to.path instead of to.fullPath

Resolved in https://github.com/sidebase/nuxt-auth/releases/tag/0.6.6

@zoey-kaiser
Thanks for quick update.
In my case, I only add in nuxt.config
    globalAppMiddleware: {
      addDefaultCallbackUrl: false,
    },

And now I can see query params in callback url.


feat: Add a scale gizmo to the entity editor

Fixes #545
Fixes #351

This could probably use some better looking meshes, but so do the other gizmos. This will do for now.


Semi-colon at beginning of toastr.js

There's this lingering semi-colon on line 14 of the toastr.js file, right before the function begins.
...
/* global define */
; (function (define) {
    define(['jquery'], function ($) {
...

What's going on here? It has caused me some trouble when I try and bundle my application together into a single bundle. Is there a reason for this semi-colon?

I also noted this. Any reason behind it?

@johnpapa - any idea?

I believe this is why:
http://stackoverflow.com/questions/1873983/what-does-the-leading-semicolon-in-javascript-libraries-do

@AStoker - what issue is this causing you specifically?

Specifically, I'll have to recreate the environment that was doing that to tell you (could take a bit). But what was happening generally was that I was trying to bundle our application into a single file to reduce the amount of HTTP requests (ended up going a different route in the end, looking forward to HTTP 2). So this was bundling all our source code and external modules into one file, uglifying and then minifying as it goes along (although uglifying and minifying had no hand in this problem as I tried it without).
Well, when all was said and done, the bundled code ended up having problems with that leading semicolon. Some kind of exception error was thrown when the browser tried to load the page (and subsequently the javascript file), and it was all pointing to that leading semicolon, saying it wasn't expected.
If I need to get a full demo up and running, I can, but you'll have to give me some time to try and get everything configured again in that state

I'd like to see the error. If the bundled JS completes with a semicolon, it'll just do a no-op. If some other script is not closing an open statement, it'll close it for them.

the leading semi colon used to help with minification tools. there was a time when jsmin would run thru and if other libs had bad js, they would concat poorly. so i put the leading ; in front to help.
it is not necessary anymore. if another lib sucks, then , oh well :)
feel free to pull it out Tim

Hey @AStoker - want to make the world's smallest pull request?

@TimFerrell - Mission accomplished. Is there some kind of award for smallest pull request? If not, I'm thinking one should be made... :)

I'll mull something over. 😜
Could you please re-submit the change to the develop branch, though?

Absolutely, my mistake.


IDE 1.2 - Replace rpc server language with dbt server in early 2023

https://www.notion.so/IDE-1-2-Replace-rpc-server-language-with-dbt-server-in-early-2023-7cab15bd66634ba88939233e3b7c8e11

Let's closes this @mirnawong1 and reopen if/when we need to.


update to change in jaeger api change

Currently we are querying the internal json api of jaeger using GET /api/v3/traces/${traceId}.
The problem is that while this works for the jaeger-all-in-one component, it does not work for the decomposed architecture where we call jaeger-query to retrieve the data.  And the decomposed architecture (e.g splitting functionality into jaeger-agent, jaeger-collector, and jaeger-query) is required in order to save spans in cassandra persistent storage rather than memory.
Furthermore, the docs indicate the api we should be calling is GET /api/traces/${traceId}.
This api does work but it returns data in a different format:

/api/v3/traces/${traceId} - sample data returned
/api/traces/${traceId} - sample data returned

We need to change api-server to call  /api/traces/${traceId}  so that we can support both types of deployments (in-memory plus persistent storage).  The change to api-server is simple but we will need to change the parsing / display logic in the webapp as well.

actually, the /v3 variant is available in recent docker images - I had been testing with an older image.  So I think we are good for now.  I will leave this ticket open for when we have time to update to using the grpc api which I do think will be better since it is implied to be more stable, but this is not a high priority at the moment


Description of Azure Data Studio on Linux during installation

Azure Data Studio Version: 1.18.1

Steps to Reproduce:

Install Azure Data Studio on Linux Ubuntu 18.04 using Software Installer. Use the .deb file when installling.

Please update the tag line.. Perhaps we can use the first paragraph of the doc?
Azure Data Studio is a cross-platform database tool for data professionals using the Microsoft family of on-premises and cloud data platforms on Windows, MacOS, and Linux. See http://aka.ms/azuredatastudio for documentation.

The new branding should be available for August release and insiders.

I just stumbled on this tonight while installing ADS on my chromebook.  I noticed in the merged fix the old sqlops URL is still in play.  Maybe we swap that out for https://aka.ms/azuredatastudio?


ValueError: role_name: colors must have 3 channels (R, G, B) occurs when using get_blueprint_library().

CARLA version: 0.9.15
Platform/OS: Windows 11
When using the get_blueprint_library method, it returns the following error:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[3], line 1
----> 1 blueprint_library = world.get_blueprint_library()

ValueError: role_name: colors must have 3 channels (R,G,B

I haven't found any other issues that match this problem. Where could this issue be occurring?

I also encountered the same problem and wanted to ask if the problem was solved.

@jiushixiensi I formatted my computer for a clean install, but the same problem persists.

Some issue. Besides, I run manual_control.py and encounter the same error

@jiushixiensi @chuanye-Wang Did you guys solve it? Let me know when you do.

commit: 4da0c7415499981f29874b899edd00c1368df06f
This commit wworks just fine.

@chuanye-Wang
Thank you!! It works correctly after rolling back as follows:
git reset --hard "4da0c74"

However, this is a temporary solution, so I'll keep the issue open for now.

commit: 4da0c74 This commit wworks just fine.

您好！我也是最近刚刚下载了这个版本，遇到了同样的问题。想请教一下您具体是怎么解决的这个报错。

Just reverse to commit as I mentioned above, But it's just a temporary solution

i tried running git reset --hard "4da0c74" but i am still  getting the same issue

@chuanye-Wang @seominseokt
I tried your temporary solution to roll back "git reset --hard "4da0c74", then rebuild PythonAPI and make launch.
But this solved the error "ValueError: role_name: colors must have 3 channels (R,G,B)"
i am getting new error when i try to spawn a camera and attach it to the vehicle:
53 camera_init_trans = carla.Transform(carla.Location(z=CAMERA_POS_Z,x=CAMERA_POS_X))
54 #this creates the camera in the sim
---> 55 camera = world.spawn_actor(camera_bp,camera_init_trans,attach_to=vehicle)
57 def camera_callback(image,data_dict):
58 data_dict['image'] = np.reshape(np.copy(image.raw_data),(image.height,image.width,4))
RuntimeError: rpc::rpc_error during call in function spawn_actor_with_parent
This is the same case if i run any generate_traffic.py:
python generate_traffic.py
WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.15
WARNING: Simulator API version = 0.9.15-221-g4da0c7415-dirty
destroying 0 vehicles
destroying 0 walkers
done.
Traceback (most recent call last):
File "/home/milab/carla/PythonAPI/examples/generate_traffic.py", line 374, in
main()
File "/home/milab/carla/PythonAPI/examples/generate_traffic.py", line 247, in main
for response in client.apply_batch_sync(batch, synchronous_master):
RuntimeError: rpc::rpc_error during call in function apply_batch

BTW, I have another guess:  rpc::rpc_error is a romote call error, it means the mismatch of the version between Carla-dev and PythonAPI, so if you dont run ./Update.sh during the buiding carla process, maybe it wont have this issue then.

I ran ./Update.sh before building the PythonAPI, it said content is up-to-date.
even now if i run ./Update.sh i get content is up-to-date.
but i used to get this warning before rolling back also:
"WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.15
WARNING: Simulator API version = 0.9.15-221-g4da0c7415-dirty"
isn't client and simulator API version same 0.9.15?

It is the same version in general, but it's different in detail.
I mean you donot run./updat

Windows 10 Pro
GeForce RTX 4060
carla 0.9.15
UE4
I face the same issue (ValueError: role_name: colors must have 3 channels (R,G,B)) when i try to run scripts after importing a vehicle which I made via Blender. The strange thing is that only the dynamic weather is working. I tried switching python versions but it didn't work. When I delete the vehicle which I made, from CarlaUE4 editor, the error I'm facing is:
WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.15
WARNING: Simulator API version = 0.9.15-221-g4da0c7415-dirty
INFO: Found the required file in cache! Carla/Maps/Nav/Town10HD_Opt.bin
INFO: Found the required file in cache! Carla/Maps/TM/Town10HD_Opt.bin
destroying 0 vehicles
destroying 0 walkers
done.
Traceback (most recent call last):
File "C:\carla\PythonAPI\examples\generate_traffic.py", line 379, in
main()
File "C:\carla\PythonAPI\examples\generate_traffic.py", line 247, in main
for response in client.apply_batch_sync(batch, synchronous_master):
RuntimeError: rpc::rpc_error during call in function apply_batch
Any ideas?

It is the same version in general, but it's different in detail.
I mean you donot run ./update.sh during the building process. So that your carla and PythonAPI would both being the old version.
Or you can try to use release version to validate your code, and use carla-dev to edit map.
what's your perpose to use carla-dev

Yes, I was planning to do the same thing. For now I just wanted to build a custom car form the Carla-dev.

Yes, I was planning to do the same thing. For now I just wanted to build a custom car form the Carla-dev.

You can

You can edit your custom car in carla-dev, export it as an asset, then import your custom car assets into a realse version of carla (e.x. carla 0.9.15).In the release version, it wont have the RGB issue or rpc issue.
I can tell you, that's the way I check my custom map,and do further development.

**A mini update, i find out that on PythonAPI folder there is no dist folder which should contain the .egg or .whl file. I tried again the make PythonAPI command and nothing changed although on prompt the output was: Carla lib for python has been successfully installed in "C:\carla\PythonAPI\carla\dist". Anyone know why?

**A mini update, i find out that on PythonAPI folder there is no dist folder which should contain the .egg or .whl file. I tried again the make PythonAPI command and nothing changed although on prompt the output was: Carla lib for python has been successfully installed in "C:\carla\PythonAPI\carla\dist". Anyone know why?

try deleting your PythonAPI folder and then run make PythonAPI again, it fixed it for me the 2nd time i did this

I did this many times, not just once and it didn't fix the problem. :(

does someone solve this problem?

SOLUTION!!  Follow these steps.
In a terminal:
git fetch --all --tags
git checkout 0.9.15
In x64 native tools prompt:
make PythonAPI
make launch

SOLUTION!! Follow these steps. In a terminal: git fetch --all --tags git checkout 0.9.15
In x64 native tools prompt: make PythonAPI make launch

I followed the same steps as you mentioned but while running make PythonAPI i am getting this error. Can someone explain why it is showing or know how to fix?Note : I am using Ubuntu 22.04,16 GB RAM, i5 13th H series, RTX 4050..
Util/BuildTools/Linux.mk:163: warning: overriding recipe for target 'downloadplugins'
Util/BuildTools/Linux.mk:142: warning: ignoring old recipe for target 'downloadplugins'
Setup.sh: boost-1.80.0-c10 already installed.
Setup.sh: rpclib-v2.2.1_c5-c10 already installed.
Setup.sh: gtest-1.8.1-c10 already installed.
Setup.sh: recast-c10 already installed.
Setup.sh: Libpng already installed.
Setup.sh: Xerces-c already installed.
Setup.sh: Eigen already installed.
Setup.sh: Sqlite already installed.
Setup.sh: PROJ already installed.
Setup.sh: Patchelf already installed.
Setup.sh: CARLA version 0.9.15-dirty.
Setup.sh: Generating CMake configuration files.
Setup.sh: Success!
BuildLibCarla.sh: Building LibCarla "Client.Release" configuration.
ninja: no work to do.
[0/1] Install the project...
-- Install configuration: "Client"
BuildLibCarla.sh: Success!
BuildOSM2ODR.sh: Building OSM2ODR.
fatal: reference is not a tree: 1835e1e9538d0778971acc8b19b111834aae7261
make: *** [Util/BuildTools/Linux.mk:157: osm2odr] Error 128

I'm using Windows 10 Pro Platform not Ubuntu so I can't help :(

SOLUTION!! Follow these steps. In a terminal: git fetch --all --tags git checkout 0.9.15
In x64 native tools prompt: make PythonAPI make launch

I followed the same steps as you mentioned but while running make PythonAPI i am getting this error. Can someone explain why it is showing or know how to fix?Note : I am using Ubuntu 22.04,16 GB RAM, i5 13th H series, RTX 4050..
Util/BuildTools/Linux.mk:163: warning: overriding recipe for target 'downloadplugins' Util/BuildTools/Linux.mk:142: warning: ignoring old recipe for target 'downloadplugins' Setup.sh: boost-1.80.0-c10 already installed. Setup.sh: rpclib-v2.2.1_c5-c10 already installed. Setup.sh: gtest-1.8.1-c10 already installed. Setup.sh: recast-c10 already installed. Setup.sh: Libpng already installed. Setup.sh: Xerces-c already installed. Setup.sh: Eigen already installed. Setup.sh: Sqlite already installed. Setup.sh: PROJ already installed. Setup.sh: Patchelf already installed. Setup.sh: CARLA version 0.9.15-dirty. Setup.sh: Generating CMake configuration files. Setup.sh: Success! BuildLibCarla.sh: Building LibCarla "Client.Release" configuration. ninja: no work to do. [0/1] Install the project... -- Install configuration: "Client" BuildLibCarla.sh: Success! BuildOSM2ODR.sh: Building OSM2ODR. fatal: reference is not a tree: 1835e1e9538d0778971acc8b19b111834aae7261 make: *** [Util/BuildTools/Linux.mk:157: osm2odr] Error 128

I'm using Windows 10 Pro Platform not Ubuntu so I can't help :(

SOLUTION!! Follow these steps. In a terminal: git fetch --all --tags git checkout 0.9.15
In x64 native tools prompt: make PythonAPI make launch

I followed the same steps as you mentioned but while running make PythonAPI i am getting this error. Can someone explain why it is showing or know how to fix?Note : I am using Ubuntu 22.04,16 GB RAM, i5 13th H series, RTX 4050..
Util/BuildTools/Linux.mk:163: warning: overriding recipe for target 'downloadplugins' Util/BuildTools/Linux.mk:142: warning: ignoring old recipe for target 'downloadplugins' Setup.sh: boost-1.80.0-c10 already installed. Setup.sh: rpclib-v2.2.1_c5-c10 already installed. Setup.sh: gtest-1.8.1-c10 already installed. Setup.sh: recast-c10 already installed. Setup.sh: Libpng already installed. Setup.sh: Xerces-c already installed. Setup.sh: Eigen already installed. Setup.sh: Sqlite already installed. Setup.sh: PROJ already installed. Setup.sh: Patchelf already installed. Setup.sh: CARLA version 0.9.15-dirty. Setup.sh: Generating CMake configuration files. Setup.sh: Success! BuildLibCarla.sh: Building LibCarla "Client.Release" configuration. ninja: no work to do. [0/1] Install the project... -- Install configuration: "Client" BuildLibCarla.sh: Success! BuildOSM2ODR.sh: Building OSM2ODR. fatal: reference is not a tree: 1835e1e9538d0778971acc8b19b111834aae7261 make: *** [Util/BuildTools/Linux.mk:157: osm2odr] Error 128

Ohk Let me try again from beginning hope it fix after that. I just have a doubt whether you directly used these command that you said after the value error or rpc error?

I've solved this.
Maybe you build your carla from source. But your carla pythonAPI is not the one you made from source. If you build your carla from source, you need to use the built carla pythonAPI in carla/PythonAPI/carla/dist/carla-xxx.whl
Do not use pip install carla directly from network. It doesn't match your carla version

As @saltyfishxbr said. There will be an error message indicating that the Python API version is inconsistent (other versions have been installed before). Use the following command to reinstall to solve the problem.
pip3 install PythonAPI/carla/dist/carla-xxx.whl --force-reinstall

As @saltyfishxbr said. There will be an error message indicating that the Python API version is inconsistent (other versions have been installed before). Use the following command to reinstall solved the problem.
make PythonAPI

pip3 install PythonAPI/carla/dist/carla-xxx.whl --force-reinstall

Hi! My carla-dev is built from source and has the same problem. This solution worked well. But recently I'm working on a project that use python 3.8.10, the wheel file in PythonAPI/carla/dist/ only has the cp310, which is the version for python 3.10. I can not install the wheel. Do you know where I can find the cp38 version for carla-dev? Thank you so much!

As @saltyfishxbr said. There will be an error message indicating that the Python API version is inconsistent (other versions have been installed before). Use the following command to reinstall solved the problem.
make PythonAPI

pip3 install PythonAPI/carla/dist/carla-xxx.whl --force-reinstall

Hi! My carla-dev is built from source and has the same problem. This solution worked well. But recently I'm working on a project that use python 3.8.10, the wheel file in PythonAPI/carla/dist/ only has the cp310, which is the version for python 3.10. I can not install the wheel. Do you know where I can find the cp38 version for carla-dev? Thank you so much!

For that, you can download the binary version of CARLA (the overnight build on github). You can find it under the proposed path in the reinstallation command that was provided in the penultimate comment.
Worked for me.

@chuanye-Wang Hey, I generated a map using the digital twin tool. I wanted to export it as an asset. Could you tell me how do I do that?

@chuanye-Wang Hey, I generated a map using the digital twin tool. I wanted to export it as an asset. Could you tell me how do I do that?

@rohanNkhaire Just follow the steps right here: https://github.com/carla-simulator/carla/issues/7939#issuecomment-2418129986

As @saltyfishxbr said. There will be an error message indicating that the Python API version is inconsistent (other versions have been installed before). Use the following command to reinstall solved the problem.
make PythonAPI

pip3 install PythonAPI/carla/dist/carla-xxx.whl --force-reinstall

Hi! My carla-dev is built from source and has the same problem. This solution worked well. But recently I'm working on a project that use python 3.8.10, the wheel file in PythonAPI/carla/dist/ only has the cp310, which is the version for python 3.10. I can not install the wheel. Do you know where I can find the cp38 version for carla-dev? Thank you so much!

For that, you can download the binary version of CARLA (the overnight build on github). You can find the whl under the proposed path in the reinstallation command that was provided in the penultimate comment.
Worked for me.

Thanks a lot for your reply! It worked for me!

@chuanye-Wang Hey, thanks for the reference. I'll try that out.
I tried the steps mentioned by @saltyfishxbr.
# Uninstalled carla package
pip3 uninstall carla

# Make PythonAPI and then install the .whl file
make PythonAPI
pip3 install PythonAPI/carla/dist/carla-xxx.whl --force-reinstall

This solved the role_name error and I was able to run the python examples.

@chuanye-Wang Hey, I tried to make the package of the digital twin map using the reference you mentioned. I am getting signal 11 caught error. Have you faced this issue?

Hey folks,
Commented a solution here: https://github.com/carla-simulator/carla/issues/8035#issuecomment-2320778135


don't join group until pipeline is initialized to prevent premature rebalancing

When a Kafka input is used it cannot begin processing until the rest of the pipeline has been initialized. However, its own initialization can trigger rebalancing within Kafka.  With a large complex pipeline that may take several minutes to initialize, that Kafka input can be blocked for quite a while resulting in a delay of message processing from the assigned partition.  In such cases, it would be useful for the Kafka input to wait to join the group until the pipeline is actually read to process events.

This issue is mitigated indirectly with a separate change that went into Logstash 7.5.2 and 7.6.0, in which the inputs to a pipeline are not started until the worker-loop is fully initialized. See https://github.com/elastic/logstash/pull/11492


update docs for deployments

closes https://github.com/2i2c-org/pilot-hubs/issues/20 closes https://github.com/2i2c-org/pilot-hubs/issues/6
@yuvipanda does this look correct to you?

This LGTM, thanks a lot @choldgraf


fix: handle errors thrown by success callback in getReadSession/getWriteSession

[x] Make sure to open an issue as a bug/issue before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
[x] Ensure the tests and linter pass
[ ] Code coverage does not decrease (if any source code was changed)
[ ] Appropriate docs were updated (if necessary)

Fixes https://github.com/googleapis/nodejs-spanner/issues/1078 🦕
Description
Errors thrown by the callback executed in the "success" branch of the then() method are never caught by its second parameter; and since there are no outside catch block; it results in Unhandled Promise rejections.
I don't know if the correct fix is to move the second parameter provided to then() to a different catch block, or if it should be left as is while providing a different error callback to a different catch block (it depends on whether you want errors from both  this._acquire and its success callback to be handled by the same handler or not)

#1078 issue is closed by PR #1208.
Closing this PR


"What's changing" element for collections should be the same color as the one on the items page and have the asterisk

The one for the collections page looks like this:

The one for the items page looks like this:

should it also say "version your collection *" ?   and should the item page one have the asterisk?

should it also say "version your collection *" ? and should the item page one have the asterisk?

Yes, but that work is already done.


Creating a Better UI for Contact Us Section.

Description

Expected Behavior

Screenshots

Enviroment:

OS: Mac Linux Windows
Browser: Chrome Safari Firefox
Version:
Device: Desktop Mobile

Yes sure, go ahead @sabeenaviklar . Open a PR with required screenshots. And pull the repo properly before making any changes. We will review soon!

Yes sure, go ahead @sabeenaviklar . Open a PR with required screenshots. And pull the repo properly before making any changes. We will review soon!

please assign me

Yes sure, u can also work on it @Arman-ali1

Hello, @akshathar-navada  @Arman-ali1 , I am already working on the issue

Hello, @akshathar-navada @Arman-ali1 , I am already working on the issue

Ok fine, open a PR with required screenshots. We will review it soon!

please assign me this issue

Assign me this issue under GSSoC'23 label

Assign me this issue under GSSoC'23 label

Yes sure, u can also work on it

please assign me


Fix replay order

Codecov Report

Merging #78 (0e767e7) into master (1bed122) will decrease coverage by 0.04%.
The diff coverage is 1.78%.

@@            Coverage Diff             @@
##           master      #78      +/-   ##
==========================================
- Coverage   31.73%   31.68%   -0.05%
==========================================
  Files          62       62
  Lines       12242    12260      +18
  Branches      197      197
==========================================
  Hits         3885     3885
- Misses       8160     8178      +18
  Partials      197      197

Impacted Files
Coverage Δ

src/clj/spring_lobby.clj
12.34% <1.78%> (-0.08%)
:arrow_down:

Continue to review full report at Codecov.

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


wrong password

Yesterday, it was confirmed that the microg used abnormally a lot of battery.
So, after logging out, I deleted the app and reinstalled it.
And I tried to log in with microg.
But I can't log in.
A message apps saying the password is incorrect.
I can log in to Google account on the web page.
It is said that the password is incorrect only in microg.
I am using Galaxy Note 10 and Android 12.
thanks for reading.

I solved it.  You can log in with your phone number, not your ID.


reana get reana-workflow-controller does not return a URL

$ reana get reana-workflow-controller
<IP_ADDRESS>:NodePort:                 http  30226

But the docs assume that it does:
# check workflows:
curl "http://$(reana get reana-workflow-controller)/api/workflows"
{
  "message": "An organization should be provided"
}

Here's a workaround for now:
reana get reana-workflow-controller | awk ' { print $2"://"$1$3 }' | sed 's/:NodePort//'

@hjhsalo Is the NodePort issue still the case with reana-cluster?  Anyway the documentation has been updated and we have a dedicated issue for better cluster status reporting (e.g. https://github.com/reanahub/reana-cluster/issues/8) so that we can probably close this one...


Change default shield design

Maybe we should make the default something other than the black and white rounded rectangle so it's clearer when the default fallback is being used vs routes that intentionally use that style.
Originally posted by @zekefarwell in https://github.com/ZeLonewolf/openstreetmap-americana/issues/362#issuecomment-1146213310

How about an emoji of a confused-looking cowboy?

Really, the question is whether or not we want a bold, "in your face" indicator of unsupported network, or something more subtle.

As an example, here's the default shield with the stroked, rounded rect replaced by a flat white square:

Makes it more obvious that WV's shields are, in fact, a correct representation of something.

Here's a terrible, ugly idea 😄

Serious suggestion, what about using gray instead of black text for the ref value, on the same shield blank?

Could also try no shield blank and just do text with a background colored halo for legibility.

Here's a default shield with 50% gray stroke and text:

Comic Sans aside, allowing for a shield to specify a different font is a somewhat involved change, and it's needed to make the fractional routes work.

I think the gray works well

How about dropping the background in favor of a halo around a somewhat smaller number, similar to how we’re rendering exit numbers but not quite as small? Then there’s no risk of confusion with shields that are supposed to be white rectangles, and we’ll be prepared for the inevitable moment that some township out there decides they want a pre-faded gray appearance.

I think @1ec5's suggestion of a text halo without a shield background is probably the best solution here.
I tried poking around the shield drawing code and it's a bit confusing. It's been quite a few years since I took Graphics class :sweat_smile:
Here's what needs to happen to make it work:

[ ] #367
[ ] Change default shield definition to use new text halo property
[ ] Change existing shield definitions pointing towards shields["default"] to use explicit roundedRectShield() function calls

#402 included an implementation of floating text without a background. There’s some discussion there about whether it would be preferable to the current default.
Another step in this direction would be a plain-text label, like what openstreetmap-carto renders for some road classes. This would be especially appropriate for minor road networks signposted with non-shields (such as road name signs). It would require modifying the text-field expression to match on all the known network values, as described in more detail in https://github.com/ZeLonewolf/openstreetmap-americana/pull/243#issuecomment-1104269627.


UI tests for V0.2

Pull request for all ongoing UI test work so far, for merging at the end of V0.2.

Coverage increased (+10.8%) to 56.286% when pulling 7bbc0990df61d449cdb3432787ba2a25f93a18a6 on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Coverage increased (+8.7%) to 54.196% when pulling 13a0e7ab1c1183355356896ddf72e7c81380b2f8 on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Coverage increased (+11.4%) to 56.929% when pulling e926b27ed10008bc384d24292d78d53dfccdb91e on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Coverage increased (+13.2%) to 58.739% when pulling 392b5ffc59bc37486571f076dca47648cb96aa2b on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Coverage increased (+13.4%) to 58.893% when pulling fff98bde6e3b719e44c662724fdc569cfda173e0 on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Hmm you can merge into the main branch along the way too. Incremental integration is better than doing one big merge (big bang) right?

That's possible, but that would mean merging when the feature isn't complete yet? Like merging but still leaving the PR open?

Oh, if it isnt

Sorry I accidentally pressed Close and comment.

Coverage increased (+13.4%) to 58.893% when pulling fff98bde6e3b719e44c662724fdc569cfda173e0 on V0.2_ui_tests into ab254a42520b2d4905211ee3f4167ce4308f76d5 on V0.2.

Fix https://github.com/CS2103JUN2017-T2/main/issues/61

@CS2103JUN2017-T2/developers reviews?

Coverage increased (+2.4%) to 66.278% when pulling e3588569b06cbc7cf1a0ba4af09dae157c6dda39 on V0.2_ui_tests into 396df364b29e405cf17cb130aded458d67d47a30 on V0.2.


Add ability to get extents properties in HFSS 3d layout

Description of the feature
Currently there is API command to edit hfss 3d layout extents in the form of Hfss3dLayout.edit_hfss_extents. However, there are no API commands to get these values. It will be a useful feature.
Steps for implementing the feature
No response
Useful links and references
No response

@skandak-ansys , this is limited by AEDT scripting.
if edb works for you, you can find all hfss extent parameters under edb.hfss.hfss_extent_info


Community examples tab missing

Describe the bug
Installed 6.1 release and I got only the store, with way less flows than the community tab. Where is possible to get back also the community flows.
Browser and Version

Firefox
latest

To Reproduce
Steps to reproduce the behavior:

Upgrade from 5.12 to 6.1
See the home page, community tab is missing

This is a screenshot of langflow 5.12 where there is still a tab with the community examples, was asking how to get it back

This is a screenshot of Langflow 0.5.12 where the Community examples tab is still available, was asking how to get it back in release > 6.1

I have updated to latest release and there is still no community tab
Due the lack of useful examples that was available in the old Community tab, I have finally switched to flowise, that provide me what I need

Hey @davide445 I'm sorry to read that.
We've been working really hard to put out the best replacement for the Community Tab and to make Langflow even better for you all.
Have you got access to the Langflow Store? If you ping me your e-mail on discord I can get you off the waitlist.
Also, what examples would you like to see? I'll build them in our next release for you.

@ogabrielluiz yes I have had access to the store, and there was the beginning of my disappointment due I didnt found anything useful on the contrary of the old community solution.
On flowise I was able on a couple of hours to create a RAG + prompt chat with memory using Anthropic Claude 3 LLM
Not telling this due I'm an evangelist or so - Im just a manager searching for a no code tool to prototype, showcase and eventually deliver innovative solutions, and will actually prefer Python than Node environment - but that worked.

What happened to the community examples? Are they not in the store? ( still do not have access to the store, so I can only hope).  Does someone have a place to access these outside of langflow?

Hey @davide445  and @vertgo
Would you two mind trying out Langflow 1.0 alpha to tell us what you think about it?
https://huggingface.co/spaces/Logspace/Langflow-Preview?duplicate=true
People seem to like it in our discord server. Here's the link if you all want to join: https://discord.gg/EqksyE2EX9
We have an alpha-feedback channel there too.

Is there a build that I can pull?

Hey @davide445  and @vertgo
Would you two mind trying out Langflow 1.0 alpha to tell us what you think about it? We are trying to remedy the lack of Community Examples in that version.
https://huggingface.co/spaces/Logspace/Langflow-Preview?duplicate=true
People seem to like it in our discord server. Here's the link if you all want to join: https://discord.gg/EqksyE2EX9
We have an alpha-feedback channel there too.

I tried it, and it still only has a store and no community tab. I haven't been able to get and API key for the store. Why lock away the previous community stuff?

Just want to point out my remark it's not about I need a thing called "community tab", just need useful nodes and examples, to prototype and deliver fast.
So far I'm working well with flowise and haven't had the time returning back to langflow, and tbh I'm starting to get annoyed with Python endless venv configuration problems.
Node.js is probably an inefficient mess, but so far is hiding a lot of work to get things done.
Just hope next time I will look at langflow will be straightforward like flowise/npx


Switched requirements from == to >=.

This hard version requirements can cause a lot of woes in ArchLinux packaging.
Would you please consider the change to allow greater versions of the dependencies?
Thank you!

I don't recommend to switch to >=. I spend the evening yesterday investigating why my travis build start failing, just because a package has been updated and contains bugs. Pip should not have any link with archlinux Fix archlinux instead. Just my 2 cents.

@Stibbons : What exactlly failed in your travis build due to the >= vs. == ?

SqlAlchemy has been update and the latest version was buggy. I referenced with >= so the next travis build took it, and failed without I can do anything. Then I spend the evening finding out why it was failing. Generally it is advised to avoid >= for a program, since you are not in control of your dependencies. Use >= for library but only if you have an exaustive check campaigns.

Ideally, pip would allow npm-style version specifications like sqlalchemy^0.9, so that we could accept updates to the minor or patch version but reject updates to the major version. But given the options available in pip, I'm inclined to stick with >= for now. There aren't many requirements here, the requirements we have are fairly stable (BeautifulSoup hasn't updated since 2013), and test coverage is high.