segfault on custom script

Since yesterday, polybar would crash within a second after launch. I did some testing. The problem seems to be the custom script below:
[module/pkgupdates]
type = custom/script
exec = checkupdates | wc -l
tail = false
label = pkg: %output%
interval = 7200

Whenever I invoke the module, there is a segfault. If I change the tail = true, the bar won't crash, but there is no output from the module on the bar.
I updated polybar yesterday, but I forgot if that was before or after the crash issue.
Thank you so much for your help.

@codexjdub: your script runs fine for me. Do you have the full segfault message?
Which polybar version do you use (polybar -v)?

It works fine for me as well. Should note though that tail = true only should be used with commands that continously output lines.

The one that crash is version 2.4.8-1 from arch aur. This is the 'polybar -vv':
polybar 2.4.8

Features: +alsa +curl +i3 -mpd +network

Build type: RelWithDebInfo
Compiler: /usr/bin/c++
Compiler flags: -march=i686 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -Wextra -Werror -O2 -pedantic -pedantic-errors
Linker flags: -Wl,-O1,--sort-common,--as-needed,-z,relro

ALSA_SOUNDCARD              default
BSPWM_SOCKET_PATH           /tmp/bspwm_0_0-socket
BSPWM_STATUS_PREFIX         W
BUILDER_SPACE_TOKEN         %__
CONNECTION_TEST_IP          <IP_ADDRESS>
PATH_ADAPTER                /sys/class/power_supply/%adapter%
PATH_BACKLIGHT_MAX          /sys/class/backlight/%card%/max_brightness
PATH_BACKLIGHT_VAL          /sys/class/backlight/%card%/brightness
PATH_BATTERY                /sys/class/power_supply/%battery%
PATH_CPU_INFO               /proc/stat
PATH_MEMORY_INFO            /proc/meminfo
PATH_TEMPERATURE_INFO       /sys/class/thermal/thermal_zone%zone%/temp

This is the segfault message when I run polybar on terminal:
[1]    13992 segmentation fault (core dumped)  polybar floatBar -c /home/jason/.config/i3/polybar/config

I tried to comment out different code to see if I can identify the problem. It seems that as long as the line type = custom/script  is in the module, it crashes.
I should note that the same module doesn't crash when I switch back to polybar 2.4.3. Since I can't successfully compile polybar 2.5.1, I don't know if the new version would fix the crash issue.

Hi, could you compile a debug build and try running it with gdb to get a stack trace

What compiler errors are you getting when building the latest code?

This is the errors I got when compiling 2.5.1-1 on arch:
[ 16%] Building CXX object bin/CMakeFiles/polybar.dir/components/config.cpp.o
/home/jason/.cache/pacaur/polybar/src/polybar/src/components/config.cpp: In member function ‘T polybar::v2_0_0::config::convert(std::__cxx11::string&&) const [with T = long long unsigned int; std::__cxx11::string = std::__cxx11::basic_string<char>]’:
/home/jason/.cache/pacaur/polybar/src/polybar/src/components/config.cpp:250:32: error: narrowing conversion of ‘strtoull((& value)->std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::c_str<char, std::char_traits<char>, std::allocator<char> >(), 0u, 10)’ from ‘long long unsigned int’ to ‘long unsigned int’ inside { } [-Wnarrowing]
   unsigned long v{std::strtoull(value.c_str(), nullptr, 10)};
                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [bin/CMakeFiles/polybar.dir/build.make:207: bin/CMakeFiles/polybar.dir/components/config.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:373: bin/CMakeFiles/polybar.dir/all] Error 2
make: *** [Makefile:128: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
:: failed to build polybar package(s)

As for 2.4.3, I don't know where to get the source code now since I use pacaur to install package back then. It's not in my .cache folder now. I only have the binary. Even more embarrassing, I don't know/remember how to compile "a debug build and try running it with gdb to get a stack trace". I think I might have done it once 10 years ago in a C++ class......

That bug is already fixed a26a15d48551a3547d1c2c36b16f0503ede5e0fa

Try this
$ mkdir -p /tmp/polybar.build/build
$ cd /tmp/polybar.build
$ git clone --recursive https://github.com/jaagr/polybar
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Debug ..
$ make
$ gdb -ex run -args ./bin/polybar mybar -l trace

But that's the error I got less than an hour ago after I deleted the previous cache and reinstall by pacaur.
'''
✘  ~  pacaur -S polybar
:: Package(s) polybar not found in repositories, trying AUR...
:: resolving dependencies...
:: looking for inter-conflicts...
AUR Packages  (1) polybar-2.5.1-1
:: Proceed with installation? [Y/n]
:: Retrieving package(s)...
Cloning into 'polybar'...
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (5/5), done.
:: View polybar PKGBUILD? [Y/n] n
:: View polybar.install script? [Y/n] n
:: Checking polybar integrity...
==> Making package: polybar 2.5.1-1 (Fri Jan 13 20:50:53 PST 2017)
==> Retrieving sources...
-> Cloning polybar git repo...
Cloning into bare repository '/home/jason/.cache/pacaur/polybar/polybar'...
remote: Counting objects: 9679, done.
remote: Compressing objects: 100% (250/250), done.
remote: Total 9679 (delta 128), reused 0 (delta 0), pack-reused 9429
Receiving objects: 100% (9679/9679), 6.39 MiB | 4.53 MiB/s, done.
Resolving deltas: 100% (7153/7153), done.
==> Validating source files with md5sums...
polybar ... Skipped
:: Building polybar package(s)...
==> Making package: polybar 2.5.1-1 (Fri Jan 13 20:51:00 PST 2017)
.....
'''

Thanks for the detail instructions! Tried to run those commands, there is error at the cmake step:
 ~  mkdir -p /tmp/polybar.build/build
 ~  cd /tmp/polybar.build
 /tmp/polybar.build  git clone --recursive https://github.com/jaagr/polybar
Cloning into 'polybar'...
remote: Counting objects: 9314, done.
remote: Compressing objects: 100% (254/254), done.
remote: Total 9314 (delta 131), reused 0 (delta 0), pack-reused 9060
Receiving objects: 100% (9314/9314), 6.32 MiB | 2.01 MiB/s, done.
Resolving deltas: 100% (6878/6878), done.
Submodule 'lib/i3ipcpp' (https://github.com/jaagr/i3ipcpp) registered for path 'lib/i3ipcpp'
Submodule 'lib/xpp' (https://github.com/jaagr/xpp) registered for path 'lib/xpp'
Cloning into '/tmp/polybar.build/polybar/lib/i3ipcpp'...
remote: Counting objects: 670, done.
remote: Total 670 (delta 0), reused 0 (delta 0), pack-reused 670
Receiving objects: 100% (670/670), 268.40 KiB | 0 bytes/s, done.
Resolving deltas: 100% (202/202), done.
Cloning into '/tmp/polybar.build/polybar/lib/xpp'...
remote: Counting objects: 2564, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 2564 (delta 2), reused 0 (delta 0), pack-reused 2558
Receiving objects: 100% (2564/2564), 441.71 KiB | 567.00 KiB/s, done.
Resolving deltas: 100% (1786/1786), done.
Submodule path 'lib/i3ipcpp': checked out '8ed783100bbc8053fd7d8e19cef58cd097ff23f7'
Submodule path 'lib/xpp': checked out '9d410a963e7e2673a87b200b7560a3d83747e900'
 /tmp/polybar.build  cd build
 /tmp/polybar.build/build  cmake -DCMAKE_BUILD_TYPE=Debug ..
CMake Error: The source directory "/tmp/polybar.build" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.

Yeah git clone added an additional folded because dest wasn't specified..
$ cd /tmp/polybar.build/polybar
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Debug ..
$ make

It compiles perfectly. (Not sure why the one on AUR doesn't.) But I still get the segfault:
[1]    22623 segmentation fault (core dumped)  /usr/local/bin/polybar fullBar -c /home/jason/.config/i3/polybar/config

Without the problem module, it runs fine.
[module/pkgupdates]
type = custom/script
exec = checkupdates | wc -l
;tail = false
;label = PKG:%output%
;interval = 7200

OK, so can you get the stack trace?

I don't know how ....

$ gdb -ex run -args ./bin/polybar mybar -l trace
# Make sure you run the debug build... When it segfaults run:
> bt

Thanks! This is what I got:
 /tmp/polybar.build/polybar/build   master  gdb -ex run -args ./bin/polybar fullBar -l trace
GNU gdb (GDB) 7.12
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./bin/polybar...done.
Starting program: /tmp/polybar.build/polybar/build/bin/polybar fullBar -l trace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
* Created ipc channel at: /tmp/polybar_mqueue.24043
[New Thread 0xb54c3b40 (LWP 24049)]
warn: No monitor specified, using "VGA1"
* Loaded monitor VGA1 (1920x1200+0+0)
- bar: Create renderer
- renderer: Get TrueColor visual
- renderer: Allocate colormap
- renderer: Allocate output window
- renderer: Allocate window pixmap
- renderer: Allocate graphic contexts
- renderer: Load fonts
* Loaded font (pattern=xos4 Terminus:size=12)
* Loaded font (pattern=Roboto:size=10)
* Loaded font (pattern=PowerlineFont:size=10)
* Loaded font (pattern=FontAwesome:size=8)
- bar: Attaching sink to registry
* Bar geometry: 1920x26+0+0
* Bar window: 0x2200003
- bar: Reconfigure window
- bar: Set window WM_NAME
- bar: Set window _NET_WM_WINDOW_TYPE
- bar: Set window _NET_WM_STATE
- bar: Set window _NET_WM_DESKTOP
- bar: Set window _NET_WM_PID
- bar: Map window
- bar: Drawing empty bar
- renderer: clearing area 1920x26+0+0
- renderer: copy pixmap (clear=0, geom=1920x26+0+0)
- controller: Install signal handler
- controller: Setup user-defined modules
error: Disabling module "mpd" (reason: Missing parameter [module/mpd.type])
error: Disabling module "wired-network" (reason: Missing parameter [module/wired-network.type])
error: Disabling module "updates" (reason: Missing parameter [module/updates.type])
error: Disabling module "filesystem" (reason: Missing parameter [module/filesystem.type])
* Starting application
* Starting module/i3
[New Thread 0xb4b70b40 (LWP 24053)]
* Starting module/xwindow
* Starting module/volume
[New Thread 0xb436fb40 (LWP 24054)]
* Starting module/cpu
[New Thread 0xb3b6eb40 (LWP 24055)]
* Starting module/memory
[New Thread 0xb336db40 (LWP 24056)]
* Starting module/wlan
[New Thread 0xb2b6cb40 (LWP 24057)]
* Starting module/pkgupdates
[New Thread 0xb236bb40 (LWP 24058)]
* module/pkgupdates: Invoking shell command: "checkupdates | wc -l"
* Starting module/battery
[New Thread 0xb19ffb40 (LWP 24059)]
[New Thread 0xb0fffb40 (LWP 24061)]
* Starting module/date
[New Thread 0xb07feb40 (LWP 24062)]
- bar: Setup tray manager
* Disabling tray manager (reason: missing `tray-position`)
[New Thread 0xafffdb40 (LWP 24063)]
* Entering event loop (thread-id=1)
* Eventqueue worker (thread-id=2)
* module/i3: Rebuilding cache
* module/xwindow: Rebuilding cache
* module/volume: Rebuilding cache
* module/cpu: Rebuilding cache
* module/memory: Rebuilding cache
* module/wlan: Rebuilding cache
* module/pkgupdates: Rebuilding cache
* module/battery: Rebuilding cache
* module/date: Rebuilding cache
* Redrawing bar window
- renderer: copy pixmap (clear=0, geom=1920x26+0+0)

Thread 8 "polybar" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb236bb40 (LWP 24058)]
0xb7945f10 in __memmove_ssse3 () from /usr/lib/libc.so.6
(gdb) bt
#0  0xb7945f10 in __memmove_ssse3 () from /usr/lib/libc.so.6
#1  0x08437e96 in std::__copy_move<false, true, std::random_access_iterator_tag>::__copy_m<char> (__first=0x0, __last=0xb2368fd4 "", __result=0xb2368fd4 "")
    at /usr/include/c++/6.3.1/bits/stl_algobase.h:368
#2  0x08437dcd in std::__copy_move_a<false, char*, char*> (__first=0x0,
    __last=0xb2368fd4 "", __result=0xb2368fd4 "")
    at /usr/include/c++/6.3.1/bits/stl_algobase.h:386
#3  0x08437ba2 in std::__copy_move_a2<false, char*, char*> (__first=0x0,
    __last=0xb2368fd4 "", __result=0xb2368fd4 "")
    at /usr/include/c++/6.3.1/bits/stl_algobase.h:424
#4  0x08437acd in std::copy<char*, char*> (__first=0x0, __last=0xb2368fd4 "",
    __result=0xb2368fd4 "") at /usr/include/c++/6.3.1/bits/stl_algobase.h:456
#5  0x084375c0 in polybar::v2_0_0::fd_streambuf::underflow (this=0xb2366fac)
    at /tmp/polybar.build/polybar/src/utils/file.cpp:155
#6  0xb7aede59 in std::basic_streambuf<char, std::char_traits<char> >::sgetc (this=
    0xb2366fac)
    at /build/gcc/src/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/streambuf:344
#7  std::getline<char, std::char_traits<char>, std::allocator<char> > (__in=warning: RTTI symbol not found for class 'polybar::v2_0_0::fd_stream<std::istream>'
...,
    __str="", __delim=10 '\n')
    at /build/gcc/src/gcc/libstdc++-v3/src/c++98/istream-string.cc:145
#8  0xb7af7947 in std::getline<char, std::char_traits<char>, std::allocator<char> > (
    __is=warning: RTTI symbol not found for class 'polybar::v2_0_0::fd_stream<std::istream>'
..., __str="")
    at /build/gcc/src/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:5367
#9  0x08439913 in polybar::v2_0_0::io_util::readline[abi:cxx11](int) (read_fd=12)
    at /tmp/polybar.build/polybar/src/utils/io.cpp:27
#10 0x0843528e in polybar::v2_0_0::command::readline[abi:cxx11]() (this=0xb1a00588)
    at /tmp/polybar.build/polybar/src/utils/command.cpp:168
#11 0x083fe340 in polybar::v2_0_0::modules::script_module::<lambda()>::<lambda()>::operator()(void) const (__closure=0x85f5fe0)
    at /tmp/polybar.build/polybar/src/modules/script.cpp:68
#12 0x08400bef in std::_Function_handler<std::chrono::duration<double, std::ratio<1ll, 1ll> >(), polybar::v2_0_0::modules::script_module::script_module(const polybar::v2_0_0::bar_settings&, std::__cxx11::string)::<lambda()>::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/6.3.1/functional:1717
#13 0x08402917 in std::function<std::chrono::duration<double, std::ratio<1ll, 1ll> > ()>::operator()() const (this=0x85f5fe0) at /usr/include/c++/6.3.1/functional:2127
#14 0x083fff21 in polybar::v2_0_0::modules::script_module::process(polybar::v2_0_0::mutex_wrapper<std::function<std::chrono::duration<double, std::ratio<1ll, 1ll> > ()> > const&) const (this=0x85f5e30, handler=...)
    at /tmp/polybar.build/polybar/src/modules/script.cpp:156
#15 0x083ffb9d in polybar::v2_0_0::modules::script_module::<lambda()>::operator()(void) const (__closure=0x85e876c) at /tmp/polybar.build/polybar/src/modules/script.cpp:109
#16 0x0840110e in std::_Bind_simple<polybar::v2_0_0::modules::script_module::start()::<lambda()>()>::_M_invoke<>(std::_Index_tuple<>) (this=0x85e876c)
    at /usr/include/c++/6.3.1/functional:1391
#17 0x084010c4 in std::_Bind_simple<polybar::v2_0_0::modules::script_module::start()::<lambda()>()>::operator()(void) (this=0x85e876c)
    at /usr/include/c++/6.3.1/functional:1380
#18 0x084010ab in std::thread::_State_impl<std::_Bind_simple<polybar::v2_0_0::modules::script_module::start()::<lambda()>()> >::_M_run(void) (this=0x85e8768)
    at /usr/include/c++/6.3.1/thread:197
#19 0xb7b01a1d in std::execute_native_thread_routine (__p=0x85e8768)
    at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:83
#20 0xb79d6301 in start_thread () from /usr/lib/libpthread.so.0
#21 0xb79000ae in clone () from /usr/lib/libc.so.6
(gdb)

Could you update to get 038fea8e362b72007d6211b20a0019ffce731b83 and see if it fixes it

There is an error while compiling:
~/polybar.build.038/polybar-038fea8e362b72007d6211b20a0019ffce731b83/build  cmake ..
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- No build type specified; using RelWithDebInfo
-- Using supported compiler GNU-6.3.1
-- No preferred c++lib specified... linking against system default
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- --------------------------
--  Build type: RelWithDebInfo
--  Compiler C: /usr/bin/cc
--  Compiler C++: /usr/bin/c++
--  Compiler flags:  -Wall -Wextra -Werror -O2 -pedantic -pedantic-errors
--    relwithdebinfo: -O2 -g -DNDEBUG
--  C++ library: system default
-- --------------------------
--  Build polybar-msg    ON
--  Build testsuite      OFF
--  Debug logging        OFF
--  + Verbose tracing    OFF
--  Draw debug hints     OFF
--  Draw whitespace      OFF
--  Enable ccache        OFF
-- --------------------------
--  Enable alsa          ON
--  Enable curl          ON
--  Enable i3            ON
--  Enable mpd           OFF
--  Enable network       ON
-- --------------------------
--  XRANDR support       ON
--  + XRandR monitors    1
--  XRENDER support      OFF
--  XDAMAGE support      OFF
--  XSYNC support        OFF
--  XCOMPOSITE support   OFF
--  XKB support          ON
-- --------------------------
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/libX11.so
-- Found X11_XCB: /usr/lib/libX11-xcb.so
-- Checking for module 'fontconfig'
--   Found fontconfig, version 2.12.1
CMake Error at src/CMakeLists.txt:70 (add_subdirectory):
  The source directory

    /home/jason/polybar.build.038/polybar-038fea8e362b72007d6211b20a0019ffce731b83/lib/xpp

  does not contain a CMakeLists.txt file.

-- Found ALSA: /usr/lib/libasound.so (found version "1.1.3")
-- Found Libiw: /usr/lib/libiw.so
CMake Error at src/CMakeLists.txt:112 (add_subdirectory):
  The source directory

    /home/jason/polybar.build.038/polybar-038fea8e362b72007d6211b20a0019ffce731b83/lib/i3ipcpp

  does not contain a CMakeLists.txt file.

-- Found CURL: /usr/lib/libcurl.so (found version "7.52.1")
-- Found font: misc fixed:pixelsize=10
CMake Warning at cmake/utils.cmake:9 (message):
  Font not found: unifont:fontformat=truetype
Call Stack (most recent call first):
  cmake/utils.cmake:201 (message_colored)
  doc/CMakeLists.txt:16 (font_query)

CMake Warning at cmake/utils.cmake:9 (message):
  Font not found: siji:pixelsize=10
Call Stack (most recent call first):
  cmake/utils.cmake:201 (message_colored)
  doc/CMakeLists.txt:17 (font_query)

-- Configuring incomplete, errors occurred!
See also "/home/jason/polybar.build.038/polybar-038fea8e362b72007d6211b20a0019ffce731b83/build/CMakeFiles/CMakeOutput.log".
See also "/home/jason/polybar.build.038/polybar-038fea8e362b72007d6211b20a0019ffce731b83/build/CMakeFiles/CMakeError.log".

Guess you have fetched the submodules.. git submodule update --init --recursive

I cloned the polybar.git, but couldn't find/checkout the commit 038fea8. So I went to https://github.com/jaagr/polybar/tree/038fea8e362b72007d6211b20a0019ffce731b83 to download the zip file and tried to compile it. Could you please show me how to get 038fea8 on the terminal?

$ git remote add upstream https://github.com/jaagr/polybar
$ git fetch upstream
$ git rebase upstream/master

I don't know what I am doing...
~/polybar.build.038  git clone https://github.com/jaagr/polybar
Cloning into 'polybar'...
remote: Counting objects: 9406, done.
remote: Compressing objects: 100% (345/345), done.
remote: Total 9406 (delta 187), reused 0 (delta 0), pack-reused 9060
Receiving objects: 100% (9406/9406), 6.34 MiB | 1.18 MiB/s, done.

Run in a clean directory:
$ git clone https://github.com/jaagr/polybar --recursive
$ mkdir build
$ cd build
$ cmake ..
$ make
$ ./bin/polybar

It works!! No more crashes!!
Thanks for teaching me how to build from the source in the meantime!
Just curious, how come 2.5.1 compiles perfectly for me from the git repo yesterday, but not from AUR. I though AUR gets the source code from git too.

Awesome. I'm not sure, but my guess would be caching.


Maybe still issues with test_large_io_doesnt_hang on windows?

Seeing some test fails on https://github.com/conda-forge/terminado-feedstock/pull/38, looking into it:
        if future_cell[0].cancelled() or not future_cell[0].done():
>           raise TimeoutError("Operation timed out after %s seconds" % timeout)
E           asyncio.exceptions.TimeoutError: Operation timed out after 30.0 seconds

..\_test_env\lib\site-packages\tornado\ioloop.py:528: TimeoutError
------------------------------ Captured log call ------------------------------
WARNING  tornado.general:autoreload.py:128 tornado.autoreload started more than once in the same process

https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=575370&view=logs&j=7df5a329-fcdb-5857-5720-a5dae94c0641&t=428acfd7-2921-5219-037f-9169d136e406&l=494
Maybe i missed some test dep changes? Might be the weekend before i can investigate further...

Ah, yeah, I may have tuned that timeout too tightly... on my system that test was taking around 20 seconds, but I didn't want it to take forever on failures.

Builds are passing on conda-forge now, I think we're good!


Fix launcher option handling

See sbt/sbt#5885

@avdv Thanks for the contribution.
Could you add a test here please? - https://github.com/sbt/sbt-launcher-package/blob/master/integration-test/src/test/scala/RunnerTest.scala

Could you add a test here please? - https://github.com/sbt/sbt-launcher-package/blob/master/integration-test/src/test/scala/RunnerTest.scala

Sure, I am trying....
But, when running sbt -Dsbt.build.version=1.3.10 universal:packageBin universal:stage integrationTest/test I get the following:
[addJava] arg = '-XX:ReservedCodeCacheSize=128m'
[copyRt] java9_rt = '/home/claudio/.sbt/0.13/java9-rt-ext-adoptopenjdk_11_0_6/rt.jar'
[addJava] arg = '-Dscala.ext.dirs=/home/claudio/.sbt/0.13/java9-rt-ext-adoptopenjdk_11_0_6'
Error: Invalid or corrupt jarfile /home/claudio/github/sbt-launcher-package/target/universal/stage/bin/sbt-launch.jar
- quoted * should not glob expand to local files *** FAILED ***
  RuntimeException: Nonzero exit value: 1
    scala.sys.package$.error(package.scala:30)
    sbt.internal.AbstractProcessBuilder.getString(ProcessImpl.scala:131)
    sbt.internal.AbstractProcessBuilder.$bang$bang(ProcessImpl.scala:133)
...

It seems the sbt-launch.jar is just an empty file:
$ fd -u sbt-launch.jar -x file
target/sbt-launch.jar: empty
target/universal/stage/bin/sbt-launch.jar: empty

I added tests to both commits. Caveat: clean room implementation since I cannot run them... :wink:

I tried to download the sbt-launch.jar manually but also ran into problems...
Isn't it a bit crazy to start a JVM during the integration tests, only (mostly) to examine the  arguments that are passed to the process?
I wrote a quick mock instead:
#!/usr/bin/env python

import sys

if '--version' in sys.argv or '-version' in sys.argv:
    print 'openjdk version "1.8.0_212"'
else:
    for arg in sys.argv[1:]:
        print repr(arg)

Then, in SbtRunnerTest.scala:
  private val javaBinDir = new File(".", "integration-test" + File.separator + "bin").getAbsolutePath

  def sbtProcess(args: String*) = sbtProcessWithOpts(args: _*)("", "")
  def sbtProcessWithOpts(args: String*)(javaOpts: String, sbtOpts: String) = {
    val path = sys.env("PATH")
    sbt.internal.Process(Seq(sbtScript.getAbsolutePath) ++ args, new File("citest"),
      "JAVA_OPTS" -> javaOpts,
      "SBT_OPTS" -> sbtOpts,
      "PATH" -> (javaBinDir + File.pathSeparator + path)
    )
  }

That works for most of the tests in there, only 5 of them really expect to call the real sbt-launch.jar.

Isn't it a bit crazy to start a JVM during the integration tests, only (mostly) to examine the arguments that are passed to the process?

Previously most of these bash/batch options didn't have any test at all and they kept failing on Mac, Linux, and Windows.. so the test is not ideal but it's far better than nothing. If you or anyone wants to improve the status quo, I'd be happy to accept changes.

Previously most of these bash/batch options didn't have any test at all and they kept failing on Mac, Linux, and Windows.. so the test is not ideal but it's far better than nothing. If you or anyone wants to improve the status quo, I'd be happy to accept changes.

I've separated the tests into different files depending on whether they really need to run the sbt-launch.jar or not. I could also split out those changes if you want.

@eed3si9n I think this should be ready to review. Note that I also removed the piccolo.link as those constantly returned an error:
$ curl https://piccolo.link/sbt-$SBT_VER.zip -L --output /tmp/sbt.zip
$ unzip /tmp/sbt.zip -d $HOME/sbt
Archive:  /tmp/sbt.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.


window.eval doesn't finish and doesn't log errors either

Basic info:

Node.js version: v7.9.0
jsdom version: v11.0.0

When loading a webpack bundle and executing it via dom.window.eval() the code runs to a certain degree. The problem is, it doesn't finish. I assume at some point an error occurs but isn't shown in the console. I attached my html and js files incase someone want's to reproduce this problem.
Module 17 is the entry module. I therefore placed console.log('running main Script'); in there to check if the module is executed. The line appears in my console.
html_and_js.zip
Minimal reproduction case
const { JSDOM, VirtualConsole } = require("jsdom");
const fs = require('fs');
const virtualConsole = new VirtualConsole();

virtualConsole.sendTo(console);

const options = {
    virtualConsole: virtualConsole
};
const dom = new JSDOM.fromFile('./dist/index.html', {runScripts: 'outside-only'});
const source = fs.readFileSync('./dist/app.js', 'utf8');

dom.window.eval(source);

How does similar code behave in browsers?
The bundle runs without any error in the browser.

You're not passing the virtualConsole to jsdom, so you won't see any logs from it.

@Sebmaster sorry I see, I missed that in the example. I definitely passed it in my tests, since I got errors for some of the css.

You'll have to give a better repro then. One we can actually execute.

@Sebmaster well I updated my initial comment. If the zipped files don't work for you, it'd be good if you can tell me what I can provide instead. At the moment I can't create any minimal eval code, since I don't know where it stops executing.

If I open your index file in the browser I get a blank page, so I'm not sure what you're expecting jsdom to do. However, I see you're using custom elements and chances are that's not going to run (even with the shim, there are some issues).

@Sebmaster yes, many of the stylesheets are missing and custom elements also won't work, thus the blank page. What I'm trying to achieve is to run the bundle in order to get the dom transformation.
But thank you for mentioning custom elements. I was totally oblivious to the fact that of course the WebComponentsReady event never fired! 🙈
Well sorry for wasting your time :/


pythonPackages.pybind11: init at 2.2.4

Motivation for this change
Add the pypi version of pybind11 to address #53497.
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Any progress on this ?

Ran 0 tests in 0.000s

Please add an appropriate checkPhase or, if there are no tests, set doCheck = false and add a comment with the reason.

@dotlambda Updated check phase accordingly.


Unexpected PLC errors during compilation.

Summary
In trying to add a data type Epoch to a UTxO datum
TreasuryState, I encountered a couple of PLC errors during
compilation. With:
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE TemplateHaskell #-}

import Data.Aeson (FromJSON, ToJSON)
import Data.OpenApi.Schema (ToSchema)
import GHC.Generics (Generic)
import PlutusTx qualified
import PlutusTx.Natural (Natural)
import PlutusTx.Prelude
import Prelude (Show)
import Prelude qualified (Eq)

data TreasuryState = TreasuryState
  { executive :: Credential
  , lastRewardEpoch :: Epoch
  }
  deriving stock (Prelude.Eq, Show, Generic)
  deriving anyclass (FromJSON, ToJSON)

PlutusTx.unstableMakeIsData ''TreasuryState

data Epoch = Epoch
  { epochNumber :: Natural
  }
  deriving stock (Prelude.Eq, Show, Generic)
  deriving anyclass (ToJSON, FromJSON, ToSchema)

instance Eq Epoch where
  {-# INLINEABLE (==) #-}
  e == e' = e.epochNumber == e'.epochNumber

PlutusTx.unstableMakeIsData ''Epoch
PlutusTx.makeLift ''Epoch

I experienced error trace (A), listed in "Screenshots and
attachments" below. Please note that LiqwidX.Treasury.Init is
the module, which calls mkTypedValidatorParam on
TreasuryState's script. Making the components of TreasuryState
strict:
data TreasuryState = TreasuryState
  { executive :: !Credential
  , lastRewardEpoch :: !Epoch
  }
  deriving stock (Prelude.Eq, Show, Generic)
  deriving anyclass (FromJSON, ToJSON)

results in error trace (B). It is only when I alter Epoch to be
a newtype wrapper:
newtype Epoch = Epoch
  { epochNumber :: Natural
  }
  deriving stock (Show, Prelude.Eq, Generic)
  deriving anyclass (ToJSON, FromJSON, ToSchema)

or add an additional record constructor:
data Epoch = Epoch
  { epochNumber :: Natural
  , foo :: Natural
  }
  deriving stock (Show, Prelude.Eq, Generic)
  deriving anyclass (ToJSON, FromJSON, ToSchema)

that the project compiles without issue.
Steps to reproduce
Steps to reproduce the behavior:
For each example listed in the summary:

Duplicate the relevant code snippet.
Attempt to place it "on-chain" by compiling a TypedValidator
using TreasuryState.
Run cabal v2-build on your project.

Expected behavior
That the code compiles without issue.
System info (please complete the following information):

OS: Fedora 35
Version: Kernel 5.14.18-300.fc35.x86_64
Plutus version or commit hash:
3f089ccf0ca746b399c99afe51e063b0640af547

Screenshots and attachments
Error Trace (A)
...
[63 of 67] Compiling LiqwidX.Treasury.Init ( src/LiqwidX/Treasury/Init.hs, /home/jack/repos/lqx/dist-newstyle/build/x86_64-linux/ghc-<IP_ADDRESS>10212/liqwidx-contracts-0.1/build/LiqwidX/Treasury/Init.o, /home/jack/repos/lqx/dist-newstyle/build/x86_64-linux/ghc-<IP_ADDRESS>10212/liqwidx-contracts-0.1/build/LiqwidX/Treasury/Init.dyn_o ) [LiqwidX.Treasury changed]
GHC Core to PLC plugin: E016:Error: Error from the PIR compiler:
            E016: Error during PIR typechecking:
            Type mismatch at () in term
              '(lam
                ds
                [ [ Tuple2 (con bytestring) ] (con bytestring) ]
                (lam
                  ds
                  [ [ Tuple2 (con bytestring) ] (con bytestring) ]
                  (lam
                    ds
                    Credential
                    (lam
                      dt
                      (con integer)
                      (let
                        (nonrec)
                        (termbind
                          (nonstrict)
                          (vardecl
                            wild
                            [ [ Tuple2 (con bytestring) ] (con bytestring) ]
                          )
                          ds
                        )
                        [
                          {
                            [
                              {
                                { Tuple2_match (con bytestring) }
                                (con bytestring)
                              }
                              ds
                            ]
                            [
                              [
                                (lam
                                  k
                                  (type)
                                  (lam v (type) [ List [ [ Tuple2 k ] v ] ])
                                )
                                (con bytestring)
                              ]
                              [
                                [
                                  (lam
                                    k
                                    (type)
                                    (lam v (type) [ List [ [ Tuple2 k ] v ] ])
                                  )
                                  (con bytestring)
                                ]
                                (con integer)
                              ]
                            ]
                          }
                          (lam
                            c
                            (con bytestring)
                            (lam
                              t
                              (con bytestring)
                              [
                                [
                                  {
                                    Cons
                                    [
                                      [ Tuple2 (con bytestring) ]
                                      [
                                        [
                                          (lam
                                            k
                                            (type)
                                            (lam
                                              v
                                              (type)
                                              [ List [ [ Tuple2 k ] v ] ]
                                            )
                                          )
                                          (con bytestring)
                                        ]
                                        (con integer)
                                      ]
                                    ]
                                  }
                                  [
                                    [
                                      {
                                        { Tuple2 (con bytestring) }
                                        [
                                          [
                                            (lam
                                              k
                                              (type)
                                              (lam
                                                v
                                                (type)
                                                [ List [ [ Tuple2 k ] v ] ]
                                              )
                                            )
                                            (con bytestring)
                                          ]
                                          (con integer)
                                        ]
                                      }
                                      c
                                    ]
                                    [
                                      [
                                        {
                                          Cons
                                          [
                                            [ Tuple2 (con bytestring) ]
                                            (con integer)
                                          ]
                                        }
                                        [
                                          [
                                            {
                                              { Tuple2 (con bytestring) }
                                              (con integer)
                                            }
                                            t
                                          ]
                                          (con integer 100)
                                        ]
                                      ]
                                      {
                                        Nil
                                        [
                                          [ Tuple2 (con bytestring) ]
                                          (con integer)
                                        ]
                                      }
                                    ]
                                  ]
                                ]
                                {
                                  Nil
                                  [
                                    [ Tuple2 (con bytestring) ]
                                    [
                                      [
                                        (lam
                                          k
                                          (type)
                                          (lam
                                            v (type) [ List [ [ Tuple2 k ] v ] ]
                                          )
                                        )
                                        (con bytestring)
                                      ]
                                      (con integer)
                                    ]
                                  ]
                                }
                              ]
                            )
                          )
                        ]
                      )
                    )
                  )
                )
              )'.
            Expected type
              '(fun
                [ [ Tuple2_1164 (con bytestring) ] (con bytestring) ]
                (fun
                  [ [ Tuple2_1164 (con bytestring) ] (con bytestring) ]
                  (fun
                    Credential_1479
                    (fun
                      (con integer)
                      [
                        List_1128
                        [
                          [ Tuple2_1164 (con bytestring) ]
                          [
                            List_1128
                            [ [ Tuple2_1164 (con bytestring) ] (con integer) ]
                          ]
                        ]
                      ]
                    )
                  )
                )
              )',
            found type
              '(fun
                [ [ Tuple2_1164 (con bytestring) ] (con bytestring) ]
                (fun
                  [ [ Tuple2_1164 (con bytestring) ] (con bytestring) ]
                  (fun
                    Credential_1479
                    (fun
                      Epoch_1546
                      [
                        List_1128
                        [
                          [ Tuple2_1164 (con bytestring) ]
                          [
                            List_1128
                            [ [ Tuple2_1164 (con bytestring) ] (con integer) ]
                          ]
                        ]
                      ]
                    )
                  )
                )
              )'
Context: Compiling expr at "liqwidx-contracts-0.1-inplace:LiqwidX.Treasury.Init:(75,8)-(75,47)"
cabal: Failed to build liqwidx-contracts-0.1 (which is required by
test:scripts from liqwidx-contracts-0.1, test:script-size from
liqwidx-contracts-0.1 and others).

make: *** [Makefile:114: build] Error 1

Error Trace (B)
...
[63 of 67] Compiling LiqwidX.Treasury.Init ( src/LiqwidX/Treasury/Init.hs, /home/jack/repos/lqx/dist-newstyle/build/x86_64-linux/ghc-<IP_ADDRESS>10212/liqwidx-contracts-0.1/build/LiqwidX/Treasury/Init.o, /home/jack/repos/lqx/dist-newstyle/build/x86_64-linux/ghc-<IP_ADDRESS>10212/liqwidx-contracts-0.1/build/LiqwidX/Treasury/Init.dyn_o ) [LiqwidX.Treasury changed]
GHC Core to PLC plugin: E016:Error: Error from the PIR compiler:
            E016: Error during PIR typechecking:
            Type mismatch at () in term
              'dt'.
            Expected type
              '(con integer)',
            found type
              'Epoch_1552'
Context: Compiling expr at "liqwidx-contracts-0.1-inplace:LiqwidX.Treasury.Init:(75,8)-(75,47)"
cabal: Failed to build liqwidx-contracts-0.1 (which is required by
test:scripts from liqwidx-contracts-0.1, test:script-size from
liqwidx-contracts-0.1 and others).

make: *** [Makefile:114: build] Error 1

Thanks for the issue!
I can't reproduce the error so could you please to share some details. Do you use regular plutus's nix-shell environment? What is import PlutusTx.Natural (Natural)? Do you use https://github.com/ndmitchell/record-dot-preprocessor? What version?

Thank you for responding!
I use an impure nix-shell with lorri. PlutusTx.Natural is a package used in-house at MLabs. We do use record-dot-preprocessor but I am unsure which version.

My project manager informed me that the pre-processor version is most likely 0.2.13.

Unfortunately the provided info is not enough to tell what's going wrong. Is there any chance of providing a small reproducible example?

I have been working on a small example but so far have been able to replicate it myself. I will continue to work on it and update you on my progress.

Thank you!

Managed to recreate the issue! Here is the repo: https://github.com/jhodgdev/plc-errors

@jhodgdev while we are investigating the behaviour and looking for a proper fix, please use {-# OPTIONS_GHC -fno-unbox-small-strict-fields #-} for now. It should help with the compilation error and unblock you.

Thank you very much @ak3n :)


[type:bug] ShiroProperties.getWhiteList() is null

Fixes #2413

Codecov Report

Merging #2415 (60ba189) into master (625a46e) will decrease coverage by 0.30%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #2415      +/-   ##
============================================
- Coverage     59.21%   58.90%   -0.31%
+ Complexity     4021     3993      -28
============================================
  Files           629      629
  Lines         18063    18064       +1
  Branches       1690     1689       -1
============================================
- Hits          10696    10641      -55
- Misses         6528     6586      +58
+ Partials        839      837       -2

Impacted Files
Coverage Δ

...rg/apache/shenyu/admin/utils/ThreadLocalUtils.java
0.00% <0.00%> (-66.67%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
51.57% <0.00%> (-11.58%)
:arrow_down:

...a/org/apache/shenyu/common/utils/VersionUtils.java
67.85% <0.00%> (-10.72%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
71.28% <0.00%> (-9.91%)
:arrow_down:

.../apache/shenyu/admin/model/dto/BatchCommonDTO.java
50.00% <0.00%> (-7.15%)
:arrow_down:

...apache/shenyu/admin/model/dto/AuthPathWarpDTO.java
57.14% <0.00%> (-7.15%)
:arrow_down:

...org/apache/shenyu/admin/model/dto/AuthPathDTO.java
58.82% <0.00%> (-5.89%)
:arrow_down:

...in/response/strategy/NettyClientMessageWriter.java
69.56% <0.00%> (-4.35%)
:arrow_down:

...che/shenyu/admin/model/vo/DashboardUserEditVO.java
62.50% <0.00%> (-4.17%)
:arrow_down:

...ache/shenyu/admin/model/dto/DataPermissionDTO.java
59.25% <0.00%> (-3.71%)
:arrow_down:

... and 23 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 625a46e...60ba189. Read the comment docs.


Test cases failure with lifting stack variables from function status_handler in Apache

The test suite fails after lifting the stack variables from the function status_handler in apache atd. The variables named tick and times_per_thread are having the problem.

Fixed after updating the semantics of DIVSS instructions set


docs: Update German style guide: Gender-inclusive language, direct messages, some cleanup

This PR includes changes to update the German translation style guide to reflect the decision on gender-inclusive language on CZO.
It also removes and updates some outdated information, such as integrating the PM→DM transition. Specifically, it gives motivation for abbreviating „Direktnachricht“ (direct message) as DM as opposed to DN to align with Slack and X/Twitter (no platform known to me uses “DN”).

Screenshots and screen captures: N/A

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[X] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[X] Each commit is a coherent idea.
[X] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Thanks, @v-ji ! I gave the PR a light readthrough, and didn't have any concerns.

Tweaked the commit messages, adjusted some line-wrapping, and marked this to merge once CI passes, thanks @v-ji!


Change the property name in the MinimumWPVersionTrait trait

Is your feature request related to a problem?
In the MinimumWPVersionTrait trait, we have a public property that can be referenced in the sniffs, called $minimum_supported_version. However, the CLI argument for setting the minimum supported WP version is named minimum_supported_wp_version.
https://github.com/WordPress/WordPress-Coding-Standards/blob/9544c7e0e78fc85405b32076ec2949c2e59854d1/WordPress/Helpers/MinimumWPVersionTrait.php#L71
And that can cause some confusion when writing sniffs - in the tests and in the sniffs we are using one naming (minimum_supported_version), and when the property should be consumed, either via CLI, or via ruleset, we need to use the other name (minimum_supported_wp_version):
<config name="minimum_supported_wp_version" value="5.4"/>

or
phpcs --runtime-set minimum_supported_wp_version 4.5

Describe the solution you'd like
The solution would be to change this property in the trait to be named $minimum_supported_wp_version. All the sniffs consuming this trait would be affected, and the tests as well, but since we would release this in the 3.0.0 version, this is an allowed BC break.

I fully support this proposal. What about naming it minimum_wp_version in that case ? I mean, I'm wondering if the supported in the property/CLI name has added value... ?
Historical perspective:

IIRC the property was added first and as the property would be added to WP specific sniffs via the ruleset, the  minimum_supported_version` name was descriptive enough.
At a later point in time, support for setting the property for all sniffs via the command-line was added.
Now when using minimum_supported_version from the CLI without the context of the specific sniffs, it could be confusing... minimum supported version of what ? Which is why the CLI implementation uses a slightly different name minimum_supported_wp_version.

I'm happy with minimum_wp_version. Would need calling out in 3.0.0 changelogs/docs/wiki. Bit of a pain for consumers to update their PHPCS config files just to help us align a name internally, but the major release is the time to do it :-)

Yeah, minimum_wp_version sounds best. The aim is to make the naming of the cli argument and the trait property the same to have more consistency.
And since it's a major change we would denote what was changed in the changelog ofc 🙂

I'll prepare a PR for this to be pulled after PR #2112 has been merged (and will add information about the change to the WIP upgrade guides and such which I have locally).

🎗 This will also need a change in the Wiki.


Spatial plotting on eastings / nortthings not handled

Describe the bug
When working with files that have spatial coordinates in eastings / northings /eg. KADK daily 1km outputs, the spatial plotting routine can't identify the coordinates and crashes.

Consider switching to the cf-xarray package to identify the x/y coordinates. Not sure what to do in cases when the file is not CF compliant, but at the same time, maybe support for non-CF files should be considered out-of-scope anyway.

Moved to  v0.6 milestone, as we need more time to explore cf-xarray


Release DID Method implementation crates

Progress for #136

Add readmes

These will show up on the crates.io page, as well as in the repo/directories.
URLs in these subdirectory readmes must be absolute: https://github.com/rust-lang/crates.io/issues/3484
Link to DID method specifications where extant, otherwise link to DID Core.

Set metadata fields

Set license to Apache-2.0
Set homepage to the URL of the directory in the source repo on main branch.
Set repository and docs as appropriate.
Set some categories and keywords where applicable.

Depend on ssi crate by its crates.io registry version

Use multiple locations so that the path dependency will still be used when running from the checked out ssi repo, but when published on the registry the registry's version of ssi will be used.

Mark ssi-vc-test as don't publish as it is only used for our testing with vc-test-suite in CI

Crates to be published

Crate name
Version

did-ethr
0.0.1

did-method-key
0.1.0

did-onion
0.1.0

did-pkh
0.0.1

did-sol
0.0.1

did-tz
0.1.0

did-web
0.1.0

The versions follow a pattern of "0.1.0" where there is a specification and fairly complete implementation, otherwise "0.0.1".
Naming follows a pattern of did-<method-name> where available, otherwise did-method-<method-name>. did-method-key is in the second category, as discussed in https://github.com/spruceid/ssi/pull/146. did-tezos is renamed to did-tz for consistency between the crate name and the method name: Fix https://github.com/spruceid/ssi/issues/166.

Published.
:key: key
https://crates.io/crates/did-method-key/0.1.0
https://github.com/rust-lang/crates.io-index/commit/699a8a8408f1a1fa6c1740fe0e8370aaeb374a28
https://github.com/spruceid/ssi/releases/tag/did-method-key/v0.1.0
:spider_web: web
https://crates.io/crates/did-web/0.1.0
https://github.com/rust-lang/crates.io-index/commit/70885fabf0678240c620c8b2a99f6cc6349d004b
https://github.com/spruceid/ssi/releases/tag/did-web/v0.1.0
:t-rex: tz
https://crates.io/crates/did-tz/0.1.0
https://github.com/rust-lang/crates.io-index/commit/c41a3366c9c30529e691763fa0732437862775bf
https://github.com/spruceid/ssi/releases/tag/did-tz/v0.1.0
:sun_with_face: sol
https://crates.io/crates/did-sol/0.0.1
https://github.com/rust-lang/crates.io-index/commit/58887504c305706d380f5e58489bef21cea9cd24
https://github.com/spruceid/ssi/releases/tag/did-sol/v0.0.1
:hash: pkh
https://crates.io/crates/did-pkh/0.0.1
https://github.com/rust-lang/crates.io-index/commit/d90e3da7e17b5024985feca6042123d41b3f9617
https://github.com/spruceid/ssi/releases/tag/did-pkh/v0.0.1
:ethiopia: ethr
https://crates.io/crates/did-ethr/0.0.1
https://github.com/rust-lang/crates.io-index/commit/f6a396c5d1c6e0f8575a27bf47548f16b3e3d9d9
https://github.com/spruceid/ssi/releases/tag/did-ethr/v0.0.1
:onion: onion
https://crates.io/crates/did-onion/0.1.0
https://github.com/rust-lang/crates.io-index/commit/ace95ee2461ec31df6970550debb88ba6bd16540
https://github.com/spruceid/ssi/releases/tag/did-onion/v0.1.0


Fix for #205 allow collector path in host url

This should allow for the previous collector path in the host url.

@VictorioBerra  can you test this to see if it meets your needs?

@EEParker Works great!
My config
  "Serilog": {
    "WriteTo": [
      {
        "Name": "EventCollector",
        "Args": {
          "splunkHost": "https://splunk.company.com/services/collector",
          "eventCollectorToken": "111-222-333-444-555"
        }
      }
    ]
  }


Whitelisting Teams

All UK public sector bodies are instructed to follow NCSC End User Device Guidance (which is essentially just good practice) https://www.ncsc.gov.uk/guidance/eud-security-guidance-windows-10-1709#applicationwhitelistingsection which instructs enterprises not to install applications to locations where users can write files - which includes AppData. Opening up AppData to allow users to run any application is a massive security hole, but whitelisting by application ID is no way to permit it to run as this can change. Please stop ignoring the feedback on user voice and change the way the installer works so that the application is installed to Program Files. AppData should be for just that - data relating to applications.

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

ID: 7b13006b-d1de-8bc7-e0c6-b7022af0e731
Version Independent ID: d29dae65-bb28-8767-cfd7-07d2ed5fd460
Content: Install Microsoft Teams using MSI
Content Source: Teams/msi-deployment.md
Service: msteams
GitHub Login: @Lester-Hewett
Microsoft Alias: lehewe

Hi @PeteWestlake  thanks for your feedback, we really appreciate it.
As this is to inform of issues specific to documentation, it seems that your question is more suitable to User Voice, @yogkumgit will gently direct you to that resource, but if you already created a user voice sugggestion there, I invite you to post the link to it here, so everyone can see it or up vote it.
Thank you

@PeteWestlake  Thank you very much for your kind feedback. as you are already aware of Uservoice process, you are following it up, we are sure concerning team will evaluate and take the appropriate action, as per their schedule. Thanks again for taking out some time and sharing your feedback.


Update submissions.md

You need to open an issue in here, explain what is your submission then wait for my instructions


cant type unix password at end

Please paste the output of the following command here: sudo edit-chroot -all

Please describe your issue:
If known, describe the steps to reproduce the issue:

at the end it says type unix password only problem is i cant type there

@kermitissad,
Are you sure you can't type there?
When it prompts you for the password (twice) the characters you type will not be displayed but will be entered & registered, that's for security.
Hope this helps,
-DennisLfromGA

then how do i enter it

@DennisLfromGA

@kermitissad,
Please re-read the segment of the sentence where I mention:

the characters you type will not be displayed but will be entered & registered

Just enter a valid password (twice) and let it finish.
Hope this helps,
-DennisLfromGA

i recommend adding the password thing to pins for clarification, some users will thing its not working

Closing. Please re-open if this issue is still a concern.


Numpy 2.0 compatibility

[x] Closes #2026
[x] I am familiar with the contributing guidelines
[x] Tests added
~[ ] Updates entries in docs/sphinx/source/reference for API changes.~
[x] Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
~[ ] New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.~
[x] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

The necessary changes are all minor:

Rename np.NaN to np.nan
Rename np.Inf to np.inf
Fix a small np.uint8 casting issue
Use scipy.integrate.trapezoid instead of np.trapz

The last item is only to address a deprecation warning: numpy 2.0 deprecated np.trapz in favor of either np.trapezoid or scipy.integrate.trapezoid.  To avoid the small code cruft of using try/except for importing from numpy (to support both trapz for numpy < 2 and trapezoid for numpy >= 2), I opted to use the scipy function.  That required increasing our minimum version from 1.5 to 1.6.

Use scipy.integrate.trapezoid instead of np.trapz

Thumbs up here. We probably used np.trapz when scipy was optional.

Using https://github.com/pvlib/pvlib-python/releases/tag/v0.11.1, I just got to update NumPy to version 2.0.2 for a prototype project that also uses pvlib. And I got :
..
    import pvlib
  File "/.venv/lib/python3.11/site-packages/pvlib/__init__.py", line 3, in <module>
    from pvlib import (  # noqa: F401
  File "/.venv/lib/python3.11/site-packages/pvlib/clearsky.py", line 13, in <module>
    import h5py
  File "/.venv/lib/python3.11/site-packages/h5py/__init__.py", line 25, in <module>
    from . import _errors
  File "h5py/_errors.pyx", line 1, in init h5py._errors
ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject

Is this new ?

Hi @NikosAlexandris , can you post which versions are you using and the full traceback? My first suspicion is a problem with the h5py version, maybe you can try to update it.

Hi @NikosAlexandris , can you post which versions are you using and the full traceback? My first suspicion is a problem with the h5py version, maybe you can try to update it.

I depend currently, I realised, on NumPy 1.6.5 and need to upgrade soonish. So I reverted back to it for now.  But I think h5py was indeed the problem in first place (then NumPy < 2 was my second blocker). If I get back to this problem, I'll report back here.


ambient: prefer dual stack for waypoints where available

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
1ea23f903963a195877844536ab0bbc2904c4ee7
link
true
/test integ-basic-arm64

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
1ea23f903963a195877844536ab0bbc2904c4ee7
link
true
/test integ-basic-arm64

gencheck_istio
1ea23f903963a195877844536ab0bbc2904c4ee7
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
8d308d0c34f06b64001fcdea9bf953c14056f312
link
unknown
/test unit-tests-arm64

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

/retest
On Thu, Jul 11, 2024, 12:09 PM Istio Automation @.***>
wrote:

@howardjohn https://github.com/howardjohn: The following test failed,
say /retest to rerun all failed tests or /retest-required to rerun all
mandatory failed tests:
Test name Commit Details Required Rerun command
unit-tests-arm64_istio 8d308d0
https://github.com/istio/istio/commit/8d308d0c34f06b64001fcdea9bf953c14056f312
link
https://prow.istio.io/view/gs/istio-prow/pr-logs/pull/istio_istio/51915/unit-tests-arm64_istio/1811431679693164544
unknown /test unit-tests-arm64
Instructions for interacting with me using PR comments are available here
https://git.k8s.io/community/contributors/guide/pull-requests.md. If
you have questions or suggestions related to my behavior, please file an
issue against the kubernetes-sigs/prow
https://github.com/kubernetes-sigs/prow/issues/new?title=Prow issue:
repository. I understand the commands that are listed here
https://go.k8s.io/bot-commands.
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/51915#issuecomment-2223335385, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXJWIAVM5KURIXRFDN3ZL2U23AVCNFSM6AAAAABKNTZX2SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRTGMZTKMZYGU
.
You are receiving this because you were mentioned.Message ID:
@.***>


No Module Named Alex

Hi! I'm trying to test Alex in doing one of the sample tasks. I have the simulator running (and am passing the simulator check).
I'm trying to run the sample scripts under the Alex folder.
However, in this, the agent doesn't appear to be moving (their position vector stays the same). Is there something else I need to do to get Alex to act in the world?
Upon closer look at the code, I'm getting this error when I try to run any of the scripts in this folder:
'''
Traceback (most recent call last):
File "/Users/x/Code/multi_agent/MineLand/scripts/alex/test.py", line 94, in
main()
File "/Users/x/Code/multi_agent/MineLand/scripts/alex/test.py", line 75, in main
action = alex.run(obs[0], code_info[0], done, task_info, verbose=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/alex_agent.py", line 142, in run
self.perceive(obs, plan_is_success, critic_info, code_info, vision = True, verbose=verbose)
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/alex_agent.py", line 59, in perceive
self.memory_library.perceive(obs, plan_is_success, critic_info, code_info, vision=vision, verbose=verbose)
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/brain/memory_library.py", line 135, in perceive
self.add_env(tick, day, time, obs, vision=vision)
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/brain/memory_library.py", line 266, in add_env
view_summary = self.viewer.summary(obs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/brain/viewer.py", line 48, in summary
system_message = self.render_system_message()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/brain/viewer.py", line 24, in render_system_message
prompt = load_prompt("vision_summary")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/Code/multi_agent/MineLand/mineland/alex/prompt_template/init.py", line 4, in load_prompt
package_path = pkg_resources.resource_filename("alex", "")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/miniconda3/envs/mineland/lib/python3.11/site-packages/pkg_resources/init.py", line 1181, in resource_filename
return get_provider(package_or_requirement).get_resource_filename(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/x/miniconda3/envs/mineland/lib/python3.11/site-packages/pkg_resources/init.py", line 388, in get_provider
import(moduleOrReq)
ModuleNotFoundError: No module named 'Alex'
''''
How might I address this?

Thanks for trying MineLand.
Previous quesion: Why isn't the agent in the minimum example moving?
MineLand Simulator and Alex are two distinct components of our project.
MineLand Simulator is a set of APIs and an environment similar to Gymnasium, while Alex is a VLM agent built on MineLand
If you only instantiated MineLand, it is expected that the agent doesn't appear to be moving. (Note that actions = mineland.Action.no_op(AGENT_COUNT) , where no_op  stands for no operations)
To see the agent in action, you can write high-level action by yourself or call low-level action space. Also, you can instantiate Alex using mineland.Alex(.....) and get actions from the Alex Instance.
How to instantiate Alex?
The codebase you using is outdated.
Please run git pull to update to the latest codebase. (You may need to run git add and git commit to save your local changes first.)
In the latest codebase, we provide more example of MineLand.
Currently, we do not have an example of the Alex Agent in the latest codebase.
We'll provide an example of Alex later today. 😄

Alex Example

Awesome, thank you so much!


[Question] I cannot add a MonoScript that is not in the file I am editing through another file that contains that MonoScript

Hi! I want to add a MonoScript to the file I'm editing but unfortunately its definition doesn't exist in this file, I've tried every other file containing that MonoScript to try to add it to the file I'm editing but it fails. error and not working.
I tried adding like this:
public AssetContainer addMonoBehaviour(string mName, AssetPPtr assetPPtr, AssetTypeValueField newBaseField, long newPathId)
        {
            var monoBehaviourClassId = (int)AssetClassID.MonoBehaviour;
            mainInst.file.Metadata.ScriptTypes.Add(assetPPtr);
            var scriptIndex = mainInst.file.Metadata.ScriptTypes.Count - 1;
            //
            newBaseField["m_GameObject.m_FileID"].AsInt = 0;
            newBaseField["m_GameObject.m_PathID"].AsLong = 0;
            newBaseField["m_Enabled"].AsByte = 1;
            newBaseField["m_Script.m_FileID"].AsInt = assetPPtr.FileId;
            newBaseField["m_Script.m_PathID"].AsLong = assetPPtr.PathId;
            newBaseField["m_Name"].AsString = mName;
            //
            var classDatabase = assetsManager.LoadClassDatabaseFromPackage(mainInst.file.Metadata.UnityVersion);
            var afile = mainInst.file;
            var newInfo = AssetFileInfo.Create(afile, newPathId, monoBehaviourClassId, (ushort)scriptIndex, classDatabase, false);
            newInfo.SetNewData(newBaseField);
            mainInst.file.Metadata.AddAssetInfo(newInfo);
            return new AssetContainer(newInfo, mainInst, newBaseField);
        }

The two parameters assetsPPtr and newBaseField were taken by me from another file containing the MonoScript I needed.
As a result, when I finished editing the file and tested it again with AssetStudio, I received the error as shown below:

newBaseField needs to have the rest of the MonoBehaviour fields. You don't show how it's created, but usually you add to ScriptTypes first, then call manager.CreateValueBaseField which will pick up the new script type in ScriptTypes and include the extra MonoBehaviour fields. Then you can fill out those extra fields as you need.

This is how I created the newBaseField, it was created through another file then I called the addMonoBehaviour function from the file I was editing and passed it in the newBaseField parameter, the newBaseField was created as I expected but it didn't work when I finish editing.
            var scriptTypeInfos = AssetHelper.GetAssetsFileScriptInfos(assetsManager, mainInst);
            var scriptIndex = scriptTypeInfos.Values.ToList().FindIndex(s => s.ClassName == monoType.ToString());
	    var ttType = mainInst.file.Metadata.FindTypeTreeTypeByScriptIndex((ushort)scriptIndex);
            var tempField = new AssetTypeTemplateField();
            tempField.FromTypeTree(ttType);
            var newBaseField = ValueBuilder.DefaultValueFieldFromTemplate(tempField);

If I did anything wrong, please help me create a sample code about this problem. Thank you and have a happy new year.


Add new Project : Temperature converter

Description
Hello sir,
I have made a new PR regarding Temperature Converter which I have made of HTML , CSS & JS .
Related Issue

Closes #43

Type of Change
Please check the type of change that applies to your PR:

[ ]  Bug Fix
[ ] New Feature
[ ] Enhancement (improvements, refactoring, etc.)
[ ] Documentation Update
[X] Other (please specify): New Project

Checklist
Before submitting your pull request, please ensure you've completed the following:

[x] I have read the CONTRIBUTING.md document and followed the contribution guidelines.
[x] My code follows the project's coding standards.
[x] I have added or updated the necessary documentation (if applicable).
[x] My changes do not introduce any new linting or test errors.
[x] All new and existing tests have passed.
[x] I have reviewed my code to ensure its quality.

Screenshots (if applicable)

Additional Information
Please take review of my PR & please (if possible) merge it under APERTRE'24.
Author's Note

@debarshee2004 Please take review of my PR & please (if possible) merge it under APERTRE'24.

Best of Luck and Happy Coding.


DOM HTMLFormElement relationship should be nullable type

TypeScript Version:  2.3.2
In lib.dom.d.ts, form-associated elements (HTMLInputelement, HTMLInputelement, etc...) have .form field as NOT-nullable, but it could be null when it is not associated to any form element.
Reference: WHATWG HTML Living Standard

A form-associated element can have a relationship with a form element, which is called the element's form owner. If a form-associated element is not associated with a form element, its form owner is said to be null.

Expected behavior:
readonly form: HTMLFormElement | null;

Actual behavior:
readonly form: HTMLFormElement;

Hi I just opened a PR that I think should fix the above issue here: https://github.com/Microsoft/TSJS-lib-generator/pull/281 . Let me know if there is anything I should change, thanks so much!


Changes are not logged when deleting or changing status from the entry list.

If you bulk-change statuses (with the checkmarks on the entry list), or delete an entry the same way, the changes are not logged.

Indeed. This is because Craft doesn't fire events on these operations, so I can't hook into it...

Bummer!
Do you know if there is an existing request on http://feedback.craftcms.com/?
I briefly looked but couldn't find anything...could even be considered a bug vs. a feature.

Made one: http://feedback.craftcms.com/forums/285221-feature-requests/suggestions/12350388-raise-events-when-bulk-editing-entry-list-checkbo

Thanks for requesting! I'll keep an eye open on its eventual appearance.

Craft 2.5 fires an onPerformAction event on bulk actions
https://craftcms.com/docs/plugins/events-reference#elements-onPerformAction

Ah didn't know that - interesting!

Great news!

@boboldehampsink Any updates on if this is being added to the plugin?


Crowd working-platform worker amount

We have the following problem:
Lets assume we publish an experiment with 1 answer and 1 rating.
If now in the first second 100 workers access the experiment, 100 answers get iussed. This is bad and should not be possible, but there are no easy solutions.
We can not reject the workers on mturk:
 If a Requester is not reasonably satisfied with the Services, the Requester may reject the Services. (https://requester.mturk.com/policies/conditionsofuse) I don't think that covers this use case, since we don't collect work.
We cannot give 1 answer and 99 ratings since the answer is not existing yet.
Pybossa should not be a problem, since there is no payment-system (and a quick look on crowd crafting did not indicate a problem, since nobody expects a payment there).
The only possible solution is that we publish for the minimum amount of workers able to complete the task and the increase the limit.

@marcelhollerbach @phimonk

there is even no solution on mturk, I can pass a maximum number of assignments, the doc for them says
The number of times the HIT can be accepted and completed before the HIT becomes unavailable.

I am not sure if this means that 1 worker acceptes and now the HIT is not visible to anyone.
If we are having 99 acceptest before one worker is completing the hit each one can sent in there answers.

Okay after a livetest, the doc is wrong, which behaviour should we rely on ?

i thing the doc is just very vague and tries to describe the behaviour

yes, but thats a problem, since its the only way to know if this behaviour is a sideeffect or intended

it is intended behaviour, i asked the mturk support: In your example, if you limit a HIT to 1 Worker/unique response you will be creating a HIT with 1 assignment for only 1 Worker to complete, no other Workers will have the option to accept it.

sweet. still wondering why they dont clarigy such things in the doc...

will this happen or not? If this will happen i can force the worker for submission of work in the ws

For pybossa there is no way to control how many workers request a task from the ws. So your scenario is not unlikely to happen.

@phimonk not everything is about pybossa ;) this is about mTurk.

pybossa, pybossa! :trollface:

@LeanderK can you rephrase, I dont understand what you mean ?

Has this been solved?

No.


Typo fix line 13

Changed the word "ocupará" to "ocupar" because of context in the portuguese translation.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Closes #XXXXX

Hi @thecodingaviator , in the "Guidelines for Contributing" there is a specific part about correcting a typo, which I quote below:

I found a typo, should I report an issue before I can make a pull request?
For typos and other wording changes, you can directly open pull requests without first creating an issue. Issues are more for discussing larger problems associated with code or structural aspects of the curriculum.

So, I found the typo and opened a PR like the Guidelines says. I know it's just a word, but it's wrong nonetheless. Will it just stay wrong then?

I had closed this for low-effort however I'll cc @raisedadead as I think he is better qualified to answer that question.

Hi @LeoGuilherme thanks for taking the time to make the pull-request.
And while you are correct about the guidelines, we are getting a lot of spam and low effort pull-requests during hacktoberfest. This would not have been an issue any other time of the year. I hope you understand our intention to discourage spam and not contributions.
We will gladly accept the change if you can incorporate this as a part of a larger set of changes? I am pretty sure there are lot of things that need updating in the translation areas for portuguese?
I am unmarking this as invalid in good faith. But we encourage you to make a fresh PR as well and get it peer reviewed from another speaker.
Happy contributing.

@raisedadead Ah I understand now, thanks for explaining it. This typo was something that jumped to my eyes as soon as I read the page, but I'll review the entire page again to see if there's more things that need to be corrected and then open a new PR.
Thanks @thecodingaviator and @raisedadead .


Hubconnection Disposables

Added ILoggerFactory and CancellationTokenSource to DisposeAsync
However ILoggerFactory should not be disposed if Hubconnectionbuilder was not used to instantiate Hubconnection.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Perhaps a cleaner solution to ILoggerFactory dispose is to mode the Dispose method to HubConnectionBuilder instead. HubConnectionBuilder shall need to implement IDisposable interface and users shall need to be careful about when they dispose it.

The test failure is legitimate - did you run build.cmd locally?
HubConnectionBuilder is only a convenience class that does not have to be used to create hub connections and as such can't be used to Dispose anything.

No did not run build.cmd, until now. It states : "Build Succeeded: 0 Warnings, 0 Errors". Perhaps I should update this PR now that I have run build.cmd?
As for where to put the ILoggerFactory dispose the case for disposing it in HubConnection is where it has been instanciated via dependency inject or via HubConnectionBuilder. Otherwise it should not be disposed (i.e. a manual instantiation of HubConnection passing through an ILoggerFactory instance that is used elswhere in code). The solution proposed here takes care of the former and will cause issues with the  latter.

Hey @MarkOMeara123 , apologies that this seems to have been left behind a bit. I think we should take the CTS Dispose change, but I'm much less confident in disposing the ILoggerFactory. The general rule-of-thumb is to not dispose things that are provided to you in the constructor, so I don't think we should do that. As you suggest, we could look at doing that in HubConnectionBuilder, but again, only in the case where we create the LoggerFactory on your behalf. If a logger factory is passed in we should not dispose it.
If you want to rebase this and make some updates, I'd be happy to take a look at it. If you don't have time, that's OK too, we can close this and track it in an issue on our backlog.

We need to revisit this design. This is problematic but @anurse 's point stands, we need to know if we created the logger factory in order to properly dispose it.


hello.  scenario Valkyrie

### Description of Problem or Question
Hello. Sorry in advance for misunderstanding the script posting procedures. Hope the download link works. The script is only in Russian. Thank you.
valkyrie-windows-2.5.6 Valkyrie Version
[Quest]
format=18
hidden=False
type=MoM
defaultlanguage=Russian
defaultmusicon=True
packs=BtT
minhero=3
difficulty=1
lengthmin=3
lengthmax=4
image=3.jpg
version=E1-8A-53-DB-2F-E5-F5-6C-B2-1B-80-9F-C9-91-E5-C8-57-65-21-EA-00-AA-F9-ED-EF-AC-E4-29-1B-52-73-7D
name.Russian=TOTsam
synopsys.Russian=Поездка к старому другу. Игра на 2ух сыщиков скорее всего невозможна. Email<EMAIL_ADDRESS>description.Russian=Лёгкая поездка в плохую погоду к старому другу.
authors.Russian=Сердитый Кекс (special thanks Hellion end Alexander).
authors_short.Russian=Сердитый Кекс

Hi @CepDuTbIuKekC
You can find the guide in english here, there is a section on publishing a scenario on page - 224:
https://docs.google.com/document/d/1Gi5gTwKkw84Px0Lvk-bJ3Aml_vF3ZoljjB6a8FjWGt8/
You will need to ensure that your scenario has a name that does not contain spaces or special characters, I am not sure if Cyrillic characters are recognised so if you could use latin script (US/English keyboard format) and avoid any special characters or space in the name.

You can then open the scenario in the editor and use the "Tools" to "Create a Package"

I would recommend using GitHub to publish your scenario., You can sign up for a free account and create a (public) repository to host your scenario on the internet. This will ensure that you have full control for your intellectual property when it pertains to publishing within Valkyrie.
The guide explains the process of uploading a scenario to GitHub.
If you need any assistance please reach out here.

Thank you. I will take advantage GitHub Desktop. I gave the quest to test another person and I will wait for his feedback. Thanks for the link to the instructions. Apparently a Russian enthusiast translated part of the instructions and I read the translation.

Thank you. I will take advantage GitHub Desktop. I gave the quest to test another person and I will wait for his feedback. Thanks for the link to the instructions. Apparently a Russian enthusiast translated part of the instructions and I read the translation.

Don't forget to make your repository public. Otherwise, it won't be added to the Valkyrie scenario list.

@CepDuTbIuKekC do you need help with the scenario uploading?

Hello. I tried adding the repository. Perhaps I did not follow how to make the folder with the quest public. I must have missed something in my tutorial. It says just make a public repository

@CepDuTbIuKekC, I'm not sure how to do it using Github app, but through the website is quite simple (follow the numbers and clic on the marked option):

Just turn the repository from private to public and save the changes.

Maybe @scrubbless could help you with the app.

Спасибо вам за помощь. Действительно через сайт получилось изменить. Если сейчас всё в порядке, то значит я скоро увижу квест в списке Valkyrie?

Thank you for your help. Indeed, through the site it turned out to change. If everything is in order now, then I will soon see the quest in the Valkyrie list?

I'm afraid that I will never succeed in a literary English text. Native language is Russian. But I hope that I will please at least the Russian fans of MOM. Thank you.

Thank you for your help. Indeed, through the site it turned out to change. If everything is in order now, then I will soon see the quest in the Valkyrie list?

The repository is now visible, but the files are not there. You must "push" them up to the repository. Via web is quite easy: open the repository, drag and drop the files onto it, and send the changes.
After that, create a new issue here fullfilling the form for a new scenario.
A pity the scenario is only in Russian. I hope someone could translate it at least to English.

Спасибо. Всё путаюсь между приложением и сайтом. помоему добавил! если проверите будет хорошо.

Thank you. I'm confused between the app and the website. mine added! if you check it will be good.

Looks good to me I'll publish

Thank you. I am very happy.

Unfortunately there appears to be an issue with publishing the scenario.
The scripts that update the lists are throwing an error. I am going to remove this scenario for now whole I investigate.
@BenRQ  this scenario is throwing an error
"ALERT: Invalid content in EditoruTOTsam" when the grabber runs. I'll investigate the cause, however if you get here before me any chance you can take a look at why is failing?

Если возникла проблема с запуском сценария то я могу заново загрузить файлы. У меня на компьютере сценарий запускается, я его тестировал много раз.

If there is a problem with running the script, then I can re-upload the files. The script runs on my computer, I tested it many times.

I threw two files "EditoruTOTsamNEW" they are exactly the same but I hope they start. Or is the content itself the problem?

I don't think it's the scenario, could be a bug in the scenario explorer scripts, it is what's failing and it runs seperately from Valkyrie

What can I do? I'm not good at programming. valkyrie 2.5.6 first experience (I really liked it by the way) I love the MOM universe. does the script run offline?

It's s Google script, only @BenRQ knows it. There's not anything you can do for now.

OK it's working now. Sorry for the long response time.

@scrubbless  if there is a doubt in the URL to take, here is a way to get it.
Open the ini file of the scenario, and click 'Raw'.
Then copy paste URL of the file, and just remove the file name.

Thank you very much! I am very happy.


CI: Drop unused Travis sudo: false directive

This PR removes the no-longer-used Travis setting sudo: false. See more at the Travis blog.

@olleolleolle please merge master to see if the specs pass now

@klobuczek Done!

Codecov Report

Merging #1568 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1568   +/-   ##
=======================================
  Coverage   93.24%   93.24%
=======================================
  Files         105      105
  Lines        4779     4779
=======================================
  Hits         4456     4456
  Misses        323      323

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 25d9da4...7e3cfa1. Read the comment docs.


🐞 normal.css max-width causes many problems

Description
Introduced in a8171cfbbc95cb03b5be47bb7f9f09a69e90a47a  max-width: 100%; have very big impact on cases when elements are expected to overflow.
Maybe such rules can be put in new package called master-css-sensible-defaults.css?
Reproduction
No response
System Informations
No response

In practice, img and video may be expected to be limited to a maximum width of 100%. So, we prefer that you batch cancel the full width of the target elements through the selector:
<div class="max-w:none_:where(img)">

I was not aware of that selector in master-css, big thanks!

I was not aware of that selector in master-css, big thanks!

Because the document is not complete yet 😅 https://beta.css.master.co/docs/state-selectors

@fightingdreamer I've improved the usage instructions.
https://beta.css.master.co/docs/global-styles#responsive-friendly-media-elements

Great!
The lack of documentation is an issue when convincing colleagues to switch from tailwind-css / uno-css.

@fightingdreamer This is undeniable, and we will improve all documents in RC. Previously, we were still making breakthroughs in R&D and architecture, and the documents have not yet been finalized.
Thx for your support!


tf.reduce_* called on the result of tf.TensorArray.concat of unknown rank return corrupted Tensor

System information

TensorFlow version (use command below): 2.0
Python version: 3

Describe the current behavior
See the reproducing code. When tf.reduce_mean is called on the output of a TensorArray.concat which had a fully dynamic shape (including rank), it produces a Tensor of scalar shape, but whose value is a 1-element vector.
Describe the expected behavior
The resulting Tensor should have a scalar value, consistent with its static shape.
Code to reproduce the issue
Note that the bug does not reproduce if the unknown-shape Tensor is passed directly to reduce_mean, which would suggest some interaction between the two.
import numpy as np

def unknown_shape_constant(val):
  # This is one way to create tensors of unknown shape.
  return tf.py_function(lambda: np.array(val), (), tf.int32)

@tf.function
def reduce_mean_bug():
  arr = tf.TensorArray(tf.int32, size=1, dynamic_size=True)
  arr = arr.write(0, unknown_shape_constant([[1], [3]]))
  c = arr.concat()
  m1 = tf.reduce_mean(c)

  arr = tf.TensorArray(tf.int32, size=1, dynamic_size=True)
  arr = arr.write(0, tf.constant([[1], [3]]))
  c = arr.concat()
  m2 = tf.reduce_mean(c)

  return m1, m2

m1, m2 = reduce_mean_bug()
assert m1.shape == m2.shape  # Fails

@jaingaurav could you triage the issue?

@morgangiraud pointed out that the issue manifests for tf.reduce_sum as well, and possibly other reduce_ ops.

This issue is fixed in Tf-nightly ==2.2.0.dev20200312 version.
Please find the gist here. Can we close this issue. Thanks!

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?


Remove mockMatchingEngine from matching engine test suite

This is causing test flakiness due to background goroutines

Coverage decreased (-0.02%) to 67.22% when pulling 91678b3ab2b4bb398545b7976aa6a178e3d0bb90 on tamer-eldeeb:matching_test_failing into 9ccd575b07058d75de1dc33a08a0130eb7934830 on uber:master.


How do i filter datatable queries from my controller, and how do i return a collection or array to my view from datatable controller

How do i filter datatable queries from my controller, and how do i return a collection or array to my view from datatable controller
I have 2 issues.
No 1: I am trying to filter my datatable queries
eg.
When a class group is selected only record to that class show be displayed, if no class group  is selected, all the class list should be displayed.
No 2: I want to show all teachers in the database to the view in yajra table.
Here is my sample code

My controller

    public function getSubject(SubjectDataTable $dataTable){
        $allTeachers = (new TeacherService())->getSubjectTeacher();
        $classID = 10;
        return $dataTable->render('staffAuth.classes.subjects', compact(['allTeachers','classID']));
    }

My Datatable Controller

    public function dataTable(QueryBuilder $query): EloquentDataTable
    {
        return (new EloquentDataTable($query))
            ->addColumn('class', 'components.subject-class')
            ->addColumn('subject_teacher', 'components.subject-teachers')  i want to be able to access  $allTeachers here in the view
            ->addColumn('action', 'components.subject-edit')
            ->escapeColumns([])
            ->setRowId('id');
    }
    public function query(Subject $model): QueryBuilder
    {
        if(!empty($this->classID)){
            return $model->newQuery()->where('status', 'active')->where('class_id', $this->classID);
        }
        return $model->newQuery()->where('status', 'active');
    }

Please I need Help @yajra

I think you need to pass the classID using with:
    public function getSubject(SubjectDataTable $dataTable){
        $allTeachers = (new TeacherService())->getSubjectTeacher();
        $classID = 10;
        return $dataTable->with('classID', $classID)
            ->render('staffAuth.classes.subjects', compact(['allTeachers','classID']));
    }

I think you need to pass the classID using with:
// Controller
    public function getSubject(SubjectDataTable $dataTable){
        $allTeachers = (new TeacherService())->getSubjectTeacher();
        $classID = 10;

        return $dataTable->with('classID', $classID)
            ->render('staffAuth.classes.subjects', compact(['allTeachers','classID']));
    }

// DataTable
    public function query(Subject $model): QueryBuilder
    {
        return $model->newQuery()
                ->where('status', 'active')
                ->when($this->classID, function ($query, $classID) {
                    return $query->where('class_id', $classID);
                });
    }

This works really fine,
Thanks alot,

Please how do i solve this.
I want to be able to get $allTeachers in the components.subject-teachers component here.
Please how can i do this.
` public function dataTable(QueryBuilder $query): EloquentDataTable
{
    return (new EloquentDataTable($query))
        ->addColumn('class', 'components.subject-class')
        ->addColumn('subject_teacher', 'components.subject-teachers')  i want to be able to access  $allTeachers here in the view
        ->addColumn('action', 'components.subject-edit')
        ->escapeColumns([])
        ->setRowId('id');
}
public function query(Subject $model): QueryBuilder
{
    if(!empty($this->classID)){
        return $model->newQuery()->where('status', 'active')->where('class_id', $this->classID);
    }
    return $model->newQuery()->where('status', 'active');
}`

@yajra

Something like below:
Controller:
->with('allTeachers', $allTeachers)

DataTable:
->addColumn('subject_teacher', function($model) {
  return view('components.subject-teacher', ['allTeachers' => $this->allTeachers, 'model' => $model]);
})

Something like below:
Controller:
->with('allTeachers', $allTeachers)

DataTable:
->addColumn('subject_teacher', function($model) {
  return view('components.subject-teacher', ['allTeachers' => $this->allTeachers, 'model' => $model]);
})

Thanks you very much, this works well,
I really appreciate your swift response.

Should i create a new issue for this?
Also this is my last question, And thanks for always replying.
I want to be able to number the ID column or SN by loop, not by the table column id value.

I want the ID to be numbered 1, 2 3 4 5 6 7 8 9 etc. instead of getting the values from the database which omits some numbers whenever an ID value is deleted


Use workloadCertTTL instead SelfSignedCACertTTL

Signed-off-by: clyang82<EMAIL_ADDRESS>Fixes https://github.com/istio/istio/issues/21056

If this is really for #21056 then we should cherry-pick to 1.5.

This PR is not a right fix to the issue https://github.com/istio/istio/issues/21056 because the Pilot certificate should be SelfSignedCACertTTL.
The right fix is to correctly set the max cert TTL, which is in https://github.com/istio/istio/pull/21246.


Annotation Tool

Thanks for the wonderful work. Are you planning to release the Annotation Tool? Thanks!

Same Question

Same Question

There's this: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2016/EECS-2016-193.html

@relbaz That tool is not created by our team and it is not used for labeling our data.
All, we have released our tooling system at http://www.scalabel.ai. Please check the website for new features and demos. The source code is at https://github.com/ucbdrive/scalabel.


OAuth Sign In UX is confusing

Screenshot

Description
The OAuth Sign In UX is confusing:

It is not clear to me that I have to click on one of the providers in order to continue
When I click on "REGISTER" or "SIGN IN" without clicking on a provider first, I don't get any visual feedback
The visual selected state of the provider icon is not recognizable as selected, especially if there is only one provider

@NikolaiGulatz thanks for suggesting! this is actually the first time i see this modal. We are currently short in Design support. If you have a mockup ready to start, can you share?

We only use one provider, so we completely bypass that page. It's actually a flask thing, not superset. This is the location in the (old, maybe v0.37) docker container.
/usr/local/lib/python3.6/site-packages/flask_appbuilder/templates/appbuilder/general/security/login_oauth.html

!-- extend base layout -->
{% extends "appbuilder/base.html" %}

{% block content %}

<script type="text/javascript">

    var baseLoginUrl = "{{appbuilder.get_url_for_login}}";
    var baseRegisterUrl = "{{appbuilder.get_url_for_login}}";
    var next = "?next={{request.args.get('next', '')}}"

    var currentSelection = "";

    function set_openid(pr) {
        $('.provider-select').removeClass('fa-black');
        $('#' + pr).addClass('fa-black');
        currentSelection = pr;
    }

    function signin() {
        if (currentSelection != "") {
            window.location.href = baseLoginUrl + currentSelection + next;
        }
    }

    function register() {
        if (currentSelection != "") {
            window.location.href = baseRegisterUrl + currentSelection + '/register' + next;
        }
    }

    set_openid("{{ providers[0].name }}");
    signin();

</script>

{% endblock %}

Our edits are just the last two lines of JS:
    set_openid("{{ providers[0].name }}");
    signin();

which automatically selects the first provider and runs the signin function. If you don't want to auto sign in, just use the set_openid line.

It sure looks like this was resolved by the linked PR. Closing.


How to simulate the performance with different types of GPU cards ？

Can astra-sim simulate the impact of GPUs with different computing capabilities/HBM bandwidth/HBM capacity under the same distributed network/scheduling strategy?I haven't seen any input into the capabilities of the GPU itself.
If it is not currently supported, are there plans to consider supporting it?
Thank you so much

Astra-Sim takes the workload as input, the workload input captures the data you are looking for.
The workload data is either generated from real traces (Pytorch) or generated traces from applications like Scale-Sim (https://scalesim-project.github.io/)

Hi @ysnouyang , ASTRA-sim currently supports two Compute simulators as its Compute modeling backend, from which it defines/takes GPU specific numbers (cycles it takes to compute a specific node, etc.) .
Please refer to documentation here: https://astra-sim.github.io/astra-sim-docs/compute-backend/compute-backend.html
We are also trying to add a ComputeAPI which will allow users to define their own Compute calculating operations ( #185 ). Thank you!


Test id option

@haakonnessjoen could you check the code please, I think its ok but bytes/decimal/hex stuff is always better to check by you ;-)
I've added an ID option to the config fields, and updated the command structure. It feels a bit devious

@JeffreyDavidsz I have tested all the functions today against a Lumens VC-A50PN on multiple camera ID's and all work as expected with the exception of preset recall with speed and tally. I have emailed Lumens to check that they have implemented the full visca protocol for these two items and am awaiting a response.
It would be really good to have access to the variable speed zoom functions too

Thanks for testing, let us know about the response for the extra actions/command

Got a response?

No nothing from them. Have a couple of other questions outstanding too.

On 24 Aug 2019, at 15:24, Jeffrey Davidsz<EMAIL_ADDRESS>wrote:
Got a response?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Is it possible to control sony brc-h700 in auto id addressing?
What's the mechanism attributing IDs to cameras?
I've testing all IDs without success....

I believe one of the first options means all of them, so id 0 or 1?

ID 8 I think controlled all the ID’s for Lumens cameras

On 19 Sep 2019, at 15:42, Jeffrey Davidsz<EMAIL_ADDRESS>wrote:
I believe one of the first options means all of them, so id 0 or 1?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/bitfocus/companion-module-sony-visca/issues/3?email_source=notifications&email_token=AM24LVKRR4QEH3XIYTJY7U3QKNXUPA5CNFSM4IKDHB6KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7DKRVY#issuecomment-533113047, or mute the thread https://github.com/notifications/unsubscribe-auth/AM24LVMS34253O7LPCUHR53QKNXUPANCNFSM4IKDHB6A.