Segmentation fault using xworkspaces module

I just installed Ubuntu 20.04 on my XPS13 with openbox and polybar get a segfault when i use xworkspaces module. I also have an old ASUS zenbook with the same config and it works well.
I use the example file where i add the module "xworkspaces"
[module/xworkspaces]
type = internal/xworkspaces

; Only show workspaces defined on the same output as the bar
;
; Useful if you want to show monitor specific workspaces
; on different bars
;
; Default: false
pin-workspaces = true

; Create click handler used to focus desktop
; Default: true
enable-click = false

; Create scroll handlers used to cycle desktops
; Default: true
enable-scroll = false

I only display this module

modules-left =
modules-center = xworkspaces
modules-right =

The output of  gdb -ex run -args polybar example --log=trace is as follows:
$ gdb -ex run -args polybar example --log=trace                                                                                130 ↵  [18:10:29]
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-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 polybar...
(No debugging symbols found in polybar)
Starting program: /usr/local/bin/polybar example --log=trace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
notice: Parsing config file: /home/keijy/.config/polybar/config
- config_parser: Parsing /home/keijy/.config/polybar/config
- config: Inheriting keys from "module/xbacklight" in "module/backlight-acpi"
* Created ipc channel at: /tmp/polybar_mqueue.7623
[New Thread 0x7ffff512d700 (LWP 7627)]
warn: No monitor specified, using "DP-1"
* Loaded monitor DP-1 (2560x1440+0+0)
* Bar geometry: 2560x35+0+0; Borders: 4,4,4,4
- bar: Attach X event sink
- bar: Attach signal receiver
- controller: Install signal handler
- controller: Setup user-defined modules
* Starting application
- controller: Main thread id = 1
* Starting module/xworkspaces
[New Thread 0x7ffff492c700 (LWP 7628)]
- module/xworkspaces: Thread id = 2
[New Thread 0x7fffeffff700 (LWP 7629)]
[Thread 0x7ffff492c700 (LWP 7628) exited]
* Eventqueue worker (thread-id=3)
* Entering event loop (thread-id=1)
- bar: Create renderer
- renderer: Get TrueColor visual
- renderer: Allocate colormap
- renderer: Allocate output window
- renderer: Allocate window pixmaps
- renderer: Allocate graphic contexts
- renderer: Allocate alignment blocks
- renderer: Allocate cairo components
- renderer: Load fonts
* Configured DPI = 96x96
notice: Loaded font "fixed:pixelsize=10" (name=DejaVu Sans, offset=1, file=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf)
notice: Loaded font "unifont:fontformat=truetype:size=8:antialias=false" (name=DejaVu Sans, offset=0, file=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf)
notice: Loaded font "siji:pixelsize=10" (name=siji, offset=1, file=/home/keijy/.local/share/fonts/siji.ttf)
* Bar window: 0x2e00002
- 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: Draw empty bar
- bar: Setup tray manager
- tray: Find systray selection atom for the default screen
* Activating tray manager
- tray: Create tray window
* Tray window: 0x2e00009
- tray: Restacking tray window
error: tray: Failed to put tray above 0x2e00002 in the stack (XCB_MATCH (8))
- bar: Set window WM_NAME / WM_CLASS
- tray: Set window WM_PROTOCOLS
- tray: Set window _NET_WM_WINDOW_TYPE
- tray: Set window _NET_WM_STATE
- tray: Set window _NET_WM_PID
- tray: Set window _NET_SYSTEM_TRAY_VISUAL
- tray: Set window _NET_SYSTEM_TRAY_ORIENTATION
- tray: Set _NET_SYSTEM_TRAY_COLORS to ff222222
- tray: Change selection owner to 0x2e00009
[New Thread 0x7fffef745700 (LWP 7630)]
- tray: visibility_change (state=0, activated=1, mapped=0, hidden=0)
* module/xworkspaces: Rebuilding cache

Thread 1 "polybar" received signal SIGSEGV, Segmentation fault.
0x00005555556aafe7 in polybar::modules::xworkspaces_module::rebuild_urgent_hints() ()

and thread apply all bt full after that :
(gdb) thread apply all bt full

Thread 5 (Thread 0x7fffef745700 (LWP 7630)):
#0  0x00007ffff72203bf in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7fffef7449e0, rem=0x7fffef7449e0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
        r = <optimized out>
#1  0x00007ffff7226047 in __GI___nanosleep (requested_time=<optimized out>, remaining=<optimized out>) at nanosleep.c:27
        ret = <optimized out>
#2  0x00005555556e3ee5 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<polybar::tray_manager::notify_clients_delayed()::{lambda()#1}> > >::_M_run() ()
No symbol table info available.
#3  0x00007ffff7595d84 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#4  0x00007ffff733b609 in start_thread (arg=<optimized out>) at pthread_create.c:477
        ret = <optimized out>
        pd = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737210767104,<PHONE_NUMBER>107794361,<PHONE_NUMBER>12830,<PHONE_NUMBER>12831,<PHONE_NUMBER>12832,<PHONE_NUMBER>64032, -7910396044990220359, -7910414163634948167}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#5  0x00007ffff7262293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Thread 4 (Thread 0x7fffeffff700 (LWP 7629)):
#0  __lll_lock_wait (futex=futex@entry=0x5555558389a8, private=0) at lowlevellock.c:52
        __ret = <optimized out>
#1  0x00007ffff733e0a3 in __GI___pthread_mutex_lock (mutex=0x5555558389a8) at ../nptl/pthread_mutex_lock.c:80
        __futex = 0x5555558389a8
        type = <optimized out>
        __PRETTY_FUNCTION__ = "__pthread_mutex_lock"
        id = <optimized out>
#2  0x00005555556a965c in polybar::modules::xworkspaces_module::get_output[abi:cxx11]() ()
No symbol table info available.
#3  0x00005555556b17f8 in polybar::modules::module<polybar::modules::xworkspaces_module>::contents[abi:cxx11]() ()
No symbol table info available.
#4  0x00005555555fe30f in polybar::controller::process_update(bool) ()
No symbol table info available.
#5  0x000055555560a3dc in polybar::controller::process_eventqueue() ()
No symbol table info available.
#6  0x00007ffff7595d84 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#7  0x00007ffff733b609 in start_thread (arg=<optimized out>) at pthread_create.c:477
        ret = <optimized out>
        pd = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737219917568,<PHONE_NUMBER>107794361,<PHONE_NUMBER>42558,<PHONE_NUMBER>42559,<PHONE_NUMBER>42560,<PHONE_NUMBER>14496, -7910395028156713031, -7910414163634948167}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#8  0x00007ffff7262293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Thread 2 (Thread 0x7ffff512d700 (LWP 7627)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55555581ea58) at ../sysdeps/nptl/futex-internal.h:183
        __ret = -512
        oldtype = 0
        err = <optimized out>
        oldtype = <optimized out>
        err = <optimized out>
        __ret = <optimized out>
        resultvar = <optimized out>
        __arg4 = <optimized out>
        __arg3 = <optimized out>
        __arg2 = <optimized out>
        __arg1 = <optimized out>
        _a4 = <optimized out>
        _a3 = <optimized out>
        _a2 = <optimized out>
        _a1 = <optimized out>
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55555581ea08, cond=0x55555581ea30) at pthread_cond_wait.c:508
        spin = 0
        buffer = {__routine = 0x7ffff7342050 <__condvar_cleanup_waiting>, __arg = 0x7ffff512c930, __canceltype = 0, __prev = 0x0}
        cbuffer = {wseq = 0, cond = 0x55555581ea30, mutex = 0x55555581ea08, private = 0}
        err = <optimized out>
        g = 0
        flags = <optimized out>
        g1_start = <optimized out>
        signals = <optimized out>
        result = 0
--Type <RET> for more, q to quit, c to continue without paging--c
        wseq = 0
        seq = 0
        private = <optimized out>
        maxspin = <optimized out>
        err = <optimized out>
        result = <optimized out>
        wseq = <optimized out>
        g = <optimized out>
        seq = <optimized out>
        flags = <optimized out>
        private = <optimized out>
        signals = <optimized out>
        g1_start = <optimized out>
        spin = <optimized out>
        buffer = <optimized out>
        cbuffer = <optimized out>
        s = <optimized out>
#2  __pthread_cond_wait (cond=0x55555581ea30, mutex=0x55555581ea08) at pthread_cond_wait.c:638
No locals.
#3  0x00007ffff758fe50 in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#4  0x000055555562c340 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<polybar::taskqueue::taskqueue()::{lambda()#1}> > >::_M_run() ()
No symbol table info available.
#5  0x00007ffff7595d84 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#6  0x00007ffff733b609 in start_thread (arg=<optimized out>) at pthread_create.c:477
        ret = <optimized out>
        pd = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737305040640,<PHONE_NUMBER>107794361,<PHONE_NUMBER>42366,<PHONE_NUMBER>42367,<PHONE_NUMBER>42368,<PHONE_NUMBER>37568, -7910409501122758727, -7910414163634948167}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#7  0x00007ffff7262293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

Thread 1 (Thread 0x7ffff51310c0 (LWP 7623)):
#0  0x00005555556aafe7 in polybar::modules::xworkspaces_module::rebuild_urgent_hints() ()
No symbol table info available.
#1  0x00005555556ac08c in polybar::modules::xworkspaces_module::rebuild_clientlist() ()
No symbol table info available.
#2  0x00005555556ac36c in polybar::modules::xworkspaces_module::handle(xpp::x::event::property_notify<polybar::connection&> const&) ()
No symbol table info available.
#3  0x00005555556d9497 in bool xpp::x::event::dispatcher<polybar::connection&>::operator()<xpp::event::registry<polybar::connection&, xpp::randr::extension, xpp::composite::extension, xpp::xkb::extension>::handler>(xpp::event::registry<polybar::connection&, xpp::randr::extension, xpp::composite::extension, xpp::xkb::extension>::handler, std::shared_ptr<xcb_generic_event_t> const&) const ()
No symbol table info available.
#4  0x00005555556d48ad in polybar::connection::dispatch_event(std::shared_ptr<xcb_generic_event_t> const&) const ()
No symbol table info available.
#5  0x00005555555ff2ed in polybar::controller::read_events() ()
No symbol table info available.
#6  0x000055555560bfea in polybar::controller::run(bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) ()
No symbol table info available.
#7  0x00005555555b79a3 in main ()
No symbol table info available.

Thanks for reporting. I was able to reproduce it on openbox as well. I'll have a fix ready soon

Thanks for reporting. I was able to reproduce it on openbox as well. I'll have a fix ready soon

thx a lot <3

thx a lot <3


Tests pass when golang function name and comment for docs don't match

Noticed this in this PR #6661 . The function name was changed to Map but comment was unchanged - DeepCopyMap and all the tests and checks still passed. Manual review and comment was needed to change this. I would recommend to look into this and fix it. A normal golint usually catches this. Somehow our golangci-lint missed this

Filed an issue upstream: https://github.com/golangci/golangci-lint/issues/843

@bacongobbler should we disable the flag mentioned here https://github.com/golangci/golangci-lint/issues/843#issuecomment-553501108? Strangely golangci ignores this linting case by default

Closing, as this seems to be "intended behavior" in upstream right now. Feel free to re-open if there is some concrete fix we want to make to the Helm code base.


mozcdic-ut-place-names: 0-unstable-2024-09-03 -> 0-unstable-2024-10-12

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for mozcdic-ut-place-names is: Mozc UT Place Name Dictionary is a dictionary converted from the Japan Post's ZIP code data for Mozc.
meta.homepage for mozcdic-ut-place-names is: https://github.com/utuhiro78/mozcdic-ut-place-names
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0-unstable-2024-10-12 in filename of file in /nix/store/rmkawr8xf8bd4in4ixnzn344p5bb0s3h-mozcdic-ut-place-names-0-unstable-2024-10-12

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

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

ibus-engines.mozc-ut

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rmkawr8xf8bd4in4ixnzn344p5bb0s3h-mozcdic-ut-place-names-0-unstable-2024-10-12 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

Or:
nix build github:r-ryantm/nixpkgs/fc4c4be8046c94999bdd17be1b11168292e23203#mozcdic-ut-place-names

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rmkawr8xf8bd4in4ixnzn344p5bb0s3h-mozcdic-ut-place-names-0-unstable-2024-10-12
ls -la /nix/store/rmkawr8xf8bd4in4ixnzn344p5bb0s3h-mozcdic-ut-place-names-0-unstable-2024-10-12/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 3 packages built:

ibus-engines.mozc-ut
merge-ut-dictionaries
mozcdic-ut-place-names

Maintainer pings
cc @pineapplehunter for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge


Is there any known issue or am I doing something wrong?
Thanks in advance.

I have been having exactly the same problem. Any updates?

I tried this on my side with the same result.  I don't have an answer at this time.  Why not just run multiple insert statements or use a Prepared statement?

This way works:
INSERT INTO table VALUES (1, 1);
INSERT INTO table VALUES (2, 2);
...
COMMIT;

https://stackoverflow.com/questions/1609637/how-to-insert-multiple-rows-in-sqlite

@renatomotorline So far no. You could make it faster by using prepared statements like INSERT INTO table VALUES (?, ?).  This also prevents Out of memory issues because of making lot of strings. I think I made an example sketch in the repo if you need a sample.


feat(cmd): #281 Create upgrade command implementing go-oscal revise.

create: lula tools upgrade command

TODO:

[x] Write the output file
[x] handle messaging and warning for latest-version
[x] handle default version
[x] Remove the call to Revise and cater the method to lula using exposed utilities after go-oscal https://github.com/defenseunicorns/go-oscal/pull/161

So I tried this out on the tempo validation I've been working and it had the mildly annoying result of moving all the fields around and smashing down my formatted description field with all the payload data down into a single line... Wondering if that could be pretty printed out and ideally the backmatter could still be at end of the oscal file? I'm not entirely sure if the intended use of this is to create a file a user would continue to work with, so also maybe some documentation to go along with the intent/use case specified?

So I tried this out on the tempo validation I've been working and it had the mildly annoying result of moving all the fields around and smashing down my formatted description field with all the payload data down into a single line... Wondering if that could be pretty printed out and ideally the backmatter could still be at end of the oscal file? I'm not entirely sure if the intended use of this is to create a file a user would continue to work with, so also maybe some documentation to go along with the intent/use case specified?

I will create a story to look into it and see what I can do today. My understanding right now as to why, is that the golang map is unordered, and since json and yaml are considered to also be unordered maps, the marshalling and unmarshaling process doesn't guarantee order. I have some ideas on how to deal with that but will have to play a bit in go-oscal today and see what works out.
I think another thing that could be done is looking at yaml formatters and run one before output. (for the string issue).

Also I found the issue that @meganwolf0 was encountering. It has to do with trailing whitespace. It is a current issue with the go yaml implementation https://github.com/go-yaml/yaml/issues/880. But if all trailing spaces are removed it no longer serializes the block/folded strings into double quotes. And is something that could be brought into go-oscal where we trim all empty trailing spaces from lines.

@mike-winberry I need to think more about edge cases but otherwise that sounds like a great issue for go-OSCAL

@mike-winberry I need to think more about edge cases but otherwise that sounds like a great issue for go-OSCAL

https://github.com/defenseunicorns/go-oscal/issues/167
Have this open right now. With the resulting after removing whitespace.


Dockerize the API

Setup docker for the rails app

Resolved in PR https://github.com/fernandesleticia/merchantsdisbursementspayouts/pull/4


connections between local containers via host IP not shown

Scope fails to show connections between local containers when these connections go via the host IP.
e.g. launch scope and then two containers as follows

docker run --rm -p 1122:1122 -ti alpine nc -lkp 1122
docker run --rm -ti alpine nc <host-ip> 1122

and then look at the container topology in scope, which shows two containers with no connection between them.
By contrast, when the 2nd container is run on a different machine, with a scope probe running on that too, then the connection does show up.

Maybe related to https://github.com/weaveworks/scope/issues/1733 ?

Now that eBPF-tracking is the default, this does actually work. But not when eBPF-tracking is disabled with --probe.ebpf.connections=false.

The following patch makes the connection show up:
diff --git a/render/container.go b/render/container.go
index 81d34832..f2e5a6cb 100644
--- a/render/container.go
+++ b/render/container.go
@@ -44,10 +44,7 @@ var ContainerRenderer = MakeFilter(

 var mapEndpoint2IP = MakeMap(
        endpoint2IP,
-       // We drop endpoint nodes which were procspied, as they will be
-       // joined to containers through the process topology, and we don't
-       // want to double count edges.
-       MakeFilter(Complement(procspied), SelectEndpoint),
+       SelectEndpoint,
 )

 const originalNodeID = "original_node_id"

This suggests that the endpoints in question do not have a pid and hence aren't propagated to containers via the process topology.

Here's a condensed report:
{
  "Container": {
      "74dcf877a0fb807b25473485966df5463b1a8fcfc7e4a177911b3fee85411e72;<container>": { // client
          "docker_container_ips": ["<IP_ADDRESS>"],
          "docker_container_ips_with_scopes": ["xps;<IP_ADDRESS>"],
      },
      "fc2d0a43a340cf699d517bc9f59603f6e6a8f4bd4d7b227feab3ea7ea6c1511f;<container>": { // server
          "docker_container_ips": ["<IP_ADDRESS>"],
          "docker_container_ips_with_scopes": ["xps;<IP_ADDRESS>"],
          "docker_container_ports": ["<IP_ADDRESS>:1122->1122/tcp"]
      },
  },
  "Endpoint": {
      "xps;<IP_ADDRESS>;42293": {
          "adjacency": [";<IP_ADDRESS>;1122"],
          "edges": {";<IP_ADDRESS>;1122": {}},
          "conntracked": "true",
          "procspied": "true",
          "pid": "18162"
      }
      "xps;<IP_ADDRESS>;1122": {
          "adjacency": null,
          "edges": null,
          "conntracked": "true",
          "procspied": "true",
          "pid": "17571"
      },
      ";<IP_ADDRESS>;1122": {
          "adjacency": null,
          "edges": null,
          "conntracked": "true",
          "procspied": "true",
          "pid": "17549"
      },
      "xps;<IP_ADDRESS>;55670": {
          "adjacency": ["xps;<IP_ADDRESS>;1122"],
          "edges": {"xps;<IP_ADDRESS>;1122": {}},
          "conntracked": "true",
          "procspied": "true",
          "pid": "17549"
      },
  },
  "Process": {
      "xps;18162": {
          "cmdline": "nc <IP_ADDRESS> 1122 ",
          "docker_container_id": "74dcf877a0fb807b25473485966df5463b1a8fcfc7e4a177911b3fee85411e72"
      },
      "xps;17571": {
          "cmdline": "nc -lkp 1122 ",
          "docker_container_id": "fc2d0a43a340cf699d517bc9f59603f6e6a8f4bd4d7b227feab3ea7ea6c1511f"
      },
      "xps;17549": {
          "cmdline": "/usr/bin/docker-proxy -proto tcp -host-ip <IP_ADDRESS> -host-port 1122 -container-ip <IP_ADDRESS> -container-port 1122 ",

      },
  }
}

So here's what's going on...
ConnectionJoin is the only place which knows how to deal with container port mapping. In particular it will transform the ;<IP_ADDRESS>;1122 endpoint into the fc2d0a43a container. That is crucial because while xps;<IP_ADDRESS>;42293 and xps;<IP_ADDRESS>;1122 can be mapped to containers by MapProcessToContainer, ;<IP_ADDRESS>;1122cannot, since its associated process is a docker-proxy.
However, the current code excludes procspied endpoints from ConnectionJoin, under the assumption that they will be mapped to processes and then containers by MapProcessToContainer.
Hence ;<IP_ADDRESS>;1122 does not get mapped to a container, and thus the edge to ;<IP_ADDRESS>;1122 which 74dcf877a got via the mapping of the xps;<IP_ADDRESS>;42293 endpoint, does not go anywhere.

I am rather tempted to use my patch from above to fix this. What could go wrong?

performance might suffer, since we'd be feeding more endpoints to ConnectionJoin
we might end up with some stray pseudo nodes, for the same reason
counts may be off, because of the stark warnings in the code about the need to we need to include edges only once

(1) I can check/measure. For (2), I am not really sure what to look for. For (3), I have yet to find exactly where and how things go wrong. @2opremio any pointers for (2) and (3)?
Note that we are already looking at the same endpoints multiple times, because process rendering looks for "procspied or ebpf-tracked" whereas ConnectionJoin looks for "not procspied". (for a reason, as it turns out - see 6eaffb4). Alas "endpoint" != "edge"... the comments in the code liberally conflate the two, which doesn't help.

Hence ;<IP_ADDRESS>;1122 does not get mapped to a container

But ;<IP_ADDRESS>;1122 has a PID, why doesn't it end up as a process connection and in turn a container through MapProcessToContainer ?
I've read your explanation above a few times and it still isn't clear to me why that doesn't happen (I see it as a bug).

I am rather tempted to use my patch from above to fix this

Can we clarify the point above first?

But ;<IP_ADDRESS>;1122 has a PID

That PID is the docker-proxy.

why doesn't it end up as a process connection and in turn a container through MapProcessToContainer ?

Because the docker-proxy is not a container. Besides, we don't really want to show the connection as going via the docker-proxy; that is an implementation detail. The right way to resolve the adjacency is via the container port mapping. Which is one of the things ConnectionJoin is doing.

I compared the topologies produced from a recent production report with a) the current code, and b) no endpoint filtering on ConnectionJoin.  The hosts, processes and container topologies are unchanged. But the service topology produced by the current code is missing 4 connections between services and external services, e.g. fluxy-db-exporter and service-prod-fluxy-vpc-database.cqqzyyx2xnct.us-east-1.rds.amazonaws.com, as well as 4 connections from prometheusto the likes of thecontrolanddemo. And the pod topology is missing 39 connections; in addition to the aforementioned service connections, it is also missing a bunch of connections from authfepods tocollection` pods, as well as many others.
So there's a real accuracy issue here.
I've also run some performance tests, using the methodology from https://github.com/weaveworks/scope/pull/2559#issuecomment-306142823

old
new

processes
0.3
0.3

containers
1.7
2.0

pods
1.3
1.5

services
1.2
1.4

hosts
1.3
1.5

So removing the endpoint filtering from mapEndpoint2IP does incur a noticeable performance penalty. I'll see whether I can find a better way to get the accurate results, but in the end accuracy trumps performance.

Besides, we don't really want to show the connection as going via the docker-proxy; that is an implementation detail.

Yep, agreed. I think this is corner case though. Would it make sense to elide docker-proxy explicitly? It would allow us to include the connections without losing performance.

Would it make sense to elide the docker-proxy explicitly?

It's not so much about eliding it - it's being elided already - but somehow making sure the associated endpoints get mapped to containers. That would require MapProcess2Container to access the ip->container map currently produced by ConnectionJoin. It's doable of course but will require a major re-working of the code.
Also as I noted above in my topology comparison above, there are other problems with the current endpoint filtering that have nothing to do with the docker-proxy.
And I would still like to know what the deal is with counts. See point 3 and the last paragraph in https://github.com/weaveworks/scope/issues/2558#issuecomment-306209780.

That would require MapProcess2Container to access the ip->container map currently produced by ConnectionJoin

That's what I meant.

That would require MapProcess2Container to access the ip->container map currently produced by ConnectionJoin

If we mark docker-proxy endpoints specially, can't we do it in the second part of ipToNode() ?

I would still like to know what the deal is with counts

I thought that the connection counts could be affected. Due to the merging of duplicates I thought that the adjacency list would get duplicates or that the connections counters would get screwed up due to the extra increment of node counters.
But

Adjacency lists are really sets
Node counters are not really used by the connection counter (render/detailed/connections.go)

However, node counters are used for the Container Image Node Summary, so duplicates may break that. But .. I guess we can avoid duplicate increments by looking at the original topology of the nodes.

I compared the topologies produced from a recent production report with a) the current code, and b) no endpoint filtering on ConnectionJoin.
[...]
the service topology produced by the current code is missing 4 connections between services and external services,
[...]
as well as 4 connections from prometheus to the likes of the control and demo. And the pod topology is missing 39 connections

Uhm, could the duplicates could be affecting the IP counter?  causing it to be unexpectedly higher than 1 in some cases and thus discarding connections?

If we mark docker-proxy endpoints specially, can't we do it in the second part of ipToNode() ?

Are suggesting that we mark the proxy endpoints in the probe? And then amend the endpoint filter in mapEndpoint2IP to include these endpoints?

Uhm, could the duplicates could be affecting the IP counter? causing it to be unexpectedly higher than 1 in some cases and thus discarding connections?

My comparison was between a) the current code, and b) no endpoint filtering on ConnectionJoin. If anything, the latter would produce higher IP counts than the former, so cannot explain why more connections are included that way.

Are suggesting that we mark the proxy endpoints in the probe? And then amend the endpoint filter in mapEndpoint2IP to include these endpoints?

Not in the probe, but as a extra pass in the renderer.

My comparison was between a) the current code, and b) no endpoint filtering on ConnectionJoin. If anything, the latter would produce higher IP counts than the former, so cannot explain why more connections are included that way.

I misread, you are totally right about that.
Do the probes generating that report have eBPF enabled? If so I am a bit lost, since the current code doesn't filter out endpoints generated by eBPF.

Do the probes generating that report have eBPF enabled?

The report was from Weave Cloud production. So no.


Ggssh

I have no idea what you are asking for here - you didn't leave any text, and I don't know what Ggssh is or what it has to do with Quick Explorer.


Fix problem with default webpack configurations.

We need .vue extension specified for webpack to find the files.
Fixes https://github.com/vue-bulma/modal/issues/13

Fixes https://github.com/vue-bulma/modal/issues/13

When will it be merged ? Please ?

@jzelez @Choko256 Guys, sorry for replying late. But I don't think it's necessary to add this affix.
The only thing you need to do is add some configurations to your webpcak config file. And then webpack will be able to find these files.

All other packages don't require a change to webpack configuration. This is the first one I've encountered that it does.
Also, it is against the default behaviour for webpack, so why should the package force developers to change their defaults?

:+1:


Rename speck folder to spec

Or translate it from German to English into beacon.

Sorry, thought, it was the spec folder.

Sorry, thought, it was the spec folder.

hehe, np


End-to-end developer tutorial

We have minimal "build an app" tutorials. We need a more robust, realistic, end-to-end tutorial for developers featuring topics like concurrency, contention, retries, pagination, and troubleshooting.
This involves building a full application, or leveraging/extending what we already have. We should start with one of the most popular languages, probably Java, Go, Python, or Node.

See https://github.com/cockroachdb/docs/issues/3584 for relevant details.

@rmloveland, @ericharmeling, in our discussion of dev docs next steps, we should consider this issue, or something similar, and weigh it against other options. I would love an end-to-end developer tutorial for 20.1 if not for 19.2.

Jesse Seldess<EMAIL_ADDRESS>writes:

@rmloveland, @ericharmeling, in our discussion of dev docs next steps,
we should consider this issue, or something similar, and weigh it
against other options. I would love an end-to-end developer tutorial
for 20.1 if not for 19.2.

I would also love to have this!
I also think we need to be clear that doing this would be a major
project that would be all someone could work on for .  @Amruta-Ranade
shared a link recently to this talk "Content is King and other
Cliches"
where the speaker says:

Why does good content matter? Why do we even care about good content?
It's a huge, huge time sink. How many people have spent 30 hours
writing a blog? It takes me 40 to 60 hours to write a good conference
talk.

If it takes 30 hours to write a good blog post, how long would it take
to write a realistic-ish example application and then the "blog post" /
doc writeup?  My wild-assed guess is 200+ hours (bare minimum, probably
more like 300), which would be ~5-8 work weeks if one did nothing else
(which is of course not how work happens!  :-} ).  The review process
post-PR would also be very lengthy, probably on the order of weeks or
possibly a month to get the code and prose into shape if the reviewers
had significant feedback.
So we would need to get super clear on that being absolutely OK for us
to invest time in, and we'd need to design the project in phases so the
person doing it didn't fall victim to the "omg i haven't moved this
issue in weeks, what is happening to my productivity" issue.
We also probably need to do #182, #3203, #3943, #4705 et al as
prerequisites to realistically delivering something like this.
Otherwise the resulting app would be incredibly unwieldy to deliver into
our existing site structure, which only pulls in complete code files and
not snippets, and has no automated code testing to make sure stuff
works.
Even though I still think this is important I might have convinced
myself now that we may not want to do this yet (ha!).
Def looking forward to discussing this more.

It sounds like we might wan to scope this down and plan this project thoroughly in the 19.1 timeframe. Executing clearly seems out of scope. But perhaps even the planning should be punted. @awoods187?

I'm fine with punting this completely for now--we clearly have higher priority work to do

Closing in favor of https://github.com/cockroachdb/docs/issues/5243.


fix(jsx): rename Hono to JSX and export JSX namespace

Fixes #2927
Currently, the definition for HTML tags elements and attributes are exported as a namespace named Hono in jsx/intrinsic-elements.ts. This is not bad, but the namespace Hono is not exported for users. So, it's impossible to extend the values such as HTMLAttributes.  In this PR, it will be exported from hono/jsx. And I renamed Hono to JSX because the name Hono will cause confusion. That namespace was not used in a global. So I think it will not be a breaking change.
With this PR, you can write the JSX with the HTMX attribute with the following code:
// You may have to write `import "typed-htmx"`

declare module 'hono/jsx' {
  namespace JSX {
    interface HTMLAttributes extends HtmxAttributes {}
  }
}

app.get('/', (c) => {
  return c.render(

Hello!

  )
})

By the way, it was exported in global before v4.4.0, but it was not valid for JSR publishing and polluted the global. So, it was changed to exported locally in the module.
The author should do the following, if applicable

[ ] Add tests
[ ] Run tests
[ ] bun run format:fix && bun run lint:fix to format the code
[ ] Add TSDoc/JSDoc to document the code

Hey @usualoma What do you think of this PR?

@yusukebe Thank you.
It makes sense 👍

@usualoma Thanks! I'll merge it.

P.S.
We can write like this instead of the document: https://hono.dev/guides/jsx#override-type-definitions
declare module 'hono/jsx' {
  namespace JSX {
    interface IntrinsicElements {
      'my-custom-element': HTMLAttributes & {
        'x-event'?: 'click' | 'scroll'
      }
    }
  }
}


Support React Hooks (#5602)

Ref. #5602

Add ESLint plug-in
Add Babel plug-in that would force array destructuring to work in loose mode for known Hooks

ESLint plugin should probably be behind an option in the preset, but enabled in CRA by default – this is not yet implemented.

Ping @Pajn

Sorry, I completely missed the first notification.
I'm not too knowledgeable with the babel plugins or AST but I imagine that you would have to create a custom babel plugin (based on the @babel/plugin-transform-destructuring code). Some pseudo logic would be: check that the RHS of the assignment statement which does the destructuring is a function call which is a whitelisted hook name (like useState) and if so transpile that statement in loose mode, otherwise use the full transformation.

@eivind88 based on @Pajn's advice, I've adapted babel-plugin-transform-destructuring to take a whitelist of property/function names to apply the loose rule when destructuring.
Have a look at https://github.com/lvl99/babel and let me know if it could be used here.

@lvl99 Great!
I've updated my PR; Could you have a look and verify that I've understood your change correctly? :)
This PRs dependency versions will need to be bumped after you PR is merged.

@eivind88 I think since you have loose mode enabled on this line that it would always be enabled, even with the selectiveLoose values given, due to this line I have here.
Perhaps I need to rethink what exactly is happening or how we want to use it. isLoose would only be true if the selectiveLoose option is set and the checked item matches the selectiveLoose list, otherwise if it is false it will defer to the loose value (in your PR you have loose: true so it would end up running all destructuring in loose mode).
Maybe my isLoose conditional should be a bit more selective, by returning a false if the item is not on the selectiveLoose list even if the loose option is true:
const isLoose = this.selectiveLoose
  ? checkNameMatchesSelectiveLoose(objRef.name, this.selectiveLoose))
  : loose;

I think that would make more sense!

@lvl99 Updated.
Where do we go from here, considering that changes will need to be merged into Babel before this is usable?

@eivind88 not sure! Maybe we could post comments on the PR and try and get others like @gaearon to help get it assessed for appropriateness and (hopefully) merged into Babel.

@iansu Any thoughts? :)

We are also going to want to add this rule: "react-hooks/exhaustive-deps": "warn"

@iansu: Like so?

A stable version of eslint-plugin-react-hooks has just been released. Can you update your PR to use version 1.5.0? Once that’s done I think we’re ready to merge.

Done!

Thanks! I'm just looking into the unit test failures. They're not related to your changes but I'd like to fix them before we merge.

I think there's overlap with the babel plugin here and the work being done in #6219? If so we probably want to remove that change from this PR and focus on the ESLint plugin side of things.

@ianschmitz Are you referring to the loose mode destructuring part? I don't think #6219 is going to make it into 3.0 so I'm thinking we include this for now and then remove it in #6219. What do you think?

@iansu yes i'm referring to the babel plugin that was added here. If we don't think #6219 will make it in for 3.0 then it probably makes sense to include it and later remove like you said.

Thanks!


The Velocity Estimator does not take parent rotation into consideration

When calculating velocities with the VRTK_VelocityEstimator (in 3.3.0-alpha) if the parent is rotated then the velocity calculated is wrong.
Steps:

Use the Unity CameraRig (which uses the velocity estimator)
Rotate the Unity Camera rig around y by 90
attempt to throw something with the controller

The object will be thrown in the wrong direction because the velocity isn't taking the rotation into consideration.

https://github.com/thestonefox/VRTK/blob/release/3.3.0-alpha/Assets/VRTK/Scripts/Utilities/VRTK_VelocityEstimator.cs#L136-L172

Can fix it just by using localPosition and localRotation

PR with fix https://github.com/thestonefox/VRTK/pull/1442


Add local index for metadata

The code in this PR adds a local metadata cache for tree blobs, index and snapshot files.
Closes #386
Closes #454

Current coverage is 52.18% (diff: 49.56%)

Merging #607 into master will increase coverage by 0.25%

@@             master       #607   diff @@
==========================================
  Files            92         94     +2
  Lines          7399       7629   +230
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           3842       3981   +139
- Misses         2985       3047    +62
- Partials        572        601    +29

Powered by Codecov. Last update e443454...8ee9159

I'm closing this PR for now, it is not ready.


A brief note on the non-hierarchicalness of packages

Just a first shot at this to get the fact somewhere in the user guide, happy to make edits

works for me.


Julia freezes when only one thread throws an error in an @batch block

This one was a real Heisenbug. Unstable simulations, which crashed in serial execution, froze on multiple threads, but trying to let it freeze on purpose made the bug disappear.
If only one thread (except the first one!) throws an error, Julia freezes.
MWE:
using Polyester

function foo()
    println("Before")

    @batch for i in 1:100
        if Threads.threadid() == 2
            error()
        end
    end

    println("After")
end

Running this on more than one thread causes Julia to freeze after showing Before. This can be easily interrupted with Ctrl+C, which then seems to solve the problem for the session, but this is only due to #30, because now only one thread will be used.

By crashes in serial execution, do you mean throws an error?
Normally I think of crashes as "julia exits".
The fix here is probably to have ThreadingUtilities.wait check if the task it waited on threw an error.

I think the API will be that wait prints any errors, resets the tasks automatically, and then returns an error code.
The caller can then decide what to do, e.g. whether to throw. In Polyester's case, it would throw after setting its own state appropriately.
This wouldn't solve the problem of someone interrupting the process manually, as then Polyester wouldn't get the chance to reset its own state. But it would stop the hangs, and allow multiple threads to still be used.

By crashes in serial execution, do you mean throws an error?

Yes - like throwing a DomainError from sqrt or log.

I observed a similar problem, but where the thread quietly stops working instead of throwing. For example, when I run this
using Polyester

const N = 10

function bar()
    A = zeros(N)
    @batch for i in 1:N
        A[i] = sqrt(i-2)
    end
    for i in 1:N
        println("sqrt($(i-2)) = $(A[i])")
    end
end

on two threads, I obtain the following result:
sqrt(-1) = 0.0
sqrt(0) = 0.0
sqrt(1) = 0.0
sqrt(2) = 0.0
sqrt(3) = 0.0
sqrt(4) = 2.0
sqrt(5) = 2.23606797749979
sqrt(6) = 2.449489742783178
sqrt(7) = 2.6457513110645907
sqrt(8) = 2.8284271247461903

This is #30. You can use Polyester.reset_threads!() to enable the threads again without restarting Julia.


[Workspace Feeds] Ensure onyx updates are queued for domain admins when the domain account NVPs are change

In Slack, we decided not to use the sharedNVP prefix for workspace feeds-related NVPs as they are not technically shared NVPs. We are going to use more simpler format: <nvpName>_<workspaceAccountID> eg. private_expensifyCardSettings_12345
Ensure we automatically queue updates to the private_expensifyCardSettings, expensifyCard_useContinuousReconciliation and expensifyCard_continuousReconciliationConnection keys
https://expensify.slack.com/archives/C036QM0SLJK/p1722853213247299?thread_ts=1722424176.825499&cid=C036QM0SLJK

Sorry for the ping, no need for BZ assignee here

Looking for volunteers to take over before i can work on it on Wednesday

discussing this here: https://expensify.slack.com/archives/C03TQ48KC/p1724078233659219

Any reason this issue is still open?

no, app PR's are not closed automatically when we do backend deploys. Closing it.


Support for API level 8 and above

Is there any chance for this library to support Android API level 8 and above? Currently it supports for 10 and above. My client strictly wants app compatability for API level 8. Every thing looks perfect but still cannot use it cause of this issue.. :(
Any help?

BitmapRegionDecoder is only available in SDK 10 and above. If you don't need to display large images, you can disable tiling and the view may then work for SDK 8 (I can't promise it). If you do need to display large images, you could try using a custom decoder - documentation and a sample implementation can be found here: https://github.com/davemorrissey/subsampling-scale-image-view/wiki/04.-Custom-decoders
Note if you do use RapidDecoder, JPGs will not be properly supported and may be very slow, but it should work well for PNG images.
Officially, this library cannot support anything older than SDK 10.


publish<EMAIL_ADDRESS>

Requested by: @antonpirker
Merge target: (default)
Quick links:

View changes
View check runs

Assign the accepted label to this issue to approve the release.
Leave the #retract comment under this issue to retract the release (original issuer only).
Targets

[ ] github
[ ] registry

Targets marked with a checkbox have already been executed.  Administrators can manually tick a checkbox to force craft to skip it.

Failed with:
[info] [[target/github]] Git tag: "0.1.2"
- Uploading asset "sentry-lambda-extension" to getsentry/sentry-lambda-extension:0.1.2
[debug] POST /repos/getsentry/sentry-lambda-extension/releases - 201 in 251ms
[debug] POST /repos/getsentry/sentry-lambda-extension/releases/63139270/assets?name=sentry-lambda-extension& - 500 in 268ms
Error: The operation was canceled.

I think our hypothesis is that this is related to a GH outage and can be rerun by removing and reapplying accepted (though it's curious that the bot didn't remove accepted post-failure).


HHH-5954 - Test showing that it works

https://hibernate.atlassian.net/browse/HHH-5954

Applied upstream, thanks


A11: Migrate the project to the Prisma ORM

Ensure all existing issues and future issues that have an postgres db schema are all migrated to Prisma OSM.
Ensure the readme file is updated as per latest instructions required

@mo-jaber pls can I work on this issue

Gm, I can work on this issue
I have previously contributed and merged my PR in this repository. I have a good knowledge of working with Prisma ORM and Next.js projects. I will take a look at the current db schema, migrations and the integrations and migrate all the changes to Prisma
ETA - 2 to 3 days

Great - thank you @PoulavBhowmick03

@PoulavBhowmick03 as part of this issue, ensure we are only using Prisma ORM (and remove the references to Drizzle etc)

@PoulavBhowmick03 as part of this issue, ensure we are only using Prisma ORM (and remove the references to Drizzle etc)

Yes chief! Leave that on me. The entire project will only have prisma integrated and will remove knex js and drizzle entirely


Update pods, remove unused ones, add SwiftLint

This removes old pods that are no longer used, many of which were required by Facebook Login. This also adds SwiftLint. A future PR will include addition of our SwiftLint config file.

LGTM


PluggableUSB.h

I am getting an error that I cannot resolve.
/Users/temporary/Documents/Arduino/libraries/USBMIDI/src/usbmidi_pluggableusb.cpp:13:10: fatal error: PluggableUSB.h: No such file or directory
 #include <PluggableUSB.h>

I see other posts online about this issue, but nothing that has helped me, are you able to offer some clarity or a fix or workaround?
Thank you!

What is your hardware?

Seeed XIAO SAMD21

I believe PluggableUSB.h is part of the standard Arduino stack when selecting SAMD based boards. Can you compile examples from the MIDIUSB dependancy library?

No, I get the same error compiling usbMidiLoopback. Infact in the examples drop-down, USBMIDI examples are placed in the INCOMPATIBLE sub-menu.
XIAO has it's own board file.
https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json

That explains the error, board not compatible :-(

Does it come with its own usb lib?

It's strange, because I have been compiling the same program for over a year, with no errors, it only appeared recently. I updated your library, got the error, went back to the old version I was using before (v1.0.1), but still get the error now.
XIAO doesn't come with its own USB lib that I know of, you have 2 options "Arduino" or "TinyUSB" under menu->USBStack.

Would you be interested in supporting the XIAO? It's one of the only ways to get a SAMD21 with the chip shortage.

I installed Adafruit SAMD boards, and selected trinket_m0. I get the same error, and USBMIDI is still listed as INCOMPATIBLE.
Any idea what could be going on here? Is this something about my personal installation perhaps?

I also get the error when using Arduino zero.
/Arduino/libraries/USBMIDI/src/usbmidi_pluggableusb.cpp:15:10: fatal error: PluggableUSB.h: No such file or directory
 #include <PluggableUSB.h>

you code does
#include <PluggableUSB.h>

other libs do something like
#if defined(ARDUINO_ARCH_AVR)
#include "PluggableUSB.h"
#elif defined(ARDUINO_ARCH_SAM)
#include "USB/PluggableUSB.h"

I also get the error when using Arduino zero.

Not here (using Arduino SAMD Boards) and Arduino IDE 1.8.19.
Maybe it is your local installation that got corrupted?

your code does

Not this lib directly, the underlying MIDIUSB.h lib does - and it does make the difference between AVR and SAM code. See here:
https://github.com/arduino-libraries/MIDIUSB/blob/578f9f535e37cf8f557bddc1d6f85540b42cfba8/src/MIDIUSB.h#L23-L35

That's strange because MIDIUSB does compile for me. For XIAO and other boards. If your library is built on top of that, I am very confused indeed. I have 3 machines with fresh installs of Arduino and these libs, all report the error. 2 are OSX one is PC.
Do you have any tips how I could proceed? I use your lib in an open source project that has a few users. One user reported the problem, and after updating I have it as well.

I realize before you asked me to compile the MIDIUSB examples. I misread that as USBMIDI. MIDIUSB is compatible, USBMIDI is not.

OMG I have the wrong repo I am so so so sorry, I thought this was for USBMIDI, but its USB-MIDI. As you were.


Mesos tutorial out of date

http://docs.projectcalico.org/v2.2/getting-started/mesos/tutorials/launching-tasks
This doc opens with some json - but its not clear what I should be doing with that.  The next line has a more concrete action, but it fails:
[vagrant@calico-01 ~]$ docker network create --driver=calico --ipam-driver=calico calico-nginx
Error response from daemon: legacy plugin: Plugin does not implement the requested driver

I think it should be
[vagrant@calico-01 ~]$ docker network create --driver=calico --ipam-driver=calico-ipam calico-nginx
df1bb792faea9e859222eb8ed441553f4f4e72f2e54b122582ddc91b7cc431b2

"Then in your marathon application definition, set network to USER, and set networkName to the name of your Calico network:"
Er - where do I find that?  Our other getting started guides are much more type this thing, then type that thing.


How to use Onedrive sdk js(Version 7.2)  for response_type as code?

I am using ember app, dynamically will call Onedrive filepicker JS for selecting files.
Loaded Script: https://js.live.net/v7.2/OneDrive.js
I created static page for redirectURI.
For authentication, Microsoft graph API uses token flow by default.
Is there possible to use code flow for authentication?

Any update on this?

Hi GnanaAjana
Your app would need to handle the code flow authentication yourself, but you can pass the accessToken you receive from that to the OneDrive picker.
Thanks,
zachzi


chore(): saddle-finance lint and prettier

@jaimehgb is this still necessary?

I should probably recreate it from scratch if I want to lint/prettify. Lots of conflicts, so closing for now


Cluster Provisioning using Node Provisioning: Create Cloud Credential v2 - vSphere

Duplicate of https://github.com/rancher/dashboard/issues/2969


Add T2FNorm

Please add T2FNorm (https://arxiv.org/abs/2305.17797)

Hi @bpanthi977, thank you for the pull-request! Overall it looks good.
I've left a review about an if condition. Also, if you'd like you can add your method to the Supported Methods section in the README. Lastly, if you have CIFAR-10/CIFAR-100 results available, we are happy to include those into the leaderboard.


Documentation

Doxygen and markdown

[x] README markdown
[x] Doxygen building for the include file

Added some basic documentation


Universal dependency installer (and universal debugger code evaluator)

This issue tracks the progress towards a more universal installer. To close this issue, we should end satisfying the following considerations:

Have the Data Frame working on the web (therefore having #9665 fixed).
To have a new service, DebuggerEvaluator, with an evaluate function that would allow the execution of code on the debugger.

This debugger evaluator should replace all (or at least most) of the current usages of the DebugLocationTrackerFactory.

To have an IInstaller that supports installing dependencies given an IKernel and a DebuggerSession.

The installer should show the appropriate message to the user regarding whether the kernel or the debugger may need to be restarted.

To achieve the above, I will focus on making the following PRs in order.

[x] (Urgent) Enable the Data Frame on the web (Fixing #9665)

By changing the IDataViewerDependencyService to receive an IKernel besides the PythonEnvironment that it receives today.
By adding a universal version of the dataViewerDependencyService that would only work if IKernel is provided and throw otherwise an error saying Installation of "pandas" not supported while debugging. Please ensure you have "pandas" installed.
By keeping the current node-specific version of the dataViewerDependencyService that would extract the interpreter from the IKernel if the IKernel is provided.
Besides ensuring the dataViewerDependencyService is registered on the web service registry, and removing the conditional that disables the Data Frame on the web.

[ ] #10639

This service would allow any other piece of code to run Python on the debugger.
This service will copy how the current DebugLocationTrackerFactory retrieves the frame ID.
This service will replace all the current usages of the DebugLocationTrackerFactory in the same PR.

[ ] #10640

Replace the usage of the PythonEnvironment (the interpreter) from the parameters of the dataViewerDependencyService methods and use the DebugEvaluator instead.
Evaluate code to get the interpreter path then use the old interpreter code.

[ ] #10641

Enable installing pandas on the Debugger version of the dataViewerDependencyService by using the code underneath %pip and %conda in iPython.
Completely remove the usage of the interpreter from the dataViewerDependencyService.
If pandas needs to be installed (either because it's not yet installed or because the version is inadequate), show a prompt message saying that You may need to restart the debugger after the installation is complete.

[ ] #10642

Move the code from dataViewerDependencyService into the IInstaller to provide a universal installer experience that could be used to install any package with either a Kernel or the active debugger.

Feedback always appreciated!

personally think a universal installer is over kill, best to walk through the user workflow and figure this out.
eg we could even prompt users to install manually or automate it without the debugger, eg sometimes installed packages won't be available in the active debug session, making this whole exercise pointless. meaning we could just ask the user to restart the debugger to get the latest packages.
ones simple example is, if you have an old version of pandas, then installing again will not work at all, you must stop the debug session.

Closing this issue as I don't think we need this


Download all files from a Catalog at once

Downloading files from a Catalog currently involves downloading each file separately or adding each file to a Downloader before downloading them.
from parfive import Downloader
downloader = Downloader()
result.iloc[:10].apply(
   lambda row: FileMetadata(row).download_file(
      "/tmp/spice-files",  # base directory
      release="2.0",
      downloader=downloader
   ),
   axis=1
)
downloader.download()

This could be a method of the Catalog object.

Duplicate of #48 (double submission of new issue)


BUG: CC0052 detection (ref/out parameters)

CC0052 - A field that is only assigned on the constructor can be made readonly.
Diagnostic should not be detected when field is used as 'ref' or 'out' parameter of method.
Example:
    class Test
    {
        private int value = 4;

        public void Method()
        {
            int.TryParse("", out value);
        }
    }

Duplicate from #788.


[question] react-helmet work fine for seo ?

sorry, i'm new here.
this package is good for seo ?

Please use the Issues to report problems and request features. This question is better suited for Stackoverflow
As with any React component, you need to render <Helmet/> server side in order to manage your page's metadata and make that data available for search engines.

@potench actually Google reads client side rendering of  just fine. Other search engines don't.

@kjonsson Do you have any "Prove"? Like an experiment or something? I am searching but hadn't find anything. And obviously, before we are allowed to use a componenet, we need some "proves" or "research" about it works.


Added trimmer component

Context
This adds an actual trimmer component to the trim mode.
To-do
Copied from #8890.

[x] Implement the proper design
~Fill the timeline with screenshots taken from the actual video at appropriate intervals (probably at a fixed % of the video - maybe 10 pictures evenly distributed?)~ ➡   #9104
[x] The two buttons only show up once the user has moved either handle
[x] The cancel button resets the endpoints to the values they had when the trim mode was initiated (not to the ends necessarily, just back to where they were)
[x] The trim button does nothing yet ➡   #9105
Maybe pause the video while dragging handles ➡   #9108

User-facing changes

Testing Instructions
This PR can be tested by following these steps:

Add a video (background or not) to a page
Enter trim mode (from quick-action or design panel)
Use the mouse to move the trimming handles
Use the keyboard to move the trimming handles
Observe that things work as expected
Press "Cancel" to abort trimming

Checklist

[x] This PR addresses an existing issue and I have linked this PR to it in ZenHub
[x] I have tested this code to the best of my abilities
[x] I have verified accessibility to the best of my abilities (docs)
[x] I have verified i18n and l10n (translation, right-to-left layout) to the best of my abilities
[ ] This code is covered by automated tests (unit, integration, and/or e2e) to verify it works as intended (docs)
[x] I have added documentation where necessary
[x] I have added a matching Type: XYZ label to the PR

Fixes #8890

On small screen/zoom the pageWidth part is causing issues.
Of course, forgot about zoom (and tight fits) - fixed in b1cb144be1.

(extra photos added to PR description)

The current time marker goes beyond the end marker.
Well spotted, fixed in 10fa36c319.


Improve parameter handling in prepareDatahandle, update optionlists, use absolute paths

Summary
Refactored parameter handling in prepareDatahandleForIntegration (renamed 'solver' to 'integrator'!), updated optionlists to the most recent version (all functions were renamed) and replaced relative paths in initPaths and clearPaths with absolute paths.
Changelog

Cleaned up parameter handling in prepareDatahandleForIntegration by introducing a new function.

Renamed the 'solver' parameter to 'integrator'
The 'integrator' parameter now also accepts char arrays as well as function handles
Changed default integrator to ode45 and adjusted default tolerance options
Added warning message if a user does not specify a parameter and the default is used instead

Updated optionlists to the most recent version in the mmtools repository

All functions now have an 'ol' prefix in their name to avoid shadowing certain MATLAB functions
Some additional improvements and new functionality

Replaced relative paths in initPaths and clearPaths with absolute paths

This prevents issues where someone may call initPaths from a different working directory (i.e. not the IFDIFF project root directory) which would lead to unintended behavior
Also adjusted test cases which need to manipulate the MATLAB search path

Notes
The speedtracker will report that the results of the benchmarks have changed compared to the public branch. This is caused by the fact that the benchmarks use the 'integrator' parameter which matches the implementation in this branch, but differs from the one in the public branch where 'solver' is used instead. Therefore, the benchmarks will use the default integrator in the public branch (ode15s) and the integrator that was actually passed as a parameter (ode45) in this branch. Manually changing the benchmarks to use ode15s instead will give the same result for both commits.

Nice code! A few questions and thoughts that arose while reading it:

There have been added history comments that inform the reader about how some code has changed
(cf. Tools/optionlists/olAssertOptionlist.m, l.15 for example).
Do we want these kind of comments?

The code is not backward-compatible as it is now. A user who has written code for an older version will have to replace 'solver' by 'integrator' for all their files. Also, the speedtracker has problems with this change as you mentioned under 'Notes'.
We should talk about how much backward-compatibilty we want to ensure and how we enable the speedtracker to execute versions with different interfaces if necessary.

prepareDatahandleForIntegration_setUpIntegrator.m, line 21:
It would be nice to read default settings from the config (makeConfig.m).

Nice code! A few questions and thoughts that arose while reading it:

There have been added history comments that inform the reader about how some code has changed
(cf. Tools/optionlists/olAssertOptionlist.m, l.15 for example).
Do we want these kind of comments?
The code is not backward-compatible as it is now. A user who has written code for an older version will have to replace 'solver' by 'integrator' for all their files. Also, the speedtracker has problems with this change as you mentioned under 'Notes'.
We should talk about how much backward-compatibilty we want to ensure and how we enable the speedtracker to execute versions with different interfaces if necessary.
prepareDatahandleForIntegration_setUpIntegrator.m, line 21:
It would be nice to read default settings from the config (makeConfig.m).

Thanks for the review and suggestions! Here are my thoughts:

In general, we probably don't need these kind of comments for IFDIFF code, since we already have the history in git. However, the optionlists functionality comes from the external mmtools repo, so it might be helpful to keep such comments in this case. Either way, I wouldn't bother changing anything in the optionslists code because it is only used as an external helper tool in IFDIFF. If we do actually need to modify something in the future (e.g. to fix a bug or add new functionality), then we should address that in the mmtools repo first.
I believe we already discussed and approved this interface change, but I also don't mind bringing it up again in tomorrow's meeting just in case. It is a breaking interface change after all, so I agree with you that we should be cautious.
About the speedtracker: I think it's a good thing that the speedtracker reports that something has changed (something major did in fact change). I'm not sure if it would be worth it to add some kind of functionality that would allow you to run benchmarks with versions that have different interfaces. It seems to me like it would require a significant amount of work with potentially not a lot of benefit. Still, I think it's definitely also worth discussing this tomorrow, so thanks for bringing that up.
Good idea, I will change that.

Leave mmtools as it is.
Accept both, "integrator" as speaking argument name, "solver" for backward compatibility


[tcgc] findContextPath need to handle nested operation group, also refine the logic for naming and composing cross language definition id

fix: https://github.com/Azure/typespec-azure/issues/1150
cc: @ArcturusZhang  @archerzz

All changed packages have been documented.

:white_check_mark: @azure-tools/typespec-client-generator-core

Show changes
@azure-tools/typespec-client-generator-core - fix ✏

findContextPath need to handle nested operation group, also refine the logic for naming and composing cross language definition id

You can try these changes at https://cadlplayground.z22.web.core.windows.net/typespec-azure/prs/1157/
Check the website changes at https://tspwebsitepr.z22.web.core.windows.net/typespec-azure/prs/1157/


Add support for wildcard subdomains

Is your feature request related to a problem? Please describe.
Currently, there is no way to set up a multi-tenant web app using Azure static sites that uses one domain per tenant.
Describe the solution you'd like
Ideally, I'd like to be able to set up a wildcard domain entry (for example *.saas.app). That way I can run one subdomain per tenant in my multi-tenant SAAS application for example:

https://tenant1.saas.app
https://tenant2.saas.app

Failing this if the subdomain limit could be removed, it would also solve the problem. These are not multiple websites, just different ways of accessing the same site. Ideally, we shouldn't be billed extra for this. With app services, there are multiple methods to support this.
Describe alternatives you've considered
Currently, we use Azure static websites instead and create a subdomain entry on the CDN per tenant. This is not ideal as creating each sub-domain is time-consuming.
This is currently a blocker for us adopting Azure static web apps for a couple of our projects.

Hello,
We have hit up against a similar issue in our investigation of whether we can adopt Azure static web apps for a couple of our portals. We also use subdomains to handle multi-tenancy. Being able to set up a wildcard domain entry would be a great feature!
Thanks

We just ran into this as well. We were expecting Azure App Service like custom domains, where wildcard's can be used for subdomains. As it stands now, to use ASA, we'd have to spin up a new ASA server every 5 subdomains, which seems like a waste. This should easily be supported out of the box.
Please consider allowing '*.domain.tld' in the custom domain validation.
Sample domain:
*.test.com
Current errors it returns:
"Request Envelope is invalid.  Please ensure the custom domain is provided and well-formed."
and
"domainName is invalid.  The domain name given was not found."

+1 on better support for SaaS solutions, was very disappointed to find there is such a low limit on subdomains!
Wildcard would be a good solution as we wouldn't have to make an API call to bind another subdomain. Although, having an ability to control which subdomains resolve to the SWA may be sensible as well.
Is there a way to request via support to increase the limit on our subscriptions?
Also from the docs I see a limit of 5, the API when we hit the limit disagrees: "The maximum number of custom domains allowed for this static site is 6."

Are there any updates on this issues? static web apps is not on preview anymore

Is there any update on this issue?

We have also hit this roadblock and would love to know if there's at least a work around that can be used in the mean time?

+1 on this - it is a blocker with the site I have just built as I was fully expecting to be able to have a wildcard or a more reasonable limit that 5.  It is frustrating that there is no tier available that I can purchase to remove this arbitrary limit.

+1 on wildcard domain support for static web apps.
I just encountered this limitation. I am trying to setup my application in the web app service, where the custom wildcard domain is supported.


$client->subscribeAddressTransactions Not working

I'm currently testing this SDK to see if it will fit for my next project but it seems that the  subscribeAddressTransactions function is not working.
Every time I'm calling it I get this message The object you've tried to access does not exist. and I know for sure that the BTC Address and the Webhook Identifier have been created before the call and are valid.

we have tests running (and passing) subscribeAddressTransactions,
can you paste the snippet of code that you're using? and maybe your webhook indentifier?
if you wanna continue in private then you can also mail<EMAIL_ADDRESS>

I'm getting this error
{"error":{"type":"Blocktrail\\SDK\\Connection\\Exceptions\\ObjectNotFound","message":"The object you've tried to access does not exist.","file":"\/var\/www\/vendor\/blocktrail\/blocktrail-sdk\/src\/Connection\/RestClient.php","line":336}}

And this is the code I'm using to test the SDK. The phpunit tests are passing but I cannot get this to work. Also is this the only way to make sure that the payment is good ? Checking the webhook event after payment ?
$client  = new \Blocktrail\SDK\BlocktrailSDK($blockPay['key'], $blockPay['secret'], "BTC", true);
$wallet  = $client->initWallet($blockPay['wallet'], $blockPay['walletPassword']);

$address = $wallet->getNewAddress();
$webhookId = rand('999', '99999999');
$wallet->setupWebhook($reqUrl, $webhookId);
var_dump($client->subscribeAddressTransactions($webhookId, $address, $dbConfig['pay_btc_confirmations']));

wallet webhooks automatically get all past and future generated addresses added to them, that's why it's not possible to manually add any addresses to them.

So what I should do ? How else I can get the events from only one address at a time ? I want to verify the payment from a user and make sure that they paid a certain amount, is there any other way to do this ?

I have setup the webhook and when surprisingly when I test it I got an error that says:
Error: Sorry, no new webhooks can be created at this time.
This left me confused. I am using the testnet version of the api. What could be the way out. Kindly help.
Thanks.

Hi,  We no longer provide Webhooks service. Apologies for the inconveniences.
https://github.com/blocktrail/blocktrail-sdk-php/issues/134


Add long polling feature ?

@aminesig that would be nice. though you should be able achieve something similar with:
componentDidMount() {
  this.interval = setInterval(() => this.props.myResource.$list().$reset(), 1000)
}

componentWillUnmount() {
  clearInterval( this.interval )
}

render() {
  return this.props.myResource.$list().map( ... )
}

does that address your use case?

Seems like a good workaround for now as I can enable that in my component code ! looking forward to the ws support !


Feature Request: get_credits(), estimate_credits()

Dear Destination Earth / Earth Hub team,
I was testing the ERA-5 zarr Greece flood example. Great notebook.
I am missing one feature though: get the current number of credits that have been used so far.
This would be really helpful for estimating and planning computations.

In the costing.py functions, would it be possible to add a function get_credits(PAT=<presonal_access_token>)?
And if you can estimate the credits that are going to be used for a computation, could they be added to  estimate_download_size() or make a function estimate_credits().

Thanks for the great work, all the best!

Hi @nicolamasotti, thanks for the quick reply!
The workaround with the number of chunks should be fine for now. Thanks for this hint!
Great to hear that the get_credits(PAT=<presonal_access_token>) is under construction! Looking forward to using it when ready.
Thanks! All the best!


Label cgroup driver for k8s and fix deployment with floating ip disabled for swarm mode

What's going on with the stackhpc/queens branch? Looks like we've lost our local changes.

I renamed it to stackhpc/queens-old as I wanted to test and see if some of the earlier changes were necessary... specially those concerned with checking for Docker storage setup.

I suppose I could have called the new branch stackhpc/queens-new instead.


show job time down to milliseconds

This as an attempt at closing https://github.com/edgurgel/verk/issues/34, but Timex.DateTime only has granularity to milliseconds (link) and Timex.Diff doesn't allow you to specify milliseconds (link) so I ended up manually subtracting the DateTime milliseconds from each other if the seconds difference is zero.
For units smaller than milliseconds, I think it would require using Timex.Time, which would require more work and potentially break compatibility?
Thank you for making verk :)

Changes Unknown when pulling e0dc4fa4bf8de3f6783ec85d24b42fc23103cf8e on mitchellhenke:time-diff-granularity into ** on edgurgel:master**.

Thanks for the contribution! I think that's a great start. Could you add some tests?
I think you will need to remove this line https://github.com/edgurgel/verk/blob/master/config/config.exs#L9 so the logs are actually printed out.
I suspect the easiest way to test is using CaptureLog and maybe some regex?
Thanks again! :tada:

Changes Unknown when pulling d4651d45c73e78e4f7c59d560562095bc31d3ca2 on mitchellhenke:time-diff-granularity into ** on edgurgel:master**.

Turns out the config doesn't need to change :)
I added some tests around the log format, but can add some more if it's not sufficient.

That's amazing! Thank you very much! :tada: :heart:

Glad to be able to help 😀


fix/issue#83

fix for issue #83

@psyspeedi Hey! Appreciate you looking into this. Apologies for not getting back to you sooner. I'll take a look at this soon.


Newline Causes Branch Character

Describe Your Issue
If I use newline (in v0.6.6) it was causing a white triangle before sections. I combed through the issues and came across https://github.com/bhilburn/powerlevel9k/issues/977 so I upgraded to v0.7.0 and now have a branch character instead of a white triangle.

Have you tried to debug or fix it?
With P9K_PROMPT_ON_NEWLINE set to false the branch character is gone, but the vcs section leaves a large empty indent (when not in a vcs folder)

With  P9K_PROMPT_ON_NEWLINE=true, P9K_MULTILINE_NEWLINE_PROMPT_PREFIX="", and P9K_LEFT_PROMPT_ELEMENTS=(os_icon dir newline dir) I still get the leading branch character. Using dir twice because it's a non-conditional item.

Environment Information

ZSH version =  5.4.2 (x86_64-ubuntu-linux-gnu)
ZSH framework = Oh-My-ZSH
Installed P9k by cloning the repo
Using v0.7.0 of P9k
I use open-wsl, but have also tried WSLtty and ConEMU. They all display the same issues.
Here are the vars I have set:

P9K_DIR_DEFAULT_ICON="$ICON_OPEN_FOLDER"
P9K_DIR_SHORTEN_LENGTH=1 # how many directories to display
P9K_DIR_SHORTEN_STRATEGY="truncate_to_last" # only show the last current folder
P9K_HISTORY_BACKGROUND='green'
P9K_MODE="nerdfont-complete"
P9K_MULTILINE_FIRST_PROMPT_PREFIX_ICON=""
P9K_MULTILINE_LAST_PROMPT_PREFIX_ICON="%F{yellow}❯ "
P9K_MULTILINE_NEWLINE_PROMPT_PREFIX=""
P9K_MULTILINE_PROMPT_PREFIX_ICON=""
P9K_PROMPT_ADD_NEWLINE=true
P9K_PROMPT_ON_NEWLINE=true
P9K_STATUS_VERBOSE=false
P9K_STATUS_OK_IN_NON_VERBOSE=true
P9K_TIME_FORMAT="%D{%a./%l:%M%P}"

P9K_LEFT_PROMPT_ELEMENTS=(os_icon dir newline dir)
P9K_RIGHT_PROMPT_ELEMENTS=(time status)

This line P9K_MULTILINE_NEWLINE_PROMPT_PREFIX="" should be P9K_MULTILINE_NEWLINE_PROMPT_PREFIX_ICON=""


Svelte Flowbite.js interactivities

Thank for the project!
Svelte Integration Second Option Flowbite.js: I would like to say that, the Flowbite.js should work without needing to re-executed in every page...

Hello @Andre7th,
Thanks for using the open-source Flowbite library!
I believe you're using Svelte so in my opinion it would be best if you used the dedicated library: Flowbite Svelte.
Still - if you want to use the core library you might have to use the init functions to set up the data attributes.
Cheers,
Zoltan

@zoltanszogyenyi What does it mean to set up the data attributes in this case?

@zoltanszogyenyi What does it mean to set up the data attributes in this case?

For example in Vue you can use the onMounted lifecycle method to hook onto the event when the component has been rendered at which point you can call the initFlowbite() function to set up the event listeners for the HTML elements that have the data attributes.
Here's a bit more info regarding this: https://flowbite.com/docs/getting-started/quickstart/#init-functions

What about Sveltekit?


Replace fprintf(stderr, ...) & exit with exceptions

There are a bunch of places in our code base where we print an error to stderr and exit. We should throw exceptions instead!
Also, when possible the error messages should reflect actual instance data, like if we can't access a key in a dict, it's good if we can include the actual key in the error message.
kll@ThinkYoga:~/terastream/acton$ rg "^ *exit.1"
builtin/int.c
175:    exit(1);
217:    exit(1);
222:    exit(1);
372:    exit(1);
381:    exit(1);
387:    exit(1);
393:    exit(1);
624:        exit(1);

builtin/exceptions.c
95:  exit(1);

builtin/timsort.c
372:      exit(1);

I am at fault for some of these... I will fix them soon. I excuse myself with

I forget exactly the parameters of RAISE
the knowledge that RAISE just prints to stderr and exits...
But, of course, for the future it will be different.

I just updated the issue description with the current list of places we do exit in builtins. I think all!? of them should go away and be replaced by exceptions, right

I accept the assignment, but

are we ready to really throw exceptions yet?
If I define

def inv(x : int) -> float:
if x==0:
raise ValueError("inv: division by zero")
else:
return 1/x
and then run inv(0) the program hangs rather than aborts. I don’t think we want that so I would prefer to wait to throw exceptions until unhandled exceptions trigger program abortion. And to change to $RAISE (which just is a hidden exit(1)) now when we very soon (?) will have real exceptions seems unnecessary.

I don’t know what to write in C in builtin/*.c to throw real exceptions. What should replace
 $RAISE((B_BaseException)$NEW(B_ValueError,to$str(errmsg)));

I am not convinced that we want all exit(1)’s to be replaced by raising an exception, but probably most should. For instance, in

B_int B_intG_new(B_atom a)
in int.c, which creates an int from an atom, we try ISINSTANCE(a,T) for all atomic types T. After that code follows now
fprintf(stderr,"internal error: B_intG_new: argument not of atomic type\n");
exit(-1);

This code should be unreachable for type-checked programs. One could argue for these two lines to be removed (since this code location is unreachable) or one could argue to keep them (since there might be a bug in the compiler and then this error message could be helpful) but I don’t think one could argue to raise an exception. Or?
Björn

On 28 Mar 2023, at 13:54, Kristian Larsson @.***> wrote:
I just updated the issue description with the current list of places we do exit in builtins. I think all!? of them should go away and be replaced by exceptions, right
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were assigned.

@nordlander so that means it is correct to change to $RAISE now right? and it will start doing the correct thing later on when you are done?
@sydow I agree that internal errors and similar should exit immediately so we can find such things as early as possible. I would prefer to wrap it up into some function / macro that makes that more clear. Like INTERNAL_ERROR("Something bad happened"); or similar, other ideas?
@nordlander what did we settle on for actors? Unhandled exceptions are essentially ignored, right? Like the current method obviously stops executing but the actor continues to exist right? So we won't actually abort the whole program, even when you are done, it will "just hang there"!?

Yes, use $RAISE freely, except when it occurs in CPS converted code (don't think we have any example of that combination yet). There one must use a forthcoming function $RAISEc, but more on that later.
In actors, unhandled exceptions will just abort the current continuation, checkpoint the current state, re-raise the exception in any waiting client actors, and then consider the current message handled. I think this is the desired behavior, except that we might also want to log info about the failure somewhere (perhaps by simply increasing a counter). But the actor itself will persist in the state of its latest checkpoint, ready to handle any remaining messages. It's not supposed to "hang" in the sense of not being responsive.


Improve exception handling

As of now exceptions are thrown with messages that are pulled up to user level

I noticed that in the codebase when a token is not found on TokenRepository read, a null value is returned. At first, it seemed a good API, but the entire codebase is cluttered with "check if missing and throw exception" because a "token not found" makes impossible all the operations.
I suggest throwing an exception directly in the repository.

Most of them were removed already. An important thing to improve is to create a custom exception tree so that we can discriminate between unexpected exceptions that are unrecoverable from the ones resolvable with a user retry.
For example, when we change models and a user has a conversation state with the old model, the entire bot will break. We should check in the error handler if it is such a case and cleanup the conversation state.

For example, when we change models and a user has a conversation state with the old model, the entire bot will break. We should check in the error handler if it is such a case and cleanup the conversation state.


Document access blocked

Documents from Gemeente Nieuwkoop are not loading and when following the link it says "The request is blocked."
This doesn't seem to be the case with other municipalities though. It doesn't work for me through https://openbesluitvorming.nl/?zoekterm="*"&organisaties=["ori_fixed_nieuwkoop_20230706084053"] either if that helps.

I've contacted iBabs support about this. This was the response i've got.

This is the result of improvements made in the latest update to the iBabs Publieksportaal . A classic website best practice ensures that visitors do not leave your site while viewing information. In line with this standard, the option to download a document via the PDF viewer is disabled by default. Visitors to the Publieksportaal  can thus view all documents within the PDF viewer without having to leave the portal. In the next iBabs portal release, a setting will be made available that allows the functional admin to choose whether downloads are enabled or disabled by default for the Publieksportaal . If you would like to activate the download option before then, you can email our support department with a request to enable the download functionality.

So nothing that can be done I guess. Perhaps it would be possible to link to the page and not the pdf directly.
https://nieuwkoop.bestuurlijkeinformatie.nl/Reports/Document/34b3e99f-5efb-41bc-9a3c-72dd73ca232c?documentId=74451532-3493-43a6-ad51-c5e60633d877
instead of
https://api1.ibabs.eu/publicdownload.aspx?site=Nieuwkoop&id=74451532-3493-43a6-ad51-c5e60633d877

Thanks.
That is unfortunate as i need to download the files for my propose. I'll think of another way.
It might be good practice, but are they actually allowed to do this with open data?

It's fixed at ibabs now


Chart tooltip transparency fix

Description
Resolved an issue with styling being applied twice to both an outer div and an inner div in the tooltip, resulting in background colors stacking and becoming more opaque. Added transparency to the pie chart tooltip for consistency. Closes #285. Also I noticed some redundancy in the code for Chart and Pie. Both of them use the same colors for the grades but they are defined separately for each component. A future improvement to the codebase would be to have a single file defining/exporting the color constants to be used for each component. Also, I'm not sure why the tooltips are different dimensions/sizes for the Pie and the Chart but I'll just leave it.
Screenshots
Before:

After:

Steps to verify/test this change:

[x] Verify changes work as expected on staging instance

Final Checks:

[x] Verify successful deployment
[ ] Delete branch

(optional)

[ ] Write tests
[ ] Write documentation

Nice catch on this. I think for the different size between the pie and the chart is visually fine since the text in there one is longer. Good job on this.


DW responses back in handler

Moves DW response definitions back into the handler interface, as inner classes.
Contributing to Twilio

All third party contributors acknowledge that any contributions they provide will be made under the same open source license that the open source project is provided under.

[x] I acknowlege that all my contributions will be made under the project's license.

The only question I've got is around whether these response classes belong in the Handler or the Resource. In scala, they're in the resource, as the Handler is a trait that the user has complete control over. Is there some advantage for doing things this way? If not, would you mind putting these in the Resource to avoid cluttering the handler?

My rationale here was that the response classes are used by the implementor of the handler interface, so it might make sense to keep them in the same place.  If the user goes and opens up the handler to look at the methods they need to implement, they also see the definitions for the responses right there.  In theory they don't even ever need to open up the resource classes unless they're curious.  But of course for people that use an IDE (probably 99% of Java developers), the source for the definitions is just one ctrl-click (or whatever) away, so maybe that's not a big deal.
I don't really feel strongly about this either way, so if you'd rather we put them in the resource class, I'm fine with that.  Just let me know.

Actually, considering this further (with some in-person discussion), it seems that the considerations at play here are:

If the Response inner classes are part of the Handler, they can be tab-completed without contention, whereas Resource may have some other noise preventing more ergonomic consumption
One reason Response lives in Resource in Scala's generators is because the object is passed in to the handler methods by way of the first parameter list, instead of created in Handler and returned to Resource.
Another reason Response lives in Resource is because Scala doesn't have static members to traits; putting these definitions into the trait would create path-dependent classes, and splitting the trait into a companion object would increase noise around the Handler definition

For these reasons, I retract my initial concerns. I think what you've got here is solid. Thanks for the back and forth!


[Enhance]  refactor  iou_neg_piecewise_sampler.py

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Modify iou_neg_piecewise_sampler.py  to support PointRCNN.
Modification
Please briefly describe what modification is made in this PR.
BC-breaking (Optional)
Does the modification introduce changes that break the back-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the downstream projects should modify their code to keep compatibility with this PR.
Use cases (Optional)
If this PR introduces a new feature, it is better to list some use cases here, and update the documentation.
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
If the modification has potential influence on downstream projects, this PR should be tested with downstream projects.
The documentation has been modified accordingly, like docstring or example tutorials.

Shall we add some unit tests?

the unittest is here


Controller Helpers not working

I tried using evercookie_is_set?(:key) inside a method in my controller and it raise an error saying the function is not known.
Am I doing something wrong?
Elena

Hi, did you put include Evercookie::ControllerHelpers in your controller?
If so and it still doesn't work, please provide Rails and Evercookie version you are using.

It works if I include the helpers inside the controller. Thank you!


how to print md data table without order by arrow icon

@daniel-nagy  how to print md data table without order by arrow icon?
Thank you in advance


listink in new window

Pull request template
Checklist

[ ] I have read the CONTRIBUTING guide
[ ] branch rebased on develop
[ ] styleguide check npm run validate
[ ] good naming
[ ] keep simple
[ ] video or screenshot attached
[ ] testing instruction attached
[ ] check your PR once again

Description

Video or screenshot

What and how to test

https://drive.google.com/file/d/1EiKTmCKt2anqZdPu6IM8KKRcuc_VApJe/view


Silent failure in CLI

When running a benchmark using the CLI, if there is a missing benchmark or network configuration path, there is a silent failure.
This is because benchmarkConfigPath = CaliperUtils.resolvePath(benchmarkConfigPath, workspacePath) will throw if the first passed parameter is undefined ... but it is never caught and there are no output error messages to help assist diagnosis of the command that doesn't actually run.
We should either have an outer catch to deal with any uncaught errors, or at least condition for undefined parameters.

@nklincoln The launch commands now rigorously check the main required settings:
https://github.com/hyperledger/caliper/blob/fc3e4589c529caaf3e099d7c6563cb846a1a1b24/packages/caliper-core/lib/common/utils/caliper-utils.js#L41
So I think that closes this issue.


Do not skip first mapping when making chain file

I think this is a bug, but the logic is a bit complicated, so I'm not entirely sure. As I see it, the mappings are pulled into an array, then iterated over with an index, $i. The first mapping (ie $i == 0) is skipped, which seems like an error; the first mapping should be just as valid as the rest (?)

Coverage remained the same at 81.579% when pulling e429feb533add87fe9c97770f0fd5c84a0ac3ff8 on james-monkeyshines:master into 212f2d022066510862009f5c7e2a25fa3873ab05 on Ensembl:master.

that does look reasonable
this script was pulled out of the depths of Andy's brain a long time ago, so hard to know what the logic was behind skipping the first one

I would assume I was worried that logic later on would have put in the first mapping as a single event on its own or something similar. Anyway if it looks fine then great.
The logic of producing these is horrible. It all boils down to keep on reading the mappings until there's an event that forces you to close off a block and start a new one. The challenge is that you don't know the next event until you observe it and then decide if it requires you to abort the current block or extend it 🤕


Exporting bone animations ignore keys that are specified to be constant

Describe the bug
Exported animations treat all animated keys as LINEAR, even when specified to be constant.  This is causing an animation where I want to snap between two locations instantly to slide over several frames when I view it in most viewers.
To Reproduce
Create a mesh and bind it to a bone in a rig.
Add an animation to the bone.
Open Blender's graph editor, select the control  points, right click and set them to be constant.
Play back the animation in Blender.  The mesh bound to the bone will snap to the position you gave it.
Export the animation as a gltf file.
Open the animation in a viewer such as 3D viewer.  Instead of snapping to the new location, the mesh will quickly slide to it.
If you open the gltf file in a text editor, you will even see every animated frame marked as 'LINEAR' and none as 'STEP'.
Expected behavior
Exported animation should respect constant keyframe indications.  This is necessary for faking flipbook animations and hiding objects.
.blend file/ .gltf
experiments.zip
Version

OS: Windows 10
Blender Version 3.4

Confirmed.
This is a know limitation for now: When baking, we bake every single frame, with LINEAR interpolation whatever the blender interpolation is.
See https://github.com/KhronosGroup/glTF-Blender-IO/blob/832484f279a7bd37b71a7f693cfd818e81588deb/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py#L297
and https://github.com/KhronosGroup/glTF-Blender-IO/blob/405df21da3dac95a4514e24bc4ac30716b32295c/addons/io_scene_gltf2/blender/exp/animation/sampled/armature/gltf2_blender_gather_armature_sampler.py#L209
Setting at enhancement, as we can detect:

If the channel is animated
and if the entire fcurve is constant (glTF can have multiple interpolation in a single channel)
In that case, we can switch from LINEAR to STEP

This should be fixed now.
Note that glTF animation for Translation, Rotation or Scale are not animate each channel (X, Y, Z, ...).
So in your case, you have to put each X, Y, Z to CONSTANT if you want to export to STEP, else it will still export to LINEAR, as we detect different interpolation mode inside an animated TRS.


Version 6 - Roadmap

Here are some initial ideas:

Provide interface for each concern.

Add SessionManagerInterface to handle session operations, such as start, save, destroy, getName, etc.
Reduce SessionInterface to handle session data operations only, e.g. get, set

Make session settings "immutable"
Remove SessionAwareInterface in favor of dependency injection
Require PHP 8.0+

Example usage
$config = [
    'name' => 'app',
];

$session = new Odan\Session\PhpSession($config);

$session->start();

$session->set('key', 'test123')

// test123
$value = $session->get('key');

$flash = $session->getFlash();
$flash->add('error', 'Invalid username or password');

// This is now optional
$session->save();

when I try this example from above it give me this error
Odan\Session\PhpSession::__construct(): Argument #1 ($storage) must be of type ?ArrayObject, array given, called in any solution

Version 6 has just been released.


Fixed various small issues.

Removed pending withdrawal status from employer actions route
Added siteId to useEffect for the selected tab so that on load, the default tab will be the site details tab.
Added HA to the acknowledge route to cover the case where a HA withdraws another HA's participant

Just require one clarification. When pending_acknowledgement is added ?

In one niche case. When an HA withdraws a participant that they specifically did not hire from the site details screen.
This is handled by the employer-details/archive route.


Update Project Description and User Story documents

Uploaded updated user story document after reviewing feedback from Deliverable 0 and revising stories.

Uploaded Project Description document during Scrum Meeting 1