ConBee not recognised - Raspbian stretch

I have a Raspberry Pi 3 B+ with Raspbian stretch lite installed.
I installed the container but cannot see the ConBee.
I bound the USB stick to a specific tty just to be sure to point it correctly:
pi@moon:~/script $ sudo udevadm info --query=property --name=/dev/ttyUSB1 | grep SERIAL
ID_SERIAL=FTDI_FT230X_Basic_UART_DM01BKAU
ID_SERIAL_SHORT=DM01BKAU
pi@moon:~/script $ cat /etc/udev/rules.d/99-usbserial.rules
ACTION=="add",ENV{ID_BUS}=="usb",ENV{ID_SERIAL_SHORT}=="DM01BKAU",SYMLINK+="ttyConBee"

Then I create the correct docker-compose.yml:
pi@moon:~/script $ cat docker-compose.yml
version: "2"
services:
  deconz:
    image: marthoc/deconz
    container_name: deconz
    network_mode: host
    restart: always
    volumes:
      - /opt/deconz:/root/.local/share/dresden-elektronik/deCONZ
    devices:
      - /dev/ttyConBee
    environment:
      - DECONZ_WEB_PORT=80
      - DECONZ_WS_PORT=443
      - DEBUG_INFO=1
      - DEBUG_APS=0
      - DEBUG_ZCL=0
      - DEBUG_ZDP=0
      - DEBUG_OTAU=0

If I start the container and point to my raspberry ip http://my_raspberry_ip/pwd/login.html I cannot see any device.
Here are the docker logs:
pi@moon:~/script $ sudo docker logs deconz
[marthoc/deconz] Starting deCONZ...
[marthoc/deconz] Current deCONZ version: 2.05.44
[marthoc/deconz] Web UI port: 80
[marthoc/deconz] Websockets port: 443
libpng warning: iCCP: known incorrect sRGB profile
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
21:55:14:584 HTTP Server listen on address <IP_ADDRESS>, port: 80, root: /usr/share/deCONZ/webapp/
21:55:14:598 CTRL. 3.16.221:55:14:677 dev /dev/ttyAMA0
21:55:14:677 ZCLDB init file /root/.local/share/dresden-elektronik/deCONZ/zcldb.txt
21:55:14:835 parent process /bin/sh
21:55:14:835 gw run mode: normal
21:55:14:835 sd-card cid:<PHONE_NUMBER>33324780ffffffff012aa7
21:55:14:837 DB sqlite version 3.16.2
21:55:14:838 DB PRAGMA page_count: 30
21:55:14:838 DB PRAGMA page_size: 4096
21:55:14:838 DB PRAGMA freelist_count: 0
21:55:14:838 DB file size 122880 bytes, free pages 0
21:55:14:838 DB PRAGMA user_version: 6
21:55:14:838 DB cleanup
21:55:14:839 DB create temporary views
21:55:14:845 don't close database yet, keep open for 900 seconds
21:55:14:846 started websocket server at port 443
21:55:14:850 discovery updated announce interval to 10 minutes
21:55:14:853 found node plugin: libde_rest_plugin.so - REST API Plugin
21:55:14:857 found node plugin: libde_signal_plugin.so - Signal Monitor Plugin
21:55:14:873 found node plugin: libstd_otau_plugin.so - STD OTAU Plugin
21:55:14:906 dev /dev/ttyAMA0
21:55:14:952 discard sensor state push for 1: state/dark (already pushed)
21:55:14:954 discard sensor state push for 1: state/status (already pushed)
21:55:14:955 discard sensor state push for 1: state/lastupdated (already pushed)
21:55:15:770 dev /dev/ttyAMA0
21:55:15:806 dev /dev/ttyAMA0
21:55:16:856 dev /dev/ttyAMA0
21:55:16:909 dev /dev/ttyAMA0
21:55:17:808 dev /dev/ttyAMA0
21:55:17:841 dev /dev/ttyAMA0
21:55:18:811 dev /dev/ttyAMA0
21:55:18:848 dev /dev/ttyAMA0
21:55:19:811 dev /dev/ttyAMA0
21:55:19:858 dev /dev/ttyAMA0
21:55:20:142 dev /dev/ttyAMA0
21:55:20:142 GW update firmware found: /usr/share/deCONZ/firmware/deCONZ_Rpi_0x262d0500.bin.GCF
21:55:20:811 dev /dev/ttyAMA0
21:55:20:864 dev /dev/ttyAMA0
21:55:21:118 Announced to internet
21:55:21:118 discovery server date: Sun, 11 Nov 2018 21:55:21 GMT
21:55:21:118 	 local time seems to be ok
21:55:21:118 discovery found version 2.05.46 for update channel stable
21:55:21:811 dev /dev/ttyAMA0
21:55:21:873 dev /dev/ttyAMA0
21:55:22:811 dev /dev/ttyAMA0
21:55:22:879 dev /dev/ttyAMA0
21:55:23:813 dev /dev/ttyAMA0
21:55:23:889 dev /dev/ttyAMA0
21:55:24:805 dev /dev/ttyAMA0
21:55:24:838 dev /dev/ttyAMA0
21:55:25:808 dev /dev/ttyAMA0
21:55:25:841 dev /dev/ttyAMA0
21:55:26:814 dev /dev/ttyAMA0
21:55:26:850 dev /dev/ttyAMA0
21:55:27:813 dev /dev/ttyAMA0
21:55:27:858 dev /dev/ttyAMA0
21:55:28:812 dev /dev/ttyAMA0
21:55:28:865 dev /dev/ttyAMA0
21:55:29:357 scan skip host .2
21:55:29:812 dev /dev/ttyAMA0
21:55:29:874 dev /dev/ttyAMA0
21:55:30:814 dev /dev/ttyAMA0
21:55:30:884 dev /dev/ttyAMA0
21:55:31:799 dev /dev/ttyAMA0
21:55:31:832 dev /dev/ttyAMA0
21:55:32:804 dev /dev/ttyAMA0
21:55:32:837 dev /dev/ttyAMA0
21:55:33:810 dev /dev/ttyAMA0
21:55:33:843 dev /dev/ttyAMA0
21:55:34:811 dev /dev/ttyAMA0
21:55:34:847 dev /dev/ttyAMA0
21:55:35:812 dev /dev/ttyAMA0
21:55:35:853 dev /dev/ttyAMA0
21:55:36:811 dev /dev/ttyAMA0
21:55:36:858 dev /dev/ttyAMA0
21:55:37:811 dev /dev/ttyAMA0
21:55:37:863 dev /dev/ttyAMA0
21:55:38:812 dev /dev/ttyAMA0
21:55:38:874 dev /dev/ttyAMA0
21:55:39:814 dev /dev/ttyAMA0
21:55:39:882 dev /dev/ttyAMA0
21:55:40:812 dev /dev/ttyAMA0
21:55:40:888 dev /dev/ttyAMA0
21:55:41:860 dev /dev/ttyAMA0
21:55:41:917 dev /dev/ttyAMA0
21:55:42:813 dev /dev/ttyAMA0
21:55:42:848 dev /dev/ttyAMA0
21:55:43:816 dev /dev/ttyAMA0
21:55:43:895 dev /dev/ttyAMA0
21:55:43:904 scan finished
21:55:44:815 dev /dev/ttyAMA0
21:55:44:862 dev /dev/ttyAMA0
21:55:45:815 dev /dev/ttyAMA0
21:55:45:869 dev /dev/ttyAMA0
21:55:46:816 dev /dev/ttyAMA0
21:55:46:879 dev /dev/ttyAMA0
21:55:47:815 dev /dev/ttyAMA0
21:55:47:884 dev /dev/ttyAMA0
21:55:48:813 dev /dev/ttyAMA0
21:55:48:894 dev /dev/ttyAMA0
21:55:49:810 dev /dev/ttyAMA0
21:55:49:842 dev /dev/ttyAMA0
21:55:50:813 dev /dev/ttyAMA0
21:55:50:889 dev /dev/ttyAMA0
21:55:51:812 dev /dev/ttyAMA0
21:55:51:854 dev /dev/ttyAMA0
21:55:52:812 dev /dev/ttyAMA0
21:55:52:859 dev /dev/ttyAMA0
21:55:53:813 dev /dev/ttyAMA0
21:55:53:865 dev /dev/ttyAMA0

What am I missing?
Thank you
Regards
Mauro

BTW I realized there was a firmware upgrade and I did it but this didn't solved the issue
root@moon:/home/pi/script# docker run -it --rm --entrypoint "/firmware-update.sh" --privileged --cap-add=ALL -v /dev:/dev -v /lib/modules:/lib/modules -v /sys:/sys marthoc/deconz
-------------------------------------------------------------------

       marthoc/deconz Conbee/RaspBee Firmware Flashing Script

                       Version: 0.3

-------------------------------------------------------------------

Enter C for Conbee, R for RaspBee, or press Enter now to exit: c

Listing attached devices...

GCFFlasher V2_11 (c) dresden elektronik ingenieurtechnik gmbh 2017/12/10
RaspBee: /dev/ttyS0 (default)

       1  FTDI device found

 device | vendor | product | serial  | description
--------|--------|---------|---------|----------------------
   0    | 0x0403 | 0x6015  | DM01BKAU | FT230X Basic UART

Enter the Conbee device number, or press Enter now to exit.

Device Number : 0

-------------------------------------------------------------------

Firmware available for flashing:

deCONZ_Rpi_0x261f0500.bin.GCF
deCONZ_Rpi_0x262d0500.bin.GCF

Enter the firmware file name from above, including extension,
or press Enter now to exit.

File Name : deCONZ_Rpi_0x262d0500.bin.GCF

-------------------------------------------------------------------

Conbee Device Number: 0

Firmware File: deCONZ_Rpi_0x262d0500.bin.GCF

Are the above device and firmware values correct?
Enter Y to proceed, any other entry to exit: y

Flashing...

GCFFlasher V2_11 (c) dresden elektronik ingenieurtechnik gmbh 2017/12/10
using firmware file: /usr/share/deCONZ/firmware/deCONZ_Rpi_0x262d0500.bin.GCF
reset via FTDI

flashing 125440 bytes: |=============================|
verify: ....
SUCCESS

I think this may be your problem: /dev/ttyConBee. I'm not sure that Docker handles symlinks to devices very well (which is what you're creating with your udev rule). Try specifying /dev/ttyUSB1 and then also setting the environment variable DECONZ_DEVICE=/dev/ttyUSB1. The logs show that no device is detected (the constantly repeating /dev/ttyAMA0 is the giveaway).

The symlinks works. I'm using it

In that case, also specify DECONZ_DEVICE=/dev/ttyConBee.

I think this may be your problem: /dev/ttyConBee. I'm not sure that Docker handles symlinks to devices very well (which is what you're creating with your udev rule). Try specifying /dev/ttyUSB1 and then also setting the environment variable DECONZ_DEVICE=/dev/ttyUSB1. The logs show that no device is detected (the constantly repeating /dev/ttyAMA0 is the giveaway).

I used a specific /dev because I was unsure that deCONZ managed to recognize my device.
You confirmed it wasn't doing that.
I restart all the container from scratch adding your suggestion

In that case, also specify DECONZ_DEVICE=/dev/ttyConBee.

Here you are the log:
root@moon:/home/pi/scripts# docker logs deconz
[marthoc/deconz] Starting deCONZ...
[marthoc/deconz] Current deCONZ version: 2.05.44
[marthoc/deconz] Web UI port: 80
[marthoc/deconz] Websockets port: 443
libpng warning: iCCP: known incorrect sRGB profile
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
22:26:52:963 HTTP Server listen on address <IP_ADDRESS>, port: 80, root: /usr/share/deCONZ/webapp/
22:26:52:976 CTRL. 3.16.222:26:53:021 COM: --dev: /dev/ttyUSB0
22:26:53:055 dev /dev/ttyAMA0
22:26:53:056 COM: /dev/ttyUSB0 / serialno:
22:26:53:056 ZCLDB init file /root/.local/share/dresden-elektronik/deCONZ/zcldb.txt
22:26:53:217 parent process /bin/sh
22:26:53:217 gw run mode: normal
22:26:53:217 sd-card cid:<PHONE_NUMBER>33324780ffffffff012a17
22:26:53:219 DB sqlite version 3.16.2
22:26:53:221 DB PRAGMA page_count: 30
22:26:53:221 DB PRAGMA page_size: 4096
22:26:53:221 DB PRAGMA freelist_count: 0
22:26:53:221 DB file size 122880 bytes, free pages 0
22:26:53:221 DB PRAGMA user_version: 6
22:26:53:221 DB cleanup
22:26:53:221 DB create temporary views
22:26:53:227 don't close database yet, keep open for 900 seconds
22:26:53:229 started websocket server at port 443
22:26:53:232 discovery updated announce interval to 10 minutes
22:26:53:235 found node plugin: libde_rest_plugin.so - REST API Plugin
22:26:53:239 found node plugin: libde_signal_plugin.so - Signal Monitor Plugin
22:26:53:254 found node plugin: libstd_otau_plugin.so - STD OTAU Plugin
22:26:53:255 COM: --dev: /dev/ttyUSB0
22:26:53:288 dev /dev/ttyAMA0
22:26:53:288 COM: /dev/ttyUSB0 / serialno:
22:26:53:331 discard sensor state push for 1: state/dark (already pushed)
22:26:53:333 discard sensor state push for 1: state/status (already pushed)
22:26:53:394 Device firmware version 0x262D0500
22:26:53:406 discard sensor state push for 1: state/lastupdated (already pushed)
22:26:53:419 unlocked max nodes: 200
22:26:53:708 Device protocol version: 0x0108
22:26:53:726 new node - ext: 0x00212effff02a416, nwk: 0x0000
22:26:53:801 APS-DATA.request id: 3, addrmode: 0x02, addr: 0x0000, profile: 0x0000, cluster: 0x0002, ep: 0x00 -> 0x00 queue: 0 len: 3 tx.options 0x00
22:26:53:801 ZDP send request id: 0x03 to 0x00212effff02a416
22:26:53:916 Current channel 15
22:26:53:980 CTRL ANT_CTRL 0x02
22:26:54:092 Device protocol version: 0x0108
22:26:54:284 Current channel 15
22:26:54:348 CTRL ANT_CTRL 0x02
22:26:54:572 APS-DATA.confirm id: 3, status: 0x00 SUCCESS
22:26:54:572 APS-DATA.confirm request id: 3 -> confirmed, timeout 31532456
22:26:54:604 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8002, lqi: 0, rssi: 0
22:26:54:604 APS-DATA.indication request id: 3 -> finished
22:26:54:604 APS-DATA.request id: 3 erase from queue
22:26:54:604 ZDP status = 0x00 -> SUCCESS
22:26:54:606 don't close database yet, keep open for 900 seconds
22:26:54:761 ZDP active ep request to 0x00212effff02a416
22:26:54:761 APS-DATA.request id: 5, addrmode: 0x02, addr: 0x0000, profile: 0x0000, cluster: 0x0005, ep: 0x00 -> 0x00 queue: 0 len: 3 tx.options 0x00
22:26:54:762 ZDP send request id: 0x07 to 0x00212effff02a416
22:26:54:828 APS-DATA.confirm id: 5, status: 0x00 SUCCESS
22:26:54:828 APS-DATA.confirm request id: 5 -> confirmed, timeout 34123800
22:26:54:861 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8005, lqi: 0, rssi: 0
22:26:54:861 APS-DATA.indication request id: 5 -> finished
22:26:54:861 APS-DATA.request id: 5 erase from queue
22:26:54:861 ZDP status = 0x00 -> SUCCESS
22:26:54:861 ZDP active ep response for 0x00212effff02a416
22:26:54:861 	ep: 0x01
22:26:54:861 	ep: 0x50
22:26:55:081 APS-DATA.request id: 7, addrmode: 0x02, addr: 0x0000, profile: 0x0000, cluster: 0x0004, ep: 0x00 -> 0x00 queue: 0 len: 4 tx.options 0x00
22:26:55:081 ZDP send request id: 0x05 to 0x00212effff02a416
22:26:55:148 APS-DATA.confirm id: 7, status: 0x00 SUCCESS
22:26:55:148 APS-DATA.confirm request id: 7 -> confirmed, timeout 33859928
22:26:55:181 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8004, lqi: 0, rssi: 0
22:26:55:181 APS-DATA.indication request id: 7 -> finished
22:26:55:181 APS-DATA.request id: 7 erase from queue
22:26:55:181 ZDP status = 0x00 -> SUCCESS
22:26:55:184 don't close database yet, keep open for 900 seconds
22:26:55:241 APS-DATA.request id: 9, addrmode: 0x02, addr: 0x0000, profile: 0x0000, cluster: 0x0004, ep: 0x00 -> 0x00 queue: 0 len: 4 tx.options 0x00
22:26:55:242 ZDP send request id: 0x05 to 0x00212effff02a416
22:26:55:308 APS-DATA.confirm id: 9, status: 0x00 SUCCESS
22:26:55:308 APS-DATA.confirm request id: 9 -> confirmed, timeout 33853600
22:26:55:341 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8004, lqi: 0, rssi: 0
22:26:55:341 APS-DATA.indication request id: 9 -> finished
22:26:55:341 APS-DATA.request id: 9 erase from queue
22:26:55:341 ZDP status = 0x00 -> SUCCESS
22:26:55:344 don't close database yet, keep open for 900 seconds
22:26:55:481 ZDP discovery done in 301 ms22:26:55:641 Mgmt_Lqi_req zdpSeq: 4 to 0x00212EFFFF02A416 start index 0
22:26:55:642 APS-DATA.request id: 11, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:26:55:709 APS-DATA.confirm id: 11, status: 0x00 SUCCESS
22:26:55:709 APS-DATA.confirm request id: 11 -> confirmed, timeout 33867984
22:26:55:741 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:26:55:742 APS-DATA.indication request id: 11 -> finished
22:26:55:742 APS-DATA.request id: 11 erase from queue
22:26:55:742 ZDP status = 0x00 -> SUCCESS
22:26:55:742 ZDP Mgmt_Lqi_rsp zdpSeq: 4 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:26:58:041 Mgmt_Lqi_req zdpSeq: 5 to 0x00212EFFFF02A416 start index 0
22:26:58:041 APS-DATA.request id: 13, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:26:58:110 APS-DATA.confirm id: 13, status: 0x00 SUCCESS
22:26:58:110 APS-DATA.confirm request id: 13 -> confirmed, timeout 33870384
22:26:58:143 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:26:58:143 APS-DATA.indication request id: 13 -> finished
22:26:58:143 APS-DATA.request id: 13 erase from queue
22:26:58:143 ZDP status = 0x00 -> SUCCESS
22:26:58:143 ZDP Mgmt_Lqi_rsp zdpSeq: 5 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:26:58:524 dev /dev/ttyAMA0
22:26:58:527 GW update firmware found: /usr/share/deCONZ/firmware/deCONZ_Rpi_0x262d0500.bin.GCF
22:26:58:527 GW firmware version: 0x262d0500
22:26:58:527 GW firmware version is up to date: 0x262d0500
22:26:59:051 Announced to internet
22:26:59:052 discovery server date: Sat, 17 Nov 2018 21:26:58 GMT
22:26:59:052 	 local time seems to be ok
22:26:59:052 discovery found version 2.05.46 for update channel stable
22:27:00:442 Mgmt_Lqi_req zdpSeq: 6 to 0x00212EFFFF02A416 start index 0
22:27:00:442 APS-DATA.request id: 15, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:00:512 APS-DATA.confirm id: 15, status: 0x00 SUCCESS
22:27:00:512 APS-DATA.confirm request id: 15 -> confirmed, timeout 33869488
22:27:00:544 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:00:544 APS-DATA.indication request id: 15 -> finished
22:27:00:544 APS-DATA.request id: 15 erase from queue
22:27:00:544 ZDP status = 0x00 -> SUCCESS
22:27:00:544 ZDP Mgmt_Lqi_rsp zdpSeq: 6 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:02:842 Mgmt_Lqi_req zdpSeq: 7 to 0x00212EFFFF02A416 start index 0
22:27:02:842 APS-DATA.request id: 17, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:02:913 APS-DATA.confirm id: 17, status: 0x00 SUCCESS
22:27:02:914 APS-DATA.confirm request id: 17 -> confirmed, timeout 33880624
22:27:02:945 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:02:945 APS-DATA.indication request id: 17 -> finished
22:27:02:945 APS-DATA.request id: 17 erase from queue
22:27:02:945 ZDP status = 0x00 -> SUCCESS
22:27:02:945 ZDP Mgmt_Lqi_rsp zdpSeq: 7 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:05:242 Mgmt_Lqi_req zdpSeq: 8 to 0x00212EFFFF02A416 start index 0
22:27:05:242 APS-DATA.request id: 19, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:05:315 APS-DATA.confirm id: 19, status: 0x00 SUCCESS
22:27:05:315 APS-DATA.confirm request id: 19 -> confirmed, timeout 33886608
22:27:05:347 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:05:348 APS-DATA.indication request id: 19 -> finished
22:27:05:348 APS-DATA.request id: 19 erase from queue
22:27:05:348 ZDP status = 0x00 -> SUCCESS
22:27:05:348 ZDP Mgmt_Lqi_rsp zdpSeq: 8 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:05:441 CTRL db store gui node 00:21:2e:ff:ff:02:a4:16
22:27:05:443 saved node state in 1 ms
22:27:05:478 sync() in 35 ms
22:27:06:266 scan skip host .2
22:27:07:641 Mgmt_Lqi_req zdpSeq: 9 to 0x00212EFFFF02A416 start index 0
22:27:07:641 APS-DATA.request id: 21, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:07:717 APS-DATA.confirm id: 21, status: 0x00 SUCCESS
22:27:07:717 APS-DATA.confirm request id: 21 -> confirmed, timeout 33906232
22:27:07:749 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:07:749 APS-DATA.indication request id: 21 -> finished
22:27:07:749 APS-DATA.request id: 21 erase from queue
22:27:07:749 ZDP status = 0x00 -> SUCCESS
22:27:07:749 ZDP Mgmt_Lqi_rsp zdpSeq: 9 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:10:041 Mgmt_Lqi_req zdpSeq: 10 to 0x00212EFFFF02A416 start index 0
22:27:10:041 APS-DATA.request id: 23, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:10:102 APS-DATA.confirm id: 23, status: 0x00 SUCCESS
22:27:10:102 APS-DATA.confirm request id: 23 -> confirmed, timeout 33887784
22:27:10:135 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:10:135 APS-DATA.indication request id: 23 -> finished
22:27:10:135 APS-DATA.request id: 23 erase from queue
22:27:10:135 ZDP status = 0x00 -> SUCCESS
22:27:10:135 ZDP Mgmt_Lqi_rsp zdpSeq: 10 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:12:442 Mgmt_Lqi_req zdpSeq: 11 to 0x00212EFFFF02A416 start index 0
22:27:12:442 APS-DATA.request id: 25, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:12:503 APS-DATA.confirm id: 25, status: 0x00 SUCCESS
22:27:12:503 APS-DATA.confirm request id: 25 -> confirmed, timeout 33891064
22:27:12:536 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:12:536 APS-DATA.indication request id: 25 -> finished
22:27:12:536 APS-DATA.request id: 25 erase from queue
22:27:12:536 ZDP status = 0x00 -> SUCCESS
22:27:12:536 ZDP Mgmt_Lqi_rsp zdpSeq: 11 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:14:841 Mgmt_Lqi_req zdpSeq: 12 to 0x00212EFFFF02A416 start index 0
22:27:14:841 APS-DATA.request id: 27, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:14:906 APS-DATA.confirm id: 27, status: 0x00 SUCCESS
22:27:14:906 APS-DATA.confirm request id: 27 -> confirmed, timeout 33905280
22:27:14:937 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:14:937 APS-DATA.indication request id: 27 -> finished
22:27:14:937 APS-DATA.request id: 27 erase from queue
22:27:14:938 ZDP status = 0x00 -> SUCCESS
22:27:14:938 ZDP Mgmt_Lqi_rsp zdpSeq: 12 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:17:241 Mgmt_Lqi_req zdpSeq: 13 to 0x00212EFFFF02A416 start index 0
22:27:17:241 APS-DATA.request id: 29, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:17:307 APS-DATA.confirm id: 29, status: 0x00 SUCCESS
22:27:17:307 APS-DATA.confirm request id: 29 -> confirmed, timeout 33901648
22:27:17:340 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:17:340 APS-DATA.indication request id: 29 -> finished
22:27:17:340 APS-DATA.request id: 29 erase from queue
22:27:17:340 ZDP status = 0x00 -> SUCCESS
22:27:17:340 ZDP Mgmt_Lqi_rsp zdpSeq: 13 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:18:742 scan finished
22:27:19:642 Mgmt_Lqi_req zdpSeq: 14 to 0x00212EFFFF02A416 start index 0
22:27:19:642 APS-DATA.request id: 31, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:19:692 APS-DATA.confirm id: 31, status: 0x00 SUCCESS
22:27:19:692 APS-DATA.confirm request id: 31 -> confirmed, timeout 33910544
22:27:19:708 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:19:708 APS-DATA.indication request id: 31 -> finished
22:27:19:709 APS-DATA.request id: 31 erase from queue
22:27:19:709 ZDP status = 0x00 -> SUCCESS
22:27:19:709 ZDP Mgmt_Lqi_rsp zdpSeq: 14 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:22:041 Mgmt_Lqi_req zdpSeq: 15 to 0x00212EFFFF02A416 start index 0
22:27:22:041 APS-DATA.request id: 33, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:22:093 APS-DATA.confirm id: 33, status: 0x00 SUCCESS
22:27:22:093 APS-DATA.confirm request id: 33 -> confirmed, timeout 33900328
22:27:22:110 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:22:110 APS-DATA.indication request id: 33 -> finished
22:27:22:110 APS-DATA.request id: 33 erase from queue
22:27:22:110 ZDP status = 0x00 -> SUCCESS
22:27:22:110 ZDP Mgmt_Lqi_rsp zdpSeq: 15 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:24:441 Mgmt_Lqi_req zdpSeq: 16 to 0x00212EFFFF02A416 start index 0
22:27:24:441 APS-DATA.request id: 35, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:24:511 APS-DATA.confirm id: 35, status: 0x00 SUCCESS
22:27:24:511 APS-DATA.confirm request id: 35 -> confirmed, timeout 33900968
22:27:24:543 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:24:544 APS-DATA.indication request id: 35 -> finished
22:27:24:544 APS-DATA.request id: 35 erase from queue
22:27:24:544 ZDP status = 0x00 -> SUCCESS
22:27:24:544 ZDP Mgmt_Lqi_rsp zdpSeq: 16 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:26:842 Mgmt_Lqi_req zdpSeq: 17 to 0x00212EFFFF02A416 start index 0
22:27:26:842 APS-DATA.request id: 37, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:26:913 APS-DATA.confirm id: 37, status: 0x00 SUCCESS
22:27:26:913 APS-DATA.confirm request id: 37 -> confirmed, timeout 33910176
22:27:26:945 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:26:945 APS-DATA.indication request id: 37 -> finished
22:27:26:945 APS-DATA.request id: 37 erase from queue
22:27:26:945 ZDP status = 0x00 -> SUCCESS
22:27:26:945 ZDP Mgmt_Lqi_rsp zdpSeq: 17 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:29:241 Mgmt_Lqi_req zdpSeq: 18 to 0x00212EFFFF02A416 start index 0
22:27:29:241 APS-DATA.request id: 39, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:29:315 APS-DATA.confirm id: 39, status: 0x00 SUCCESS
22:27:29:315 APS-DATA.confirm request id: 39 -> confirmed, timeout 33911864
22:27:29:346 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:29:346 APS-DATA.indication request id: 39 -> finished
22:27:29:346 APS-DATA.request id: 39 erase from queue
22:27:29:346 ZDP status = 0x00 -> SUCCESS
22:27:29:346 ZDP Mgmt_Lqi_rsp zdpSeq: 18 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:31:641 Mgmt_Lqi_req zdpSeq: 19 to 0x00212EFFFF02A416 start index 0
22:27:31:641 APS-DATA.request id: 41, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:31:716 APS-DATA.confirm id: 41, status: 0x00 SUCCESS
22:27:31:716 APS-DATA.confirm request id: 41 -> confirmed, timeout 33900328
22:27:31:748 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:31:749 APS-DATA.indication request id: 41 -> finished
22:27:31:749 APS-DATA.request id: 41 erase from queue
22:27:31:749 ZDP status = 0x00 -> SUCCESS
22:27:31:749 ZDP Mgmt_Lqi_rsp zdpSeq: 19 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:34:041 Mgmt_Lqi_req zdpSeq: 20 to 0x00212EFFFF02A416 start index 0
22:27:34:041 APS-DATA.request id: 43, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:34:102 APS-DATA.confirm id: 43, status: 0x00 SUCCESS
22:27:34:102 APS-DATA.confirm request id: 43 -> confirmed, timeout 33896480
22:27:34:118 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:34:118 APS-DATA.indication request id: 43 -> finished
22:27:34:118 APS-DATA.request id: 43 erase from queue
22:27:34:118 ZDP status = 0x00 -> SUCCESS
22:27:34:118 ZDP Mgmt_Lqi_rsp zdpSeq: 20 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:36:441 Mgmt_Lqi_req zdpSeq: 21 to 0x00212EFFFF02A416 start index 0
22:27:36:441 APS-DATA.request id: 45, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:36:487 APS-DATA.confirm id: 45, status: 0x00 SUCCESS
22:27:36:487 APS-DATA.confirm request id: 45 -> confirmed, timeout 33911864
22:27:36:503 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:36:503 APS-DATA.indication request id: 45 -> finished
22:27:36:503 APS-DATA.request id: 45 erase from queue
22:27:36:503 ZDP status = 0x00 -> SUCCESS
22:27:36:503 ZDP Mgmt_Lqi_rsp zdpSeq: 21 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:38:449 Mgmt_Lqi_req zdpSeq: 22 to 0x00212EFFFF02A416 start index 0
22:27:38:449 APS-DATA.request id: 47, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:38:505 APS-DATA.confirm id: 47, status: 0x00 SUCCESS
22:27:38:505 APS-DATA.confirm request id: 47 -> confirmed, timeout 33912128
22:27:38:537 APS-DATA.indication srcAddr: 0x00212effff02a416, srcEp: 0x00 dstAddrMode: 2, profile: 0x0000, cluster: 0x8031, lqi: 0, rssi: 0
22:27:38:537 APS-DATA.indication request id: 47 -> finished
22:27:38:537 APS-DATA.request id: 47 erase from queue
22:27:38:537 ZDP status = 0x00 -> SUCCESS
22:27:38:537 ZDP Mgmt_Lqi_rsp zdpSeq: 22 from 0x00212EFFFF02A416 total: 0, startIndex: 0, listCount: 0
22:27:40:850 Mgmt_Lqi_req zdpSeq: 23 to 0x00212EFFFF02A416 start index 0
22:27:40:850 APS-DATA.request id: 49, addrmode: 0x03, addr: 0x00212effff02a416, profile: 0x0000, cluster: 0x0031, ep: 0x00 -> 0x00 queue: 0 len: 2 tx.options 0x00
22:27:40:906 APS-DATA.confirm id: 49, status: 0x00 SUCCESS
22:27:40:906 APS-DATA.confirm request id: 49 -> confirmed, timeout 33931288

Unfortunately In the Phoscon app page I cannot see any ConBee device anyway.

It is also possible to map back into usb0 inside of the container e.g ttyConbee:/dev/ttyUSB0

I would like to avoid the mapping confusion.
Starting from my dmseg output the rapspberry looks to see correctly the USB stick on USB0:
[120853.842328] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
[120854.001049] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6015
[120854.001058] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[120854.001062] usb 1-1.2: Product: FT230X Basic UART
[120854.001066] usb 1-1.2: Manufacturer: FTDI
[120854.001069] usb 1-1.2: SerialNumber: DM01BKAU
[120854.043214] usbcore: registered new interface driver usbserial
[120854.043246] usbcore: registered new interface driver usbserial_generic
[120854.043279] usbserial: USB Serial support registered for generic
[120854.052285] usbcore: registered new interface driver ftdi_sio
[120854.052728] usbserial: USB Serial support registered for FTDI USB Serial Device
[120854.052900] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
[120854.052979] usb 1-1.2: Detected FT-X
[120854.054153] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0

So withtouth modifing the configuratiion suggested in the readme I cannot figure out why deCONZ looks to ingore it.

Ok, I started all from scratch again.
Just to avoid any error due to routine I used this time a RaspBee instead of ConBee USB stick.
I used latest version of docker-deconz and HA container images too.
At the end of the process I went to http://my_raspbian_IP/login.htm and I found a device named Phoscon-GW.
Then I clicked on the button “open network” and went to HA->Configuration->Integration selecting deCONZ Zigbee gateway and I went through the procedure.
At the end appeared as configured a deCONZ zigbee gateway: de-CONZ- with a sun icon.
If i click on this HA opens a new page with two groups: Phoscon-GW and Daylight (which looks to be something by Philips).
Could you confirm that this is what I should obtain if RaspBee and deCONZ are well configured?

@mauog From the logs you posted it appears that both the Conbee and RaspBee were working. The integration with HA results means that the deCONZ software is operating properly, but this doesn't confirm that the Conbee/RaspBee is recognized by the software. If in the Phoscon interface under Gateway the firmware field is populated, this is a sign that the device is properly recognized.

I did some test with ConBee and RaspBee too.
Re-starting from scratch.
I found that the useful strategy was to upgrade the firmware of both ConBee and RaspBee.
In the end the key point is to see the device correctly seen by deCONZ. That means that deCONZ should tell that your gateway is seen on a specific channel and has a defined id both different from zero.
Hope this could help any other.
Thank You for your support.


DO NOT MERGE: Work needed to get logging working

This was the change I needed in PowerShell Editor Services in order to get logging to a file AND to the Lsp working.
The change I made in PSES as reference is here (there's some commentary in that code change): https://github.com/PowerShell/PowerShellEditorServices/pull/1058

I don't think we need this anymore


incorrect PDA seeds are one of the hardest things to debug

Just reflecting on the variety of issues faced during anchor development and debugging incorrect PDA seeds is one of the most difficult. Not proposing any particular solution. But anything that could be done to simplify or ease the process would be much appreciated.

I suspect part of this is due to the fact that seeds are a slice rather than, say, a struct with named fields.
Added logging might help. E.g., we could print out all seeds if the program is compiled with anchor-debug.

Would this also print out all the seeds from the client side too? Aside from bump issues, it's usually some mistake in the client side seeds (strings, pubkeys, ordering or otherwise)

We can add an analogous feature on the client side as well.

Cool, if it's doing that it might be possible to print out the client side seeds and rust side seeds and show them side by side / try to take a diff?
(I'm saying all of this without any real appreciation for how difficult it will probably be to do)

Cool, if it's doing that it might be possible to print out the client side seeds and rust side seeds and show them side by side / try to take a diff?
(I'm saying all of this without any real appreciation for how difficult it will probably be to do)

We could theoretically do that with events + tx simulation to funnel out the seeds from the rust side to the client side.

awesome


Honkai Impact Launcher Crashes Upon Pressing "Update" Button

Describe the bug
Launcher shows crash window upon pressing the "Update" button.
To Reproduce
Steps to reproduce the behavior:

Open E:\BetterHI3Launcher.exe and [OK] on UAC prompt to elevate launcher as Admin
Press "Update" button -> Crash
Note: Honkai Impact 3 folder was installed on "E:\Honkai Impact 3" on a previous OS installation, but is preserved on a fresh OS install.
See error log below

Expected behavior
Launcher should update game directory
Log
If you haven't closed the launcher yet, add the output of entire log window; otherwise search for the appropriate log in this path: %userprofile%\AppData\LocalLow\Bp\Better HI3 Launcher.
BetterHI3Launcher-latest.log
Screenshots
Launcher window:

Upon pressing update button:

Additional context
n/a

Can you send a screenshot of your E:\Honkai Impact 3 folder?

No need, I have reproduced the error and it will be fixed in the future, thank you for the report. For the time being you can use the official launcher to update the game.

Addressed in v1.5.20240423.0. Thank you for the report!


Invalid Date Exception while parsing

Parsing Issue/Bug
While parsing date string ("2075/04/32") to NepaliDate, exception occurs : "Invalid nepali date format"
To Reproduce
Run this code:
var parsedDate = NepaliDate.Parse("2075/04/32")

Hi @saileshrijal ,
Thanks for reaching out.
2075/04 only has day upto 31.
Trying to parse 32 gate is the reason for the exception.


Fix BMSByte.GetByteArray

Old method copied the four bytes of the array length into the start of the array and missed the last four bytes of the array.

Oh, maybe this bug is why i ended using another way to serialize data in binary rpcs, because bmsbyte was losing some bytes... xD (i thought i was using it wrong but had no time to check why didnt work)


task 403 : Creak

task 403 using creak
Addresses issue #208

Looks good to me, just one note: in your negative example, the output should be "False" in order for it to be incorrect.

Please pull the latest commits from allenai:master so the tests can be ran with these tasks.

LGTM! Just update the readme file with master branch.

Thank you!


Refactor aggregate_contigs function in rotary.smk for readability.

I already refactored this code a bit by pulling out the path below.
def aggregate_contigs(wildcards):
    # TODO - I do not further use this variable, but checkpoints needs to be called to trigger the checkpoint.
    # Am I doing something wrong?
    checkpoint_output = checkpoints.split_circular_and_linear_contigs.get(**wildcards).output[0]
    circularize_lists_path = f"{wildcards.sample}/circularize/filter/lists"

    return expand("{{sample}}/circularize/combine/{circular_or_linear}.fasta",
                  circular_or_linear=glob_wildcards(os.path.join(circularize_lists_path, "{i}.list")).i)

However, the glob wildcards bit should be pulled into its own variable and comments should be added to describe what is going on.

@jmtsuji When you get a chance, can you refactor this so most of the code isn't being passed directly into the return value? When the paths to the lists were inside the  os.path.join, I had much difficulty finding them when debugging.

@LeeBergstrand OK, will take a look.

Addressed in https://github.com/rotary-genomics/rotary/pull/149


Word blanks exercise under Basic JS have a small bug

Challenge Word Blanks has an issue.
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.

This can be very misleading for new coders like me as I/we think of not having to change var result = ""; but do something else. This exercise is actually otherwise an easy exercise.
This issue also could be related to #14630. Opened a new ticket as that was tagged beta.
PS: There is no mentioning on whom to tag when reporting an issue. It would be great if you guys could mention a person to tag to each ticket.

Hi @nikhilprabhakar
Well IMHO this can be considered bike-shedding because it's somewhat the point of figuring out what to do.
Nevertheless, let's update the challenge considering this is for new campers getting confused rather. Thanks for reporting.

PS: There is no mentioning on whom to tag when reporting an issue. It would be great if you guys could mention a person to tag to each ticket.

That's not required, someone from the team monitors the issue tracker and does the triage.
Happy Coding!

@JBallin Want to take a dig at this?

That's not required, someone from the team monitors the issue tracker and does the triage.

I was about to comment on the old issue related to this 👉  #14630. I was not sure if you guys get notified or not if I just comment on it which is why I created a new ticket. Which is why asked for a name to tag. Anyways, glad it acknowledged @raisedadead 👍

I haven't done a PR yet, I would like to do it if no one else wants to

@jonathanihm sure go ahead. It's always the one who opens up a valid PR, here are the Guidelines for Contributing.

#14630 != related, you were right to open a new issue:

Beta != production FCC
Output bug != template code issue

You're not supposed to change the variable declaration, only the your code here as instructed:

From JS Hoisting (w3):

Declare Your Variables At the Top !
Hoisting is (to many developers) an unknown or overlooked behavior of JavaScript. If a developer doesn't understand hoisting, programs may contain bugs (errors). To avoid bugs, always declare all variables at the beginning of every scope. Since this is how JavaScript interprets the code, it is always a good rule.

JavaScript in strict mode does not allow variables to be used if they are not declared.

function foo() {
  var result = "bar"
}

becomes the following when run:
function foo() {
  var result
  result = "bar"
}

writing your code this way is more clear!

Yes, you can declare var result directly in your code here which makes the initial declaration unnecessary but beginners who may not fully understand how hoisting works - you need to train yourself to understand that variables are hoisted at the top of their scope
#14630 actually has a solution that uses the template correctly where it references result within the your code here section. What's wrong with that solution?

The current template maximizes clarity:

Author wanted to declare var result as a string (='') for clarity/hand holding. What your suggesting is unclear - when it says your code here that means that it's all YOUR CODE, not something provided in the template that you are supposed to edit

@jonathanihm what changes do you plan to propose exactly?

Hey @JBallin,
Thanks for the input!  I opened a PR to move the line in between the comments.  A user would then be able to either declare an initial value or reassign result, it wouldn't matter.  I see what you are saying with the previous issue, and if we want to stay consistent and leave things how they are, we can revert the changes and add additional instructions to state that they will need to assign a new value to give users better direction (it doesn't state that we should reassign or leave the initial value alone, we could say it more verbosely in the instructions).
Please let me know!

@jonathanihm I think that both suggestions create too much hand holding.
What are your thoughts on briefly explaining hoisting in the description? I think this is a good habit to start building early on.

It is recommended to declare your variables at the top of your function before you use them:

function foo(){
  // declare variable myName as a string
  var myName = ""

  myName = "Quincy"
}

I was under the impression that this would go off into a long discussion, early on... 😅 !
Nevertheless, the reason we would want to make the change as proposed by the opening post and the PR are:

At this point in the curriculum, the campers are mostly unaware of what a function is and does (basically they aren't aware how scopes work).
They will get to know this after about 10-15 more challenges, until which they are expected to get familiar with basics, in this case playing with strings.
freeCodeCamp's focus at this stage is completely centered on teaching the basic concepts and introductions.

That said we aren't rejecting or ignoring any of the best practices, the only thing being they would be taken up in the video tutorials, and the wiki resources.
Simply, speaking, we are keeping things as simple and bare as possible for people to get started and not be 100% spec proof.
I honestly thank you for the feedback, but the concerns you have raised are completely valid and understood. Only thing is the format of the challenges with regards to this issue is not the place.
They can be taken in the video series, where best practices are taken assuming, people have basic understanding.
The opening poster's confusion is very valid at this point.

I definitely agree, we do want our coders to be learning best practices and code well- just how early on this lesson comes is of some concern.
Thanks all!


Add attribute when the link is active

I want to add aria-current="page" when the link is active.
Thank you for the Gem!

Duplicated


Comment tests

Add automated tests for CommentView
Update testing dependencies
Delete unused code :tada:

I think this is great, but always feel suspicious about big jumps in library versions. I defer to @xtine

I didn't run into any issues with the package upgrades. I'm not too familiar with Mocha so I trust @jmcarp on this, and hopefully I can learn more about testing from this. 😎

Updated layout in the fixture @xtine--thanks for the catch!


[Suggested Content:]Invoice Description Question to be answered

Please include what invoice details will show up on a purchase order or credit statement, such as abbreviations can be expected

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

ID: cf290c37-d7fa-9d10-b8ef-865647e58a70
Version Independent ID: 1334b162-8560-5e0a-c874-9439b697dd96
Content: Billing FAQ for Visual Studio Visual cloud subscriptions
Content Source: subscriptions/vscloud-billing-faq.md
Product: visual-studio-family
Technology: vs-subscriptions
GitHub Login: @evanwindom
Microsoft Alias: v-evwin

@seanatdp -- Sean, thank you for your feedback.
@evanwindom -- Evan, please look into this issue.

@seanatdp - Hi, Sean.  Thanks for your question.  The best place to get answers to questions about Azure instruments like invoices or statements would be in the Azure documentation, as it is written and maintained by people with the full context.  But you raise a good point.  I'll include a link in our article to relevant content on the Azure side.
https://docs.microsoft.com/en-us/azure/cost-management-billing/understand/understand-invoice

#please-close


Support git partial clones with sparse checkouts

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[x] Have you successfully run brew tests with your changes locally?

This adds a new option to enable downloads that use git partial clones with sparse checkouts, which can dramatically speed up clones of large repositories as well as reducing the checkout size on disk. The background and motivation is described in more detail in #13188.

Example (in a relatively small repo so there's not a huge difference)
Without partial clone and sparse checkout: 7.6s.
cask "sparse-test" do
  version :latest
  sha256 :no_check

  url "https://github.com/hmarr-testing/sparse-test",
      using:      :git,
      branch:     "main"

  name "Sparse test"

  artifact "food/cheese", target: '/tmp/cheese'
end

brew $ rm -rf /Users/hmarr/Library/Caches/Homebrew/Cask/sparse-test--git/
brew $ time bin/brew upgrade --cask hmarr/tap/sparse-test
==> Upgrading 1 outdated package:
hmarr/tap/sparse-test latest -> latest
==> Upgrading sparse-test
==> Cloning https://github.com/hmarr-testing/sparse-test
Cloning into '/Users/hmarr/Library/Caches/Homebrew/Cask/sparse-test--git'...
==> Checking out branch main
Already on 'main'
Your branch is up to date with 'origin/main'.
Warning: No checksum defined for cask 'sparse-test', skipping verification.
==> Backing Generic Artifact 'cheese' up to '/Users/hmarr/src/github.com/homebrew/brew/Caskroom/sparse-test/latest/food/cheese'
==> Removing Generic Artifact '/tmp/cheese'
==> Moving Generic Artifact 'cheese' to '/tmp/cheese'
==> Purging files for version latest of Cask sparse-test
🍺  sparse-test was successfully upgraded!
bin/brew upgrade --cask hmarr/tap/sparse-test  2.29s user 2.07s system 56% cpu 7.674 total

With partial clone and sparse checkout: 4.8s.
cask "sparse-test" do
  version :latest
  sha256 :no_check

  url "https://github.com/hmarr-testing/sparse-test",
      only_paths: ["food/cheese"],
      using:      :git,
      branch:     "main"

  name "Sparse test"

  artifact "food/cheese", target: '/tmp/cheese'
end

brew $ rm -rf /Users/hmarr/Library/Caches/Homebrew/Cask/sparse-test--git/                                                                                git-partial-clone-sparse-checkout
brew $ time bin/brew upgrade --cask hmarr/tap/sparse-test                                                                                git-partial-clone-sparse-checkout
==> Upgrading 1 outdated package:
hmarr/tap/sparse-test latest -> latest
==> Upgrading sparse-test
==> Cloning https://github.com/hmarr-testing/sparse-test
Cloning into '/Users/hmarr/Library/Caches/Homebrew/Cask/sparse-test--git'...
==> Checking out branch main
Already on 'main'
Your branch is up to date with 'origin/main'.
Warning: No checksum defined for cask 'sparse-test', skipping verification.
==> Backing Generic Artifact 'cheese' up to '/Users/hmarr/src/github.com/homebrew/brew/Caskroom/sparse-test/latest/food/cheese'
==> Removing Generic Artifact '/tmp/cheese'
==> Moving Generic Artifact 'cheese' to '/tmp/cheese'
==> Purging files for version latest of Cask sparse-test
🍺  sparse-test was successfully upgraded!
bin/brew upgrade --cask hmarr/tap/sparse-test  1.79s user 1.27s system 62% cpu 4.866 total

How it works
It relies on two git features working in tandem:

Partial clone with a filter of blob:none and the --no-checkout option to avoid fetching any blobs during the initial clone.
Sparse checkout to limit the working tree to only the paths specified. When git checkout is run, only the blobs required for the sparse checkout are fetched (thanks to the partial clone), then only those specified paths appear in the repository working tree.

The sparse checkout is created by enabling the core.sparseCheckout option, and writing the paths to .git/info/sparse-checkout. There is a git-sparse-checkout command that makes this easier, but I've avoided using it as it's relatively new and marked as experimental, and doesn't exist in older versions of git.
Git version compatibility
It's a little hard to find builds for old git versions, but I built sevearl load of versions git from source to see what worked.
Sparse checkouts work with git 2.19, but although there's some support for partial clones, they don't work well. It seems to fetch more blobs than are necessary, and it fetches them one at a time, which is very slow.
From git 2.20, both sparse checkouts and partial clones seem to work well. This is the version of git that comes with macOS 10.15, which is the minimum recommended macOS verison Homebrew supports right now. For earlier versions of git, the option is ignored, meaning the full repository is checked out. This feel in line with the "best effort" support guarantees for older versions of macOS that are promised.
Handling repository updates
I did some testing to make sure that things don't to awry after the initial clone.

A regular repository update works fine, including when additional paths are added to the array
If the formula starts using the only_paths option for the first time, the repository should be configured correctly to use partial clones and sparse checkouts
I haven't handled the reverse case where a formula author stops using only_paths. It's not totally trivial as sparse checkouts set the skip-worktree bit, which needs to be removed to transition from a sparse checkout to a full checkout. I can see three options:

When updating a repository, if only_paths is nil, check to see if the core.sparseCheckout option is enabled. If it is, set the paths in .git/info/sparse-checkout to *. This technically leaves the repository as a sparse checkout but includes all paths.
The same as (1), but afterwards clean up by turning off the core.sparseCheckout option and deleting the .git/info/sparse-checkout file after git checkout has been run.
Add a suffix like -sparse to the cache_tag if only_paths isn't nil, meaning we'd get a different cached repository if the option disabled.

Open questions / things I'd love feedback on

How to handle issue described above about handling the transition from a sparse checkout to a full checkout.
The option (only_paths) is an array of strings, where each string is a path that will be checked out. I suspect that most of the time people will only provide one path, so we could go with a string rather than an array.
Is the name only_paths clear enough? Other options I considered were sparse_checkout_paths, only_checkout_paths, paths_to_fetch.
I haven't written any new tests for this behaviour. It looks like there isn't much of a precedent for writing download strategy tests as the existing tests are a bit sparse. I'm happy to take your steer on what to do here.

Thanks for all your hard work keeping homebrew awesome! ❤

I haven't written any new tests for this behaviour. It looks like there isn't much of a precedent for writing download strategy tests as the existing tests are a bit sparse. I'm happy to take your steer on what to do here.

I'd be interested to see a PR to a homebrew-* repository which makes use of this new feature so we can see what the DSL looks like from that side.

Thanks for the review @MikeMcQuaid 🙌
Here's a draft PR showing how the new DSL could be used: https://github.com/Homebrew/homebrew-cask-fonts/pull/5758

Thanks @MikeMcQuaid!
Before merging, we should probably also decide on a way of handling upgrades from sparse to full checkouts (which would happen in the rare case someone removes only_paths). I listed the options I can see in the PR body, but they boil down to:

Add something to the cache key to separate sparse checkouts from full checkouts. This is the simpler option to implement, but means that if you remove only_paths you'd re-clone the repo from scratch.
Detect sparse checkouts and explicitly perform the upgrade when only_paths isn't specified. This would let us reuse the sparse checkout when upgrading to a full checkout, but I'm not convinced that marginal speed benefit in what must be a very rare case is worth the extra complexity in the download strategy code.

Add something to the cache key to separate sparse checkouts from full checkouts. This is the simpler option to implement, but means that if you remove only_paths you'd re-clone the repo from scratch.

This seems fine 👍🏻

@apainintheneck thanks for the heads up, I made that change in https://github.com/Homebrew/brew/pull/13232/commits/ccdd45dbb7322e60cdb72435e4c8c7562a0e7a8b
@MikeMcQuaid I made the change to the cache path for sparse checkouts in https://github.com/Homebrew/brew/pull/13232/commits/a8c9d3828ce74124341429d51b0be916fada8ea4. That was the last thing I had on my list, so I we're ready to go now. Once this is merged, we can start switching the font casks over to git from svn.

The url documentation over at the Cask Cookbook should also probably be updated at some point too.

@MikeMcQuaid good point! I just replied to your comments there (been away for a couple of weeks, sorry for being slow to get back to you 🐢)

@hmarr Thanks! Replied over there.


Implement peer discovery in LAN

This would likely be done using MDNS.
@fabricedesre mentioned he uses https://github.com/WilliamVenner/searchlight successfully for this.

This would probably be needed to get very principled local first applications such as https://github.com/Actyx/Actyx to adopt iroh.
Two devices in the same airgapped network should be able to find each other without a relay.

No this is not done, both PRs had some issues, and we do not have a good solution implemented yet.

@ramfox this can be closed, right?

yes


Some modules never start in production mode when startBlocks are different

Context:
When running a substreams with module A(store) and module B(mapper that depends on store A), requesting the outputModule to be "B":
Issue:
If module A and module B have different values for "Initial Block", the processing is broken in production-mode: no job for module "B" is ever scheduled, there are only lots of scheduled jobs for "A".
Workarounds:

If we align those initial blocks, it fixes the issue and the processing works.
If we run without production-mode, it also fixes the issue.

Somewhere around the scheduler or splitting into jobs, there must be a bug...

Issue was encountered with this:

output_module: map_vault_asset_transfers
on our public endpoint as well as our (internal unstable) endpoint

Package name: enzyme
Version: v0.1.0
Modules:
----
Name: map_vault_creations
Initial block: 11681281
Kind: map
Output Type: proto:enzyme.vaults.v1.Vaults
Hash: 09cb4894f6a467ce6810db708c34082b0c99d910

Name: map_vault_share_transfers
Initial block: 11681299
Kind: map
Output Type: proto:enzyme.vaults.v1.VaultShareTransfers
Hash: 11887fd2843408a1cbbd38385ec5a3ba85464d73

Name: map_vault_asset_transfers
Initial block: 11681299
Kind: map
Output Type: proto:enzyme.vaults.v1.VaultAssetTransfers
Hash: b67c69455e601910e96687f60453af0736a577d8

Name: store_vault_proxies
Initial block: 11681281
Kind: store
Value Type: string
Update Policy: UPDATE_POLICY_SET
Hash: 242fc4b2b5d4cf65b5d2cfd988b7ed2d2a2ff936

In production mode, I'm also seeing incorrectly formatted typeUrls:
ModuleOutput {
      name: 'map_vault_share_transfers',
      data: {
        case: 'mapOutput',
        value: Any {
          typeUrl: 'type.googleapis.com/proto:enzyme.vaults.v1.VaultShareTransfers',
          value: [Uint8Array]
        }
      }
	  ...
}

This issue is now also reproducible for me if all start blocks are actrually the same. So not sure if that's the cause actually.

The proto problem was indeed fixed by @jubeless. Thanks for that!
I can't reproduce the other issue anymore so that might've been fixed as a side effect of some other work.


PM unable to initialize configuration

Trying to deploy package manager with sharedStorage against an azurefile-csi-premium storage class. Receiving the error while pods are started:
cannot chown /var/lib/rstudio-pm/launcher_internal/rstudio-pm-c57cbcf88-5kmgx/secure-cookie-key to 0600: chmod /var/lib/rstudio-pm/launcher_internal/rstudio-pm-c57cbcf88-5kmgx/secure-cookie-key: operation not permitted
Configuration values:
sharedStorage:
  create: true
  mount: true
  storageClassName: rstudio-pm-azurefile-csi-premium
  requests:
    storage: 100Gi

extraObjects:
  - |
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: rstudio-pm-azurefile-csi-premium
    provisioner: file.csi.azure.com
    allowVolumeExpansion: true
    parameters:
      skuName: Premium_LRS
    reclaimPolicy: Delete
    volumeBindingMode: Immediate
    mountOptions:
      - mfsymlinks
      - actimeo=30

I tried adding dir_mode and file_mode to the mountOptions like what is required in Connect, but that didn't work either.

Using the 0.4.0-rc01 version. I tried setting enableMigration to false and still get the same issue. If I recreate the shared storage with the file_mode and dir_mode set to 0600 the error becomes Error: Unable to initialize the configuration: chmod /var/lib/rstudio-pm: operation not permitted

And if you create from scratch without file_mode and dir_mode, that fails too, correct? It's weird because RSPM should be creating this file and then should not need to chown it unless the file was already created
This is quite strange! Would you mind either creating a support ticket and referencing this issue or reaching out to your account representative? You can reference this issue! It'd be good to hop on a call and try to get this resolved for you!

Yes thanks, request # 81379 has been submitted.

We eventually got to the bottom of this - it seems that AzureFilesPremiumCSI has some conventions around file_mode, dir_mode, uid, and gid that make behavior a bit tricky. Moreover, we had issues with SQLite functioning properly as well.
The magic incantation was:

using PostgreSQL
Setting uid==gid==999
turning off dir_mode and file_mode (which provides 777). 700 also seemed promising

Thanks for the help.

We eventually got to the bottom of this - it seems that AzureFilesPremiumCSI has some conventions around file_mode, dir_mode, uid, and gid that make behavior a bit tricky. Moreover, we had issues with SQLite functioning properly as well. (it was complaining about lock contention when only one node was in play. We suspect the filesystem as the cause).
The magic incantation was:

using PostgreSQL
Setting uid==gid==999
turning off dir_mode and file_mode (which provides 777). 700 also seemed promising

Let us know if you run into any more issues! Thanks for your patience as we got to the bottom of the issue!
EDIT: It's worth noting that we have some concern that uid==gid settings could cause issues for Workbench and Connect. We should do more testing in this vein.

Hi @colearendt -- I'm running into some similar issues.  I know this is closed, but I'm wonder if you can share the exact config that ended up working with Azure files?  When I set the dir/file modes to 0600, I can get everything to run, but all jobs fail because of file system access issues.  However, when I set it to 0777/0700 or just remove file_mode/dir_mode altogether, I always get an error like Unable to apply the configuration: Encryption key file mode must be 0600: /var/lib/rstudio-connect/db/secret.key".  I'm hoping I'm missing a small piece of configuration to make it work.  Thanks!

I had a similar error. I was using EKS w/ a EBS volume. I fixed it by removing the EBS volume, using a external postgres DB, S3 for storage, and making sure to specify the following:
pod:
  securityContext:
    fsGroup: 999


Bug: Validating POST body fails with BedrockAgentResolver

Discussed in https://github.com/aws-powertools/powertools-lambda-python/discussions/3893

Originally posted by robk1234 March  6, 2024
What is the correct way to validate the POST body with BedrockAgent Resolver?  I am getting a key error when I try with the following code:
from pydantic import EmailStr
from typing_extensions import Annotated

from aws_lambda_powertools import Logger, Tracer
from aws_lambda_powertools.event_handler import BedrockAgentResolver
from aws_lambda_powertools.event_handler.openapi.params import Body, Query
from aws_lambda_powertools.utilities.typing import LambdaContext

tracer = Tracer()
logger = Logger()

app = BedrockAgentResolver()

@app.post('/email', description="Validate an Email via post body")
def post_body_email(email: Annotated[EmailStr, Body(description="Email address to validate")],
         ) -> Annotated[bool, Body(description="returns true if I like the email")]:
    return True

@app.get('/email', description="Validate email via get request")
def get_email(email: Annotated[EmailStr, Query(description="Email address to validate")]
             )->Annotated[bool, Body(description="Returns True if I like the email")]:
    return True

@logger.inject_lambda_context
@tracer.capture_lambda_handler
def lambda_handler(event: dict, context: LambdaContext):
    return app.resolve(event, context)

if __name__ == "__main__":
    print(app.get_openapi_json_schema())

The GET Request works fine:
{
    "sessionId": "123456789012345",
    "sessionAttributes": {},
    "inputText": "Validate an email via get",
    "promptSessionAttributes": {},
    "apiPath": "/email",
    "parameters": [
      {
        "name": "email",
        "type": "string",
        "value"<EMAIL_ADDRESS>      }
    ],
    "agent": {
      "name": "TimeAgent",
      "version": "DRAFT",
      "id": "XLHH72XNF2",
      "alias": "TSTALIASID"
    },
    "httpMethod": "GET",
    "messageVersion": "1.0",
    "actionGroup": "SupportAssistant"
  }

Output is:
➜  test_lambda sam local invoke --event events/bedrock.json ApiFunction
Invoking app.lambda_handler (python3.12)
Local image is up-to-date
Using local image: public.ecr.aws/lambda/python:3.12-rapid-x86_64.

Mounting /Users/rklages/git/rob/test_lambda/.aws-sam/build/ApiFunction as /var/task:ro,delegated, inside runtime container
START RequestId: b783d02d-bb17-449b-b7c8-3671475fac6b Version: $LATEST
[WARNING]	2024-03-06T19:34:56.315Z	8bc618fb-4c0f-4847-9cb6-de8ddc744fb1	Subsegment ## lambda_handler discarded due to Lambda worker still initializing
[WARNING]	2024-03-06T19:34:57.013Z	8bc618fb-4c0f-4847-9cb6-de8ddc744fb1	No subsegment to end.
END RequestId: 8bc618fb-4c0f-4847-9cb6-de8ddc744fb1
REPORT RequestId: 8bc618fb-4c0f-4847-9cb6-de8ddc744fb1	Init Duration: 0.92 ms	Duration: 6873.37 ms	Billed Duration: 6874 ms	Memory Size: 128 MB	Max Memory Used: 128 MB
{"messageVersion": "1.0", "response": {"actionGroup": "SupportAssistant", "apiPath": "/email", "httpMethod": "GET", "httpStatusCode": 200, "responseBody": {"application/json": {"body": "true"}}}}

With the POST payload:
{
  "sessionId": "123456789012345",
  "sessionAttributes": {},
  "inputText": "Please validate email<EMAIL_ADDRESS>via POST",
  "promptSessionAttributes": {},
  "apiPath": "/email",
  "requestBody": {
      "application/json": {
        "properties": [
          {
            "name": "email",
            "type": "string",
            "value"<EMAIL_ADDRESS>          }
        ]
      }

  },
  "agent": {
    "name": "TimeAgent",
    "version": "DRAFT",
    "id": "XLHH72XNF2",
    "alias": "TSTALIASID"
  },
  "parameters": [],
  "httpMethod": "POST",
  "messageVersion": "1.0",
  "actionGroup": "SupportAssistant"
}

I'm getting the following error:
➜  test_lambda sam local invoke --event events/bedrock_post.json ApiFunction
Invoking app.lambda_handler (python3.12)
Local image is up-to-date
Using local image: public.ecr.aws/lambda/python:3.12-rapid-x86_64.

Mounting /Users/rklages/git/rob/test_lambda/.aws-sam/build/ApiFunction as /var/task:ro,delegated, inside runtime container
START RequestId: d785f329-b65b-4ef1-b55c-2c91e4adbd5d Version: $LATEST
[WARNING]	2024-03-06T19:36:01.835Z	7d6e024a-be8d-495d-976f-c30fc60cf218	Subsegment ## lambda_handler discarded due to Lambda worker still initializing
[WARNING]	2024-03-06T19:36:02.177Z	7d6e024a-be8d-495d-976f-c30fc60cf218	No subsegment to end.
LAMBDA_WARNING: Unhandled exception. The most likely cause is an issue in the function code. However, in rare cases, a Lambda runtime update can cause unexpected function behavior. For functions using managed runtimes, runtime updates can be triggered by a function change, or can be applied automatically. To determine if the runtime has been updated, check the runtime version in the INIT_START log entry. If this error correlates with a change in the runtime version, you may be able to mitigate this error by temporarily rolling back to the previous runtime version. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html
[ERROR] KeyError: 'body'
Traceback (most recent call last):
  File "/var/task/aws_lambda_powertools/logging/logger.py", line 447, in decorate
    return lambda_handler(event, context, *args, **kwargs)
  File "/var/task/aws_lambda_powertools/tracing/tracer.py", line 313, in decorate
    response = lambda_handler(event, context, **kwargs)
  File "/var/task/app.py", line 34, in lambda_handler
    return app.resolve(event, context)
  File "/var/task/aws_lambda_powertools/event_handler/api_gateway.py", line 1815, in resolve
    response = self._resolve().build(self.current_event, self._cors)
  File "/var/task/aws_lambda_powertools/event_handler/api_gateway.py", line 1922, in _resolve
    return self._call_route(route, route_keys)  # pass fn args
  File "/var/task/aws_lambda_powertools/event_handler/api_gateway.py", line 2000, in _call_route
    route(router_middlewares=self._router_middlewares, app=self, route_arguments=route_arguments),
  File "/var/task/aws_lambda_powertools/event_handler/api_gateway.py", line 400, in __call__
    return self._middleware_stack(app)
  File "/var/task/aws_lambda_powertools/event_handler/api_gateway.py", line 1291, in __call__
    return self.current_middleware(app, self.next_middleware)
  File "/var/task/aws_lambda_powertools/event_handler/middlewares/base.py", line 121, in __call__
    return self.handler(app, next_middleware)
  File "/var/task/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py", line 105, in handler
    received_body=self._get_body(app),
  File "/var/task/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py", line 230, in _get_body
    return app.current_event.json_body
  File "/var/lang/lib/python3.12/functools.py", line 995, in __get__
    val = self.func(instance)
  File "/var/task/aws_lambda_powertools/utilities/data_classes/common.py", line 153, in json_body
    return self._json_deserializer(self.decoded_body)
  File "/var/lang/lib/python3.12/functools.py", line 995, in __get__
    val = self.func(instance)
  File "/var/task/aws_lambda_powertools/utilities/data_classes/common.py", line 158, in decoded_body
    body: str = self["body"]
  File "/var/task/aws_lambda_powertools/utilities/data_classes/common.py", line 32, in __getitem__
    return self._data[key]
END RequestId: 7d6e024a-be8d-495d-976f-c30fc60cf218
REPORT RequestId: 7d6e024a-be8d-495d-976f-c30fc60cf218	Init Duration: 0.89 ms	Duration: 6576.10 ms	Billed Duration: 6577 ms	Memory Size: 128 MB	Max Memory Used: 128 MB
{"errorMessage": "'body'", "errorType": "KeyError", "requestId": "7d6e024a-be8d-495d-976f-c30fc60cf218", "stackTrace": ["  File \"/var/task/aws_lambda_powertools/logging/logger.py\", line 447, in decorate\n    return lambda_handler(event, context, *args, **kwargs)\n", "  File \"/var/task/aws_lambda_powertools/tracing/tracer.py\", line 313, in decorate\n    response = lambda_handler(event, context, **kwargs)\n", "  File \"/var/task/app.py\", line 34, in lambda_handler\n    return app.resolve(event, context)\n", "  File \"/var/task/aws_lambda_powertools/event_handler/api_gateway.py\", line 1815, in resolve\n    response = self._resolve().build(self.current_event, self._cors)\n", "  File \"/var/task/aws_lambda_powertools/event_handler/api_gateway.py\", line 1922, in _resolve\n    return self._call_route(route, route_keys)  # pass fn args\n", "  File \"/var/task/aws_lambda_powertools/event_handler/api_gateway.py\", line 2000, in _call_route\n    route(router_middlewares=self._router_middlewares, app=self, route_arguments=route_arguments),\n", "  File \"/var/task/aws_lambda_powertools/event_handler/api_gateway.py\", line 400, in __call__\n    return self._middleware_stack(app)\n", "  File \"/var/task/aws_lambda_powertools/event_handler/api_gateway.py\", line 1291, in __call__\n    return self.current_middleware(app, self.next_middleware)\n", "  File \"/var/task/aws_lambda_powertools/event_handler/middlewares/base.py\", line 121, in __call__\n    return self.handler(app, next_middleware)\n", "  File \"/var/task/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py\", line 105, in handler\n    received_body=self._get_body(app),\n", "  File \"/var/task/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py\", line 230, in _get_body\n    return app.current_event.json_body\n", "  File \"/var/lang/lib/python3.12/functools.py\", line 995, in __get__\n    val = self.func(instance)\n", "  File \"/var/task/aws_lambda_powertools/utilities/data_classes/common.py\", line 153, in json_body\n    return self._json_deserializer(self.decoded_body)\n", "  File \"/var/lang/lib/python3.12/functools.py\", line 995, in __get__\n    val = self.func(instance)\n", "  File \"/var/task/aws_lambda_powertools/utilities/data_classes/common.py\", line 158, in decoded_body\n    body: str = self[\"body\"]\n", "  File \"/var/task/aws_lambda_powertools/utilities/data_classes/common.py\", line 32, in __getitem__\n    return self._data[key]\n"]}
```</div>

Thank you @robk1234 for reporting this. Working on a fix.


Test nano IDs to ensure links work

Before Sep 3rd, we need to ensure the nano ID links are working.

What are you trying to test here?
We know, based on prior testing that the code works, so is the confirmation / verification of the configuration in prod?

Once the nano IDs are available, we would like them to confirm they are all operational. @nsmenon8890 and the OCM team can do this.

I think there some misunderstanding here.
The nanoids work and have been tested a lot.
They are just a token and you can either generate them for manual invites, or they get generated as part of the ar_reminder email.
The link in the AR_Reminder is already in production, and working.
If you want to do further testing (or as some others might call it, validation) in production, that can be done, if there's a goal / reason to do so?

Waiting for Nano Ids to be generated in PROD, and then click on links and confirm they work.


fix(rest): return back to fetch spezifications

more sortof a reminder for now

This change is

Reminder to what? Call me a sceptic, or annoying, but I disagree with this. :p

no problem. particularly since i was the one having problems with 'ok' initially. however, my problem seems to be solved, and generally it's probably a good idea to follow standards.
anyways, what i didn't mention is that 'ok' is defined as >=200 <=299

Want to leave this open until someone needs it? I think we'd best close it otherwise.


[Bug]: "No Such File Or Directory" errors should include what file or directory is missing

Issue description
Users who get errors like this should be able to know what is the missing or problem file or directory:

Relevant log output
No response
Priority this issue should have
Medium (should be fixed soon)

I checked the files for the order and found one number missing at arount 889, both the PNG and the JSON. Still I was suprised hashlips is creating such a empty spot. Whatever now I am running sugar launch and I am in the uploading momentum of the tool ✌❤😎😎😎

I am working on a refactoring of the upload so I will address this in it.

Fixed by #238


Update task.md

language checked

@stephen-hero Please bring back the titles of the modules that have stuff in backticks. "Using Clause for ..." means something completely different from "using Clause for ...".

On second thought, accepted


DOC: improve docs on iteration

As this comes up once in a while, I tried to improve/clarify the docs somewhat.
Further suggestions to add or make it clearer are welcome!
xref #10334
closes #7194

@shoyer thanks, I forgot to note that, added now!

@jreback @shoyer I added some further warnings / alternatives (also about setting in a loop, so this should now also address #7194). You can have a new look.

looks great! (minor comment on the reference to enhancingperf)


Where is the Bcrypt salt?

Still trying to migrate from Coherence.
Not sure my previous issue is fixed, but now it seems like the comparison occurs, but the encrypted password is different from the one stored.
I tried to dive into comeonin and bcrypt to understand what's going on, and my guess is that the salt to the encryption methods is different.
Hence my question: where does the salt come from? It doesn't seem to be in a kind of config entry, and sometimes it is hash_pwd_salt\1 available, sometimes hashpwdsalt\2 so I'm confused.
How can I make sure not all my users will have to reset their password? :smile:
Cheers

Unsure of how pow is doing it specifically, but bcrypt itself has the salt be part of the encrypted data.  Something like "$enctype$salt$encdata" or something like that.

Make sure that you are using the same version of Comeonin as when you started the project.
I did some searches on Coherence and Comeonin which didn't show any breaking changes.

https://github.com/smpallen99/coherence/search?q=password_hashing_alg&unscoped_q=password_hashing_alg
https://github.com/riverrun/comeonin/blob/master/CHANGELOG.md

Maybe this is a good occasion to actually force your users to reset there password and use something else then bcrypt like Argon2.

@OvermindDL1 is correct, the salt is part of the stored password hash value.
@Schultzer is also correct that this most likely is just an issue with configuration of comeonin. It definitely worked the last time I tested the guide.
Seems like there has been some changes with comeonin v5 so the macro opts now should be:
defmodule MyApp.User do
  use Ecto.Schema
  use Pow.Ecto.Schema,
    password_hash_methods: {&Bcrypt.hash_pwd_salt/1,
                            &Bcrypt.verify_pass/2}

  # ...
end

I'll have to adjust the guide.

Thanks for your support guys.
I'm very confused because the mistake was on my side: I forgot that I had been importing the production DB locally so my password had changed in between.
It works very well for me now, with
  use Pow.Ecto.Schema,
    password_hash_methods: {&Bcrypt.hash_pwd_salt/1,
                            &Bcrypt.verify_pass/2}

      {:pow, "~> 1.0.18"},
      {:bcrypt_elixir, "~> 1.1.1"}, # the actual version that was in my mix.lock

Comeonin doesn't seem to be even required.


[sequencer] Blocks are being created with a future timestamp

Found in the logs of the aztec-node when running the docker-compose.provernet.yml template:
aztec-provernet-aztec-node-1           | 2024-08-12T14:58:21.412Z aztec:sequencer [DEBUG] Not creating block because not enough time has passed since last block (last block at<PHONE_NUMBER> current time<PHONE_NUMBER>)

Note that last block timestamp (which is defined by the same sequencer, as we have only one sequencer on this setup) is greater than the current time. We need to identify whether this is an anvil issue or a sequencer issue.

This is expected from https://github.com/AztecProtocol/aztec3-packages/issues/7758


Stop consuming messages

Hello there! Is there a way (a signal to send?) to say to the consumer to finish consuming the message and then stop? This would be needed to gracefully update the worker
Thanks!

Hi @sroze
Unfortunately there is not in the current version. I'm just restarting consumers with supervisor on a rather busy queue and haven't experienced any loss of messages so far in the last 2 years. But I can't disagree a graceful restart would be much better. If you're willing to contribute this I'll be happy to merge it.

So do I need to kill the server process to stop consuming then ?


Some checks failing with newest version of Rubocop

After upgrading to Rubocop (0.37.0), we're seeing these errors:
choose_upload_method.html.haml:1 [W] RuboCop: unexpected token kDO
(Using Ruby 2.1 parser; configure using `TargetRubyVersion` parameter, under `AllCops`)
choose_upload_method.html.haml:2 [W] RuboCop: unexpected token tSYMBOL
(Using Ruby 2.1 parser; configure using `TargetRubyVersion` parameter, under `AllCops`)

Using this code to repro:
= form_for @wizard do |form|
  = form.hidden_field :name

Thanks for the report, @jordynchuhaloff.
The example you provided gets converted to the following Ruby when passed to RuboCop:
form_for @wizard do |form|
  form.hidden_field :name
end

When I run RuboCop 0.37.0 against the above Ruby, I get the same errors you report. Upgrading to RuboCop 0.37.1 fixes the issue, so this was a problem with RuboCop. Hope that helps!

Updated rubocop and it works for me too. Thank you!!


New version: WHONET.WHONET version 24.6.17

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[x] Is there a linked Issue?

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

/AzurePipelines run

Hi @stephengillie, I'm seeing some odd discordance with the error messages. It shows that "all checks have passed", but it also has the "Validation-Installation-Error" label AND the "Azure-Pipeline-Passed" and "Validation-Completed". When I look into the Azure logs, that particular job doesn't list a cause for the failure (I have tested both installers, no problems installing them manually). Any suggestions? Thanks.

Thank you. Is it possible to re-run this pipeline to see if it completes successfully?

/azp run

Happily. I was going to just approve, but no worreis.

Thanks. Mostly just curiosity, but if it succeeds that would be useful info for your investigation.

A small detail of my release process that might support your race condition/interference theory: Immediately following the PR request being generated by wingetcreate as part of my script, I go into GitHub and manually edit the locale.yml file because I am missing the ReleaseNotes and ReleaseNotesUrl values, which will cause validation to subsequently fail if I don't.
The system would then trigger the pipeline a second time (within a minute or so) possibly leading to the race issue.
Of course, I would prefer not to edit the .yml, but I can't find any docs which would let me specify the values for these using a command line flag or settings file. Any help there would be greatly appreciated, and would probably prevent the race issue for my case at least.

This is good to know, and should be recorded as an Issue, possibly a Feature-Request.


No platform for mac or linux - similar to #1050

added Bundler::MAC and Bundler::LINUX constants based on RbConfig
added :mac and :linux platforms to Bundler::Dependency::PLATFORM_MAP
updated docs

Sorry for the duplicate ticket!

Thanks for the patch! Unfortunately, I can't use this particular solution, as I explained in your other ticket. I'm open to discussing other options, though.


Allow usage of etcd serializable reads

Hello,
I noticed that easyKV uses linearizable reads with both etcd v2 (where is is specified as an option Quorum: true) and with etcd v3 (where it is the implicit default).
Linearizable reads are interesting, but come with a latency cost, which not everybody is willing to pay. I think it would be good to allow this to be configured, I am therefore submitting PR #14.

A corresponding request for remco will follow shortly. :-)


Add option to use native binaries in dep factory

Description of changes
Until now, the executable builder always decided if docker needed to be used or not, based on an env var. This made the constructor take all the arguments, even when some of them aren't needed. Moreover, in order to build local native executables programmatically through the factory, we needed to set an env var and force the use of a "fake" tools image.
Now the factory has an specific option to use docker or not. If it's not set, it will default to the value of the env var, keeping current behavior. But it allows to override it.
The executables builder has changed quite a bit. Now we have two constructors for it, one for the docker implementation and another one for the local binaries one. The deps factory decided which one to call.
I also separated the builder construction from the container initialization. I added a helper that does both together in order to keep the refactor of all usages at a minimum.
You'll see a lot of tests (and some changes) that seem unrelated to this feature. They are. The code was difficult to test and was missing a lot of tests, so I had to change some things around in order to be able to test. It's not perfect but I think it's better than what we had. If we want to make it good, we probably need a bigger more focused refactor, most probably splitting this package and moving things around.
Testing (if applicable)
Unit tests
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


Refactor pion-to-pion-tricke example

To use a js compatible candidate buffering pattern

Codecov Report

Merging #825 into master will increase coverage by 0.14%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #825      +/-   ##
==========================================
+ Coverage   76.39%   76.53%   +0.14%
==========================================
  Files          59       59
  Lines        4249     4249
==========================================
+ Hits         3246     3252       +6
+ Misses        729      724       -5
+ Partials      274      273       -1

Impacted Files
Coverage Δ

dtlstransport.go
68.02% <0%> (+1.16%)
:arrow_up:

internal/mux/mux.go
90.76% <0%> (+6.15%)
:arrow_up:

Continue to review full report at Codecov.

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


Add CleanShot

NOTE: Each discrete (stand-alone) request should be in its own issue.
Put "Add ____" as Title

[x] Done

Provide a link to the proposed addition.
https://getcleanshot.com/
Explain why it should be added
One of the best tool to capture screenshot and create gif video
Additional context
Issue Checklist
Put an x in the boxes once you've completed each step. You can also fill these out after creating the issue. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before responding to the issue.

[x] I have checked for other similar issues
[x] I have explained why this change is important
[x] I have added necessary documentation (if appropriate)

Could you please create a PR, I'll merge it.


Refactor get_authorized_nodes() method to return a list of PeerIDs

Description

Fixes pyrsia/pyrsia#1523
This PR refactors get_authorized_nodes() method return value and related methods.
pub fn get_authorized_nodes(&self) -> Result<Vec<PeerId>, TransparencyLogError>

Screenshots (optional)
PR Checklist

[x] I've read the contributing guidelines.
[x] I've read "What is a Good PR?"
[x] I've included a good title and brief description along with how to review them.
[x] I've linked any associated an issue.

Code Contributions

[x] I've run pre-commit.sh (pre-commit.bat) successfully.
[ ] I've run the integrations tests
on the PR branch and all tests passes.

Coverage: 49.439% (-0.03%) from 49.472% when pulling 2e2be020423bc45bfaaae40485529885bd8cc5c5 on fishseabowl:bc_1523_authnode into e7881b6152770dcb646e399d5b154a436ac8693e on pyrsia:main.

We could make a query to the database to get 1 record.
For example, like this:
"SELECT * FROM TRANSPARENCYLOG WHERE operation = '(",
            &Operation::AddNode.to_string(),
            "' OR operation = '",
            &Operation::RemoveNode.to_string(),
            "') and node_id = '" + node_id + "' order by timestamp limit 1;"

So, it would much faster than retrieving all records related to node operations.

So, it would much faster than retrieving all records related to node operations.

Since the log db table is based on the ledger, which is immutable, it is necessary to find all AddNode and RemoveNode operations. You can find more context here #817 We assume the Add/Remove Node operations will be relatively limited in volume, but should this lead to performance issues, we can optimize by storing a 'current state' in the table, but this is definitely not necessary right now.

At least, we shouldn't retrieve records related to another nodes.
If the last record would be AddNode operation, isn't it sufficient
condition that a node with according id already exists?

coverage: 49.573% (-0.03%) from 49.606%
when pulling 3f2d063a05ee851a877ccff4a042e5c65fd357da on fishseabowl:bc_1523_authnode
into 639ac8ca6cc6e1df41b79d8b7c995cc82fc9ebef on pyrsia:main.


Alternate to Issue #9

Issue #9 is based around the PLY lexer and parser, which is currently in use on both main branch and the creating-functional-code branch.
The new branch "Personal-lexer-and-parser" and subsequent (yet to be made) "personal-interpreter" branch that will be forked from PLaP branch have a custom lexer parser and interpreter to achieve the same result.
This is an alternative and both options should be considered. Currently working on this new issue until i run into too many problems and go back to issue #9
DO NOT MERGE EITHER BRANCH WITH MAIN UNTIL DECISION IS MADE ABOUT WHICH SOLUTION TO GO WITH.

Now has included interpreter merged into first branch, renamed to custom lexer parser and interpreter.
Has support for exponents, next commits will issue fixes to adding variables


Fixing bugs in prompt rendering

This fixes the bug reported in https://github.com/firebase/genkit/issues/422 where renderPrompt does not preserve the output schema that the prompt function returns.
This also fixes the bug reported in https://github.com/firebase/genkit/issues/757 where Dotprompt.render() only accepts default options. With this change, the render and generate methods will accept any options, unless a model is also passed in the method, in which case it requires the custom options defined by that model.

Please add descriptive comments to all user-facing exported functions (e.g. renderPrompt, etc) explaining how they are to be used.

Added some better docs for public methods.


Change base URL of the client?

Hello!
I'm injecting Guzzle client to one of my services and I want to set base URL from inside the service later on. However, it looks like base URL can only be specified when client is constructed. Is it intentional?
I would love to do $client->setBaseUrl('...');.
Otherwise I will have to construct all URLs manually inside my service, which is a bad thing, cause this functionality is already provided by Guzzle.
Thank you!

No this is not possible. The Client is immutable after creation. You'll need to create a new client if this behavior is desired.


relay S3 no wifi and strange behaviar

Hello,
I just  got my Lilygo T-RelayS3, but I can't get it to work as expected.
I flashed esphome on it using the config below
wifi settings are in my .base.yaml
I connected the external antenna,
-still my device does not connect to wifi.
-no AP is created for fall back
-on boot, random switches are enabled, no clue way.
-when I try to get anything out of the serial logger the serial adapter keeps disconnecting which makes logging impossible.
So actually I don't get anything to work.
I power my device using usb-c, but powering is from my PC or using an RPI-4 adapter doesn't matter, the behaviar is the same.
I must be missing something but can't figure what it is.
esphome:
  name: lilygotest
  friendly_name: lilygotest

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: esp-idf

packages:
  base: !include .base.yaml

sn74hc595:
  - id: "sn74hc595_hub"
    data_pin: 7
    clock_pin: 5
    latch_pin: 6
    sr_count: 1

# output:
#   - id: ch_en_pin
#     pin: 4  # enable 74ch595
#     initial_state: low

# Individual outputs
switch:
  - platform: gpio
    # SN74HC595 Pin #0
    name: "Switch 1"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 0
      number: 0
      inverted: false
      id: relay1
      mode: output

  - platform: gpio
    # SN74HC595 Pin #1
    name: "Switch 2"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 1
      number: 1
      inverted: false
      id: relay2
      mode: output

  - platform: gpio
    # SN74HC595 Pin #2
    name: "Switch 3"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 2
      number: 2
      inverted: false
      id: relay3
      mode: output

  - platform: gpio
    # SN74HC595 Pin #3
    name: "Switch 4"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 3
      number: 3
      inverted: false
      id: relay4
      mode: output

  - platform: gpio
    # SN74HC595 Pin #4
    name: "Switch 5"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 4
      number: 4
      inverted: false
      id: relay5
      mode: output

  - platform: gpio
    # SN74HC595 Pin #5
    name: "Switch 6"
    restore_mode: RESTORE_DEFAULT_OFF
    pin:
      sn74hc595: sn74hc595_hub
      # Use pin number 5
      number: 5
      inverted: false
      id: relay6
      mode: output

Sorry, I found a mistake, I have updated esphome, please retest https://github.com/Xinyuan-LilyGO/LilyGo-T-Relay/blob/main/ESPHome/T-Relay-ESP32S3.yaml

I applied the changes for GPIO4 but it doesn't help.
this serial addapter keeps diconnecting USB JTAG/Serial debug urit(COM3) - paired
so the log only says
[22:53:42]ESP-ROM:esp32s3-20210327
Terminal disconnected: NetworkError: The device has been lost.

the only way the keep the com port steady is to hold the boot button. but then I don't get logs either.
I also set the restore mode to always_On, but that doesn't change anything, It's just like my flash doesn't stick to the device.

some comment, it seems to work when I use framework: arduino,
but all fails when using framework: esp-idf.
is there no support for this? and if not will there ever be?

Are you using esphome? Does it keep disconnecting? What method did you use to write to it?


Disable BUILD_LIBRARY_FOR_DISTRIBUTION option

We have to disable the option due to two blockers with Swift Toolchain: SR-11704, SR-11466.

Codecov Report

Merging #626 into master will increase coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #626      +/-   ##
==========================================
+ Coverage   60.69%   60.82%   +0.12%
==========================================
  Files          92       92
  Lines        4898     4898
==========================================
+ Hits         2973     2979       +6
+ Misses       1925     1919       -6

Impacted Files
Coverage Δ

...Chat Items/TextMessages/Views/TextBubbleView.swift
86.22% <0%> (+3.06%)
:arrow_up:

Continue to review full report at Codecov.

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


allow gRPC-level proxies to support retries

Currently, a gRPC-level proxy written in C++ (or even directly against C-core) cannot easily support retries, because when it gets a trailers-only response from the backend, it will generate separate send_initial_metadata and send_trailing_metadata ops to return the result to the client.
The proxy code can do some extra work, such as implementing their own delay after seeing initial metadata in order to see if trailing metadata is returned shortly thereafter.  However, most proxy authors will not realize they need to do this, which means they're going to get it wrong, and there are also performance implications.  So it's not a very good solution.
We need to think about better ways to fix this problem.  One possible option is to add a piece of initial metadata that tells the transport that trailing metadata will quickly follow.
CC @dfawley, since the same problem exists in Go.

We still need to figure this out.

@vjpai Does this problem still exist in the C++ callback API?  I'm guessing yes but wanted to verify.

Confirming that the callback API would have the same issue. The interception API would probably also see it the same way as well.

I've discussed this with @vjpai.  It looks like we can make this work in the callback API by invoking the recv_initial_metadata method with ok=false in the case of a Trailers-Only response.  This may require doing something like #13423.  This is now considered a blocker for de-experimentalizing the C++ callback API.
We're also discussing whether we can do something similar in the C++ interception API.


[request] Documentation for markdown execution engine

py_paml has a means of compiling a PAML document to a markdown file, but it's currently not obvious to me how to do this. Can a simple example be added to the README showing how to output your RDF PAML document to a .md file for human consumption?

There is an example at the end of this notebook: notebooks/paml_demo.ipynb.


405 Method Not Allowed Http Exception

click on the button returns
at first:
SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data
than
405 Method Not Allowed Http Exception
i tried to use the NovaButton\Events\ButtonClick and also a custom event, but seems not to work.. what could be the problem?

@dontorpedo can you show me the button code and the event listener for the custom event?

Buttoncode
´´´´
Button::make('Paid', 'paid')
->event('App\Events\UnpaidInvoices')
->successText('Done!')
->style('primary-outline')
->visible($this->invoice_paid == false),
´´´´
listener
´´´´
resource->paid_amount = $event->resource->netto_price * 1.2;
            $event->resource->invoice_paid = true;
	    $event->resource->invoice_states = 2;
            $event->resource->save();

    }

}
´´´´

and the custom event

´´´´
resource = $resource;
        $this->key = $key;
    }

    /**
     * Get the channels the event should broadcast on.
     *
     * @return \Illuminate\Broadcasting\Channel|array
     */
    public function broadcastOn()
    {
        return new PrivateChannel('channel-name');
    }
}
´´´´

tried also with the default event.. and also with and without keycheck..

@Dontorpedo and you're on the latest version 1.0.3 ?
Thanks for the info, so far nothing seems wrong with your implementation.

@Dontorpedo
Do you have your routes cached? Might be that you need to run php artisan route:clear

I’ll re-open when more info is provided :)

My Resource File
Button::make('')
->event(new DuplicatePromo($id))
->visible(true)
->onlyOnIndex(),

My Event Class
class DuplicatePromo
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    public $promo;

    /**
     * Create a new event instance.
     *
     * @return void
     */
    public function __construct($promo_id)
    {
        $this->promo = SmsPromo::find($promo_id);
    }
}

My Listener File
class DuplicatePromoListener
{
    /**
     * Create the event listener.
     *
     * @return void
     */
    public function __construct()
    {
        //
    }

    /**
     * Handle the event.
     *
     * @param  DuplicatePromo  $event
     * @return void
     */
    public function handle(DuplicatePromo $event)
    {
        \Log::info('Duplicate Promotion', $event->promo);
    }
}

After clicking on button it will generate url like this

This is error getting from the Laravel

@krunaldevs set an attribute to the button
make::(‘icon-html’, ‘some-attribute’)

Also that’s not how you set events, check the readme.

@krunaldevs set an attribute to the button
make::(‘icon-html’, ‘some-attribute’)

I think this is the right way to use this Button
Button::make('', 'duplicate_smspromo')
                ->event('App\Events\DuplicatePromo')
                ->visible(true)
                ->onlyOnIndex(),

This works for me
Thanks @dillingham

it could have been a compability issue with another package, don't know the exact steps to reproduce but after updating laravel and nova to newest versions, and removing packages etc.. (i also did something with routes)..
the nova button started working


[bazel] New rules: //sw/device/lib/crypto/include/BUILD

Convert //sw/device/lib/crypto/include/BUILD to the new build rules.

Fixed by #19851


use https with "share via link".

???? — This is on purpose because browsers won't accept any unknown TLS certificate. In the LocalSend app, you should see a notice that it is unencrypted.
Wjxfi — https://www.f-droid.org/packages/com.ismartcoding.plain/ did it. do it like he did.   It's completely unsafe and pointless for me right now.

Added in #629


Handle or report differing chromosome labels

The UCSC files that bedqc uses internally use the "chr1" convention. User files may not.

users are allowed "chr1" or "1". do you have a better example that breaks it?

some bed files use "Chr1", "Chrom1", etc.  Might be good to just report a distinct list of chroms in the file, along with the naming schemes that are expected as part of the base report.