Listing SCSI devices (or booting) doesn't work on a DEC VAXstation 4000/60

Info

Which version of Pi are you using: 3B+
Which github revision of software: Didn't work with former (April?) release, doesn't work with current main release (Version 23.11.01  (Dec 22 2023 21:13:57))
Which board version:
Which computer is the PiSCSI connected to: DEC VAXstation 4000/60, with firmware KA46-A V1.2-343-V4.0
Which OS you are using (output of 'lsb_release -a'):

No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 11 (bullseye)
Release:        11
Codename:       bullseye

Listing the SCSI devices worked fine on a VAXstation 4000/96, but doesn't work on this 4000/60. All other devices are detached, an external terminator is placed. (Exact same setup as previously used on the /96.)
ID 7 is reserved (by default), ID 6 is manually preserved (that's what the SCSI controller on that system actually uses.) ID 1 has a HDD image attached (working with the /96), ID 5 emulates a CD-ROM drive (with a NetBSD VAX Install ISO attached.)
When issueing a show dev command, this log is generated with -L trace when the piscsi process starts:
Dec 22 21:29:21 piscsi PISCSI[477]: SCSI Target Emulator PiSCSI (Backend Service)
Dec 22 21:29:21 piscsi PISCSI[477]: Version 23.11.01  (Dec 22 2023 21:13:57)
Dec 22 21:29:21 piscsi PISCSI[477]: Powered by XM6 TypeG Technology / Copyright (C) 2016-2020 GIMONS
Dec 22 21:29:21 piscsi PISCSI[477]: Copyright (C) 2020-2023 Contributors to the PiSCSI project
Dec 22 21:29:21 piscsi PISCSI[477]: Connection type: FULLSPEC
Dec 22 21:29:22 piscsi PISCSI[477]: [2023-12-22 21:29:22.009] [info] Set log level to 'trace'
Dec 22 21:29:22 piscsi PISCSI[477]: [2023-12-22 21:29:22.010] [info] Detected Raspberry Pi 2/3
Dec 22 21:29:22 piscsi PISCSI[477]: [2023-12-22 21:29:22.040] [info] Reserved ID(s) set to 7
Dec 22 21:29:22 piscsi PISCSI[477]: [2023-12-22 21:29:22.043] [info] No devices currently attached.
Dec 22 21:29:22 piscsi PISCSI[477]: No devices currently attached.
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.137] [trace] Received DETACH_ALL command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.137] [info] Detached all devices
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.139] [trace] Received RESERVE_IDS command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.139] [info] Reserved ID(s) set to 6
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.142] [trace] Received DEVICES_INFO command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.144] [trace] Received DEVICE_TYPES_INFO command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.150] [trace] Received ATTACH command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.150] [info] Validating: operation=ATTACH, command params='locale=en', 'token=???', device=1:0, type=SCHD, device params='file=/home/pi/images/DEC_RZ28M-KA46-VS4000m60.hds', vendor='DEC', product='RZ28M    (C) DEC', revision='0568', block size=512
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.151] [info] Executing: operation=ATTACH, command params='locale=en', 'token=???', device=1:0, type=SCHD, device params='file=/home/pi/images/DEC_RZ28M-KA46-VS4000m60.hds', vendor='DEC', product='RZ28M    (C) DEC', revision='0568', block size=512
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.152] [info] Attached SCHD 1:0
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.153] [warning] Can't write protobuf message data
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.154] [trace] Received DEVICES_INFO command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.156] [trace] Received DEVICE_TYPES_INFO command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.160] [trace] Received ATTACH command
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.160] [info] Validating: operation=ATTACH, command params='locale=en', 'token=???', device=5:0, type=SCCD, device params='file=/home/pi/images/NetBSD-10.99.10-vax.iso', vendor='DEC', product='RRD42    (C) DEC', revision='4.5d', block size=512
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.165] [info] Executing: operation=ATTACH, command params='locale=en', 'token=???', device=5:0, type=SCCD, device params='file=/home/pi/images/NetBSD-10.99.10-vax.iso', vendor='DEC', product='RRD42    (C) DEC', revision='4.5d', block size=512
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.165] [info] Attached read-only SCCD 5:0
Dec 22 21:29:36 piscsi PISCSI[477]: [2023-12-22 21:29:36.166] [warning] Can't write protobuf message data

Upon entering the show dev command, the firmware recognizes that there is "something", but it fails to identify:
>>> sh dev

  VMS/VMB      ADDR      DEVTYPE    NUMBYTES     RM/FX    WP    DEVNAM      REV
  -------      ----      -------    --------     -----    --    ------      ---
  ESA0         08-00-2B-2E-8A-FE
               A/1/0
               A/1/1
               A/1/2
               A/1/3
               A/1/4
               A/1/5
               A/1/6
               A/1/7
               A/5/0
               A/5/1
               A/5/2
               A/5/3
               A/5/4
               A/5/5
               A/5/6
               A/5/7
 ..HostID..    A/6       INITR

(Notice that ID 1 and ID 5 are showing up, but there's nothing useable detected.)
piscsi's log during firmware's bus scanning:
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.635] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.635] [trace] (ID 1) - Selection phase
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.635] [trace] (ID 1) - Selection completed
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.635] [trace] (ID 1) - Command phase
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.647] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.647] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.647] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:20 piscsi PISCSI[477]: [2023-12-22 21:34:20.647] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.647] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.647] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.647] [trace] (ID 1) - Selection phase
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.647] [trace] (ID 1) - Selection completed
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.647] [trace] (ID 1) - Command phase
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.658] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.658] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.659] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:23 piscsi PISCSI[477]: [2023-12-22 21:34:23.659] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.659] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.659] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.659] [trace] (ID 1) - Selection phase
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.659] [trace] (ID 1) - Selection completed
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.659] [trace] (ID 1) - Command phase
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.670] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.670] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.670] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:26 piscsi PISCSI[477]: [2023-12-22 21:34:26.670] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:29 piscsi PISCSI[477]: [2023-12-22 21:34:29.670] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.670] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.670] [trace] (ID 1) - Selection phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.670] [trace] (ID 1) - Selection completed
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.670] [trace] (ID 1) - Command phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.682] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.682] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.682] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:29.682] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.682] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.682] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.682] [trace] (ID 1) - Selection phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.682] [trace] (ID 1) - Selection completed
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.682] [trace] (ID 1) - Command phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.694] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.694] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.694] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:32.694] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.694] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.694] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.694] [trace] (ID 1) - Selection phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.694] [trace] (ID 1) - Selection completed
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.694] [trace] (ID 1) - Command phase
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.706] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.706] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.706] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:38 piscsi PISCSI[477]: [2023-12-22 21:34:35.706] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.381] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.381] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.381] [trace] (ID 1) - Selection phase
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.381] [trace] (ID 1) - Selection completed
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.381] [trace] (ID 1) - Command phase
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.392] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.392] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.392] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:39 piscsi PISCSI[477]: [2023-12-22 21:34:39.392] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.392] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.392] [trace] (ID 1) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.392] [trace] (ID 1) - Selection phase
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.392] [trace] (ID 1) - Selection completed
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.392] [trace] (ID 1) - Command phase
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.404] [trace] (ID 1) - Received unknown command: $0
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.404] [debug] (ID 1) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.404] [trace] (ID 1) - Status phase, status is $02
Dec 22 21:34:42 piscsi PISCSI[477]: [2023-12-22 21:34:42.404] [trace] (ID 1) - Sending data, offset: 0, length: 1
Dec 22 21:34:45 piscsi PISCSI[477]: [2023-12-22 21:34:45.404] [trace] (ID 1) - Bus Free phase
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.167] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.167] [trace] (ID 5) - Selection phase
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.167] [trace] (ID 5) - Selection completed
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.167] [trace] (ID 5) - Command phase
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.179] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.179] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.179] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:34:46 piscsi PISCSI[477]: [2023-12-22 21:34:46.179] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:34:49 piscsi PISCSI[477]: [2023-12-22 21:34:49.179] [trace] (ID 5) - Bus Free phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.179] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.179] [trace] (ID 5) - Selection phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.179] [trace] (ID 5) - Selection completed
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.179] [trace] (ID 5) - Command phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.191] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.191] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.191] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:49.191] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.191] [trace] (ID 5) - Bus Free phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.191] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.191] [trace] (ID 5) - Selection phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.191] [trace] (ID 5) - Selection completed
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.191] [trace] (ID 5) - Command phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.202] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.202] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.202] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:52.202] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.202] [trace] (ID 5) - Bus Free phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.203] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.203] [trace] (ID 5) - Selection phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.203] [trace] (ID 5) - Selection completed
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.203] [trace] (ID 5) - Command phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.214] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.214] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.214] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:55.214] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.381] [trace] (ID 5) - Bus Free phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.381] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.381] [trace] (ID 5) - Selection phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.381] [trace] (ID 5) - Selection completed
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.381] [trace] (ID 5) - Command phase
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.392] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.392] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.392] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:34:58 piscsi PISCSI[477]: [2023-12-22 21:34:58.392] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.392] [trace] (ID 5) - Bus Free phase
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.392] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.392] [trace] (ID 5) - Selection phase
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.392] [trace] (ID 5) - Selection completed
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.392] [trace] (ID 5) - Command phase
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.404] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.404] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.404] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:35:01 piscsi PISCSI[477]: [2023-12-22 21:35:01.404] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:35:04 piscsi PISCSI[477]: [2023-12-22 21:35:04.404] [trace] (ID 5) - Bus Free phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.404] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.404] [trace] (ID 5) - Selection phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.404] [trace] (ID 5) - Selection completed
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.404] [trace] (ID 5) - Command phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.415] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.415] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.415] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:04.415] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.415] [trace] (ID 5) - Bus Free phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.415] [trace] (ID 5) - ++++ Starting processing for initiator ID 6
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.415] [trace] (ID 5) - Selection phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.415] [trace] (ID 5) - Selection completed
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.416] [trace] (ID 5) - Command phase
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.427] [trace] (ID 5) - Received unknown command: $0
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.427] [debug] (ID 5) - Error status: Sense Key $05, ASC $20
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.427] [trace] (ID 5) - Status phase, status is $02
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:07.427] [trace] (ID 5) - Sending data, offset: 0, length: 1
Dec 22 21:35:10 piscsi PISCSI[477]: [2023-12-22 21:35:10.427] [trace] (ID 5) - Bus Free phase

So I think that cables and termination are correct. But does Received unknown command: $0 ring a bell?

After swapping cables and terminators, my conclusion is that PiSCSI is working fine. What's been broken is one of the internal SCSI cable's plugs.
Using a different one let the system boot up properly.


Add app to pypi

The app should be installable using Pythons package management.

[ ] make the package/application installable from pypi

https://packaging.python.org/tutorials/distributing-packages/
https://python-packaging.readthedocs.io/en/latest/index.html


Split runtime proto & smaller module protos

This will include creating smaller servers for the specific part and using them on the same grpc server to handle the specific functionality. For example
srv := grpc.NewServer()
rpx.RegisterReplayServer(srv, replaySvc)
rpx.RegisterBackupServer(srv, backupSvc)


beta <IP_ADDRESS>: SSL-Error

I get the following Error in Firefox, on Windows 10, after granting access to the software:
"SSL_ERROR_RX_RECORD_TOO_LONG"

@HDValentin - can you please check if the workaround mentioned here helps?

Yes this helped. Changed manually from https to http...


Quarantine flaky network and storage tests that are causing high retests to merge

What this PR does / why we need it:
The following tests were identified as flaky from the most recent weekly flakefinder report[1].
These flaky failures are leading to a large number of retests being required in order to merge PRs (>5 retests to merge) - quarantining these tests until the flakes have been resolved.
[sig-network] [rfe_id:253][crit:medium][vendor:cnv-qe@redhat.com][level:component]Expose Expose a VM as a service. Expose a VM as a ClusterIP service. [label:masquerade_binding_connectivity]Should Verify an exposed service of a VM is not functional after VM deletion. over IPv6 IP family

[sig-network] [rfe_id:253][crit:medium][vendor:cnv-qe@redhat.com][level:component]Expose Expose a VM as a service. Expose a VM as a ClusterIP service. [label:masquerade_binding_connectivity]Should Verify an exposed service of a VM is not functional after VM deletion. [test_id:343] over default IPv4 IP family

[sig-storage] [Serial]VirtualMachineClone Tests VM clone simple VM and cloning operations regarding domain Firmware should strip firmware UUID

[sig-storage] VirtualMachineSnapshot Tests [storage-req] With more complicated VM [test_id:6952]snapshot change phase to in progress and succeeded and then should not fail

[1] https://storage.googleapis.com/kubevirt-prow/reports/flakefinder/kubevirt/kubevirt/flakefinder-2022-09-22-168h.html
Special notes for your reviewer:
/cc @dhiller @xpivarc @brybacki @phoracek
Release note:
NONE

/lgtm

/approve

Fix for: [sig-storage] VirtualMachineSnapshot Tests [storage-req] With more complicated VM [test_id:6952]snapshot change phase to in progress and succeeded and then should not fail
In PR: https://github.com/kubevirt/kubevirt/pull/8539


merge from template-arlac77-github

package.json

chore(deps): add ^15.3.29 remove ^15.3.28 (devDependencies.npm-pkgbuild)

.github/workflows/ci.yml

chore: (jobs.release.runs-on)

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

npm package (@latest dist-tag)
v1.11.62
GitHub release

Your semantic-release bot :package::rocket:


found a bug

https://github.com/serengil/deepface/blob/master/deepface/DeepFace.py#L683
    if len(img.shape) == 3:
        img = cv2.resize(img, target_size)
        img = np.expand_dims(img, axis=0). this line should be removed?
    # --------------------------------
    img_region = [0, 0, img.shape[1], img.shape[0]]  otherwise, this img_region will be wrong!!!
    img_objs = [(img, img_region, 0)]

why you are calling it is a bug?
if it is 4 dimensional, first if block makes it 3 dimensional, then the second if block will satisfy even if it is 3 or 4 dimensional in the beginning. at the end of process, it is going to be 4 dimensional.
        if len(img.shape) == 4:
            img = img[0]  # e.g. (1, 224, 224, 3) to (224, 224, 3)
        if len(img.shape) == 3:
            img = cv2.resize(img, target_size)
            img = np.expand_dims(img, axis=0)


Added YAML file with german translations

Hello,
firstly: Congrats to this nice shop application! I really like the simplicity and pure aspect of it.
I took the time and added a german YAML file based on the structure of the english one. If my pull request is not conform with your rules of contribution, please let me know. :)
Best
Felix

Thanks :+1:


Load jobs when running resque

The jobs weren't loaded after #39

Merged as 5918784bda9db616ee97560e669f4bdaadf8ad70. Thanks!


chore(javaScript):  enhancement code readability

What does this PR do?
Reduce the use of closures to enhance code readability.
We used closures extensively in the past, which could easily trigger Inline-Cache in V8, but this practice was detrimental to code readability. Now that the infrastructure is stable, we can replace them with classes to enhance readability without affecting performance.
Does this PR introduce any user-facing change?
There are no user-facing change.
Benchmark

(index)
serialize
deserialize

fury
151
120

protobuf
29
39

json
28
35

@LiangliangSui @chaokunyang  Hi, could you help review this?


[Event Request] Page 1132 - Cost Bdgt. per Center Matrix - OnBeforeMATRIX_OnDrillDown

Dear ALAppExtensions team,
Through this issue we would like to request adding event publisher OnBeforeMATRIX_OnDrillDown in Page 1132 Cost Bdgt. per Center Matrix with the following signature:
[IntegrationEvent(false, false)]
local procedure OnBeforeMATRIX_OnDrillDown(var CostBudgetEntry: Record "Cost Budget Entry")
begin
end;

which would be called as follows in MATRIX_OnDrillDown:
local procedure MATRIX_OnDrillDown(ColumnID: Integer)
begin
    OnBeforeMATRIX_OnDrillDown(CostBudgetEntry);

    CostBudgetEntry.SetCurrentKey("Budget Name", "Cost Type No.", "Cost Center Code", "Cost Object Code", Date);
    if Type in [Type::Total, Type::"End-Total"] then
        CostBudgetEntry.SetFilter("Cost Type No.", Totaling)
    else
        CostBudgetEntry.SetRange("Cost Type No.", "No.");
    CostBudgetEntry.SetFilter("Cost Center Code", CostCenterMatrixRecords[ColumnID].Code);
    CostBudgetEntry.SetFilter("Budget Name", BudgetFilter);
    CostBudgetEntry.SetFilter(Date, GetFilter("Date Filter"));
    PAGE.Run(0, CostBudgetEntry);
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: .


Add links to /and data from  pdb

[ ]  I thought we had these in the external references, but we don't
[ ]  Add links to pdb next to AlphaFoLd if a structure is available

Later

[ ] display pdb structures when available   (maybe as the default).
probably we need some sort of heuristic to rank when there are multiple structures

Add links to pdb next to AlphaFoLd if a structure is available

We'll need to find out which genes have structures and then load information that into Chado.

I thought we had these in the external references, but we don't

We can add links like this: https://www.ebi.ac.uk/pdbe/pdbe-kb/proteins/P40847/structures
but we'll get a 404 if there are no structures for that protein.  Maybe that's OK as a temporary fix?
Once we have the PDB IDs in Chado we can hide the PDBe link if there are no structures for the gene.
The structures and links to PDB and AlphaFold are on the UniProt pages too.

display pdb structures when available (maybe as the default).
probably we need some sort of heuristic to rank when there are multiple structures

Perhaps we can embed a structure picker like UniProt does so we don't need to rank the structures?:

but we'll get a 404 if there are no structures for that protein. Maybe that's OK as a temporary fix?

lets wait until we have the IDs loaded

structure picker

Oh that would be cool!

If you want to do this before the allele pages go ahead...

We'll need to find out which genes have structures and then load information that into Chado.

I was able to get quite a long way using the PDBe Advanced search to search for all Schizosaccharomyces PDB entries.
That took me to this results page.  I downloaded the results, with all columns included, and I've added the files to SVN:

pombe-embl/supporting_files/pdbe_all_schizosaccharomyces_entries.csv
pombe-embl/supporting_files/pdbe_all_schizosaccharomyces_entries.json

I think there's enough in the files to get what we need to load into Chado, but I have a few questions for Zoom sometime.

I've added the files to SVN:

Now moved to a more appropriate directory:
pombe-embl/external_data/protein_structure

I've added a script in pombe-embl/external_data/protein_structure to process the raw PDB file into a file with pombe IDs.  The script is process_pdbe_data_file.py and the processed file is:
pombe-embl/external_data/protein_structure/systematic_id_to_pdbe_mapping.tsv
It has just three columns:

pombe systematic ID
PDB ID
taxon ID(s)

There's a README to show how to run the processing script: pombe-embl/external_data/protein_structure/README.txt
I've added a new step to the nightly script to load the PDB IDs into Chado and attach them to genes (using the featureprop table).
That's the easy bit.  On Monday I'll have a look at what is needed to implement something like the viewer and table that UniProt has.

There is now a temporary implementation on the dev site.  It's temporary because it copes badly with window resizing and there is more in the table than we need.  I think we can remove the "--Select--" dropdowns and the column that says "PDB" on every row.  I'm working on a smaller replacement.
Here's http://dev.pombase.kmr.nz/gene/SPBC56F2.08c

I'm trying to think of ways to make the table smaller.  Everything is available on the PDB pages (which we will link to) so is there anything we can remove?

I was thinking of removing the "source" column and just showing PDB structures in this table
One link (to PDB or PDBe) is probably enough
There's no need for a download link
The headers will take less space if they are not all in capitals

I agree  we don't need so many links, but I don't know which link we need?
I wonder if the table could go underneath?
Good progress though...

I agree we don't need so many links, but I don't know which link we need?

I've added a link to PDBe for now.

I wonder if the table could go underneath?

That made the page longer and pushed the annotation further down.  I think a small table to the right is a good use of space.
Here's my current prototype.  It should be in a releasable state soon but let's have a chat on Zoom.
It's available on my desktop until 1pm or so: https://desktop.kmr.nz/gene/SPAC26H5.06

I've added a wiki page about updating the PDB data file in SVN:
https://github.com/pombase/pombase-chado/wiki/Update-the-PDB-data-file

Here's my current prototype. It should be in a releasable state soon but let's have a chat on Zoom.

It's all committed and will be in the dev site on Wednesday morning for testing.

I think we will still need chain and residues.
Maybe we can not write. "Angstrom" just have the symbol and show "Angstrom" on mouse-over. that will save, like, 2mm ;)

Corrected the comment above

You got the colour working. UniProt haven't figured that one out!

As discussed on the call I've changed the table of PDB structures to abbreviate the "Method" and to use "Res (Å)" instead of "Resolution" in the header.
I'm still working on getting the chain and position from the EBI APIs.
The change is only on my desktop for now:
https://desktop.kmr.nz/gene/SPCC1020.04c

That works!

I'm still working on getting the chain and position from the EBI APIs.

I found a PDBe API that returns a mapping between UniProt accessions and PDB IDs, which includes the chain and position in the JSON result.  It's also possible to lookup all the accessions with one API call which is just what we need.  I should have the chain and position on the dev site by the morning.

Whoop!

The changes are checked in.  I'll check the dev site in the morning.
https://desktop.kmr.nz/gene/SPCC584.04

Looks really good!

I've fixed the problem with incorrect chain IDs that we noticed on the call.
So the chain and position for PDB ID 3e20 is now different on these two pages:

https://desktop.kmr.nz/gene/SPCC584.04
https://desktop.kmr.nz/gene/SPAC1834.01

The dev site will be fixed on Friday morning.

I've add a mouse-over with the title and author.  Thomas Schalch only asked for the title but I thought the author(s) might be useful.  I've also added a thumbnail as an experiment.  Unfortunately I haven't been able to get the thumbnail to match the image orientation.  The thumbnails are stolen from the PBDe web pages.  (https://www.ebi.ac.uk/pdbe/entry/pdb/5we0 in the example below).
These changes are only on my desktop version for now: https://desktop.kmr.nz/gene/SPBC1778.02
They be on the dev site on Friday.

That's very helpful!

Where's Wally
Can you find  the rap1 fragment in the second or third image
https://desktop.kmr.nz/gene/SPBC1778.02

Unfortunately I haven't been able to get the thumbnail to match the image orientation.
I don't think that matters.
It's a useful addition.

It's a useful addition.

OK, great.
If it's all working on the dev site on Friday morning should we go ahead and release it to the main site?

Yes lets do that!
As a follow up step should we  also add the structure to the publication pages?

As a follow up step should we also add the structure to the publication pages?

I think that would work.  Is it useful?

I think that would work. Is it useful?

I hope it's useful because I've implemented a prototype:
https://desktop.kmr.nz/reference/PMID:17937917

I think so. It's only the same as including browser dataset access on  the sequence dataset pages.

I think so. It's only the same as including browser dataset access on the sequence dataset pages.

OK.

If it's all working on the dev site on Friday morning should we go ahead and release it to the main site?

I suggest we release it today (if it's still works) but hold off on announcements until Monday.  That will give me time to finish the changes needed for structures on the publication pages.
One thing we should do is test on a few other browsers.  I'll try on Windows later.  Could one of you try Safari?  Thanks.

Yes go for it.
I will try Safari now

Safari, all seems to work OK, but the table always renders underneath the pdb viewer, even at full page size:

Safari, all seems to work OK, but the table always renders underneath the pdb viewer, even at full page size

By "full page size" do you mean that the Safari window was as big as you could get it?
I'm releasing the gene page PDB viewer to the main site now.  I'm still working on the publication page viewer.

I'm still working on the publication page viewer.

There are a few things to decide about the publication page view, like should we show a list of the genes for the current structure?  If so where?
On the gene page maybe we need to think about having links to the publication pages in the structure table?  I'd like to avoid making the table wider though.

I'm releasing the gene page PDB viewer to the main site now.

Done!  https://www.pombase.org/gene/SPBC56F2.08c
The PDB structures are also now visible on the publication pages of the dev site: http://dev.pombase.kmr.nz/reference/PMID:17937917

By "full page size" do you mean that the Safari window was as big as you could get it?

yes, sorry I mean full-screen

Done! https://www.pombase.org/gene/SPBC56F2.08c

Looks good. Will you do the announcemnt on Monday. We can tweet this too.

There are a few things to decide about the publication page view, like should we show a list of the genes for the current structure? If so where?

I think they could just be listed under the menu , they could be horizontal, like the JBrowse gene links, and they would need to wrap for large structures like the ribosome.

On the gene page maybe we need to think about having links to the publication pages in the structure table? I'd like to avoid making the table wider though.

Maybe we could make the id also function as the link to ePDB?
I think we could compress Method and resolution into a single colum

Method (Å)
-- | --
X-ray(1.78)

yes, sorry I mean full-screen

Is the text a lot bigger than in Chrome?

Ah yes sorry, my default text size was bigger in safari, they are the same

I decided to try showing the publication and gene links just for the currently displayed entry because sometimes the list of genes for a publication is quite long.  For now it's only on my desktop.  It will be on the main site in time for us to chat about it on Tuesday.
https://desktop.kmr.nz/reference/PMID:36423630

Looks good.

tiny bug: z=11-17 in name list

MIght be better to have "author et al" to be consistent with the rest of the site?

tiny bug: z=11-17 in name list

That was me attempting to include the position and chain ID beside the gene names.  Fixed now.

MIght be better to have "author et al" to be consistent with the rest of the site?

That's fixed too.
Both changes will be visible in the morning.

There is one more small bug to fix which I'm working on now.  Some genes are duplicated on the pub pages.
https://www.pombase.org/reference/PMID:31010807

There is one more small bug to fix which I'm working on now. Some genes are duplicated on the pub pages.

That's fixed now.

I thought we had these in the external references, but we don't

Is it still worthwhile to add the PDB links in the external references section?  Maybe it's good for completeness?

Is it still worthwhile to add the PDB links in the external references section? Maybe it's good for completeness?

I think  so.

As discussed on Zoom, I've changed order of the PDB entries to match the order from the "best_structures" PDB API.  It might not be a complete fix but hopefully it will help.  The change will be visible on Thursday morning.

It might not be a complete fix but hopefully it will help.

I forgot to compare to the structure order on the UniProt pages.  It's completely different so maybe we need to rethink this.

We can ask pdb. I notice they are not following us

Is it still worthwhile to add the PDB links in the external references section? Maybe it's good for completeness?

I've added those links but only when the gene has PDB structures.

Thanks!

Is this the longest ticket ever?
I'll open a new ticket with any outstanding tasks for pdb viewer.

Is this the longest ticket ever?

This is the winner with 78 comments: https://github.com/pombase/canto/issues/1491
For the website, this has 72 comments: https://github.com/pombase/website/issues/98
:-)


Oauth Login support

Pull Request Test Coverage Report for Build 165

1 of 67 (1.49%) changed or added relevant lines in 4 files are covered.
21 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.02%) to 6.044%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

Mage/LoginViewController.m
0
9
0.0%

Mage/OAuthViewController.m
0
12
0.0%

Mage/AuthenticationCoordinator.m
1
19
5.26%

Mage/OrView.m
0
27
0.0%

Files with Coverage Reduction
New Missed Lines
%

Mage/AuthenticationCoordinator.m
1
50.85%

Pods/mage-ios-sdk/MAGE/OAuthAuthentication.m
6
0.0%

Pods/mage-ios-sdk/MAGE/MageServer.m
14
75.86%

Totals

Change from base Build 154:
-0.02%

Covered Lines:
1272

Relevant Lines:
21046

💛  - Coveralls

Pull Request Test Coverage Report for Build 165

1 of 67 (1.49%) changed or added relevant lines in 4 files are covered.
21 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.02%) to 6.044%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

Mage/LoginViewController.m
0
9
0.0%

Mage/OAuthViewController.m
0
12
0.0%

Mage/AuthenticationCoordinator.m
1
19
5.26%

Mage/OrView.m
0
27
0.0%

Files with Coverage Reduction
New Missed Lines
%

Mage/AuthenticationCoordinator.m
1
50.85%

Pods/mage-ios-sdk/MAGE/OAuthAuthentication.m
6
0.0%

Pods/mage-ios-sdk/MAGE/MageServer.m
14
75.86%

Totals

Change from base Build 154:
-0.02%

Covered Lines:
1272

Relevant Lines:
21046

💛  - Coveralls


Add local time to hover cards based on user location

When collaborating on open-source with people from around the world, it's good to know if the local time with the person you're communicating is in the morning/evening.

I almost have this working.

The previous attempt became rather large and added a permission to Google's servers, which isn't great.
I saw that @SamVerschueren made a CLI tool to get this information https://github.com/SamVerschueren/dev-time and perhaps its logic can be transposed to only use the API in the browser (that tool uses the API to get the latest push) but then uses git clone locally to get the actual timezone.

Would be great if the tool didn't had to clone the repository. At the time I made it I couldn't find another way.

Hello, sorry, any updates on this?
https://github.com/sindresorhus/refined-github/pull/1249 isn't ready, right?:/

@fregante I found a way to do this without cloning the repository.
You are also able to find the AuthorDate in the .patch of a commit.
For example b92693c
From b92693c4ee1c6302c74e633fee92876916864d0d Mon Sep 17 00:00:00 2001
From: Federico Brigante<EMAIL_ADDRESS>Date: Sat, 2 Nov 2019 22:01:35 +0700
Subject: [PATCH] Restore mistakenly-deleted function

A problems I found with this approach is that latest-push includes PushEvents where the user is only the committer not the author.
I couldn't find a way to get the CommitterDate just through the api except for the commit.verification.payload of a commit which isn't really reliable :smile:
This means it is possible but it might include several (at least two) requests.
Is this still a viable solution then?
/cc @SamVerschueren if he wants to use this somehow

A problems I found with this approach is that latest-push includes PushEvents where the user is only the committer not the author.

If we were to use dev-time it'd have to adapted to use fetch everywhere instead of got, together with other changes to bring it down from its 500KB bundled size<EMAIL_ADDRESS>Otherwise it's probably best to rewrite it from scratch just for RGH.
In short, you can use the users/${user}/events endpoint and then find an authored commit.

Okay so I started to play around with this a bit here show-local-user-time
It's still WIP, but it already works :smile:

Screenshot at 20:02 UTC

I haven't solved the commiter issuer yet!
But my idea right now is to get a commit for each commit autor and then check the commits to match the event actor.
Also I needed a modified api.v3 so I copied it for now, not sure how to integrate that yet.
Should I open a (Draft?) PR for this?

A problems I found with this approach is that latest-push includes PushEvents where the user is only the committer not the author.

I don't see any way to find out. I tried looking at the requests being made and I can't find a way to programmatically tell if this commit was authored by me:
https://api.github.com/repos/dertieran/refined-github/commits/8d556c5d9dc0f5471abddacfe84667dd72b1bb23
You can click that link to see the API result in the browser, and here's the patch from that commit:
From 8d556c5d9dc0f5471abddacfe84667dd72b1bb23 Mon Sep 17 00:00:00 2001
From: Jimmy Gaussen<EMAIL_ADDRESS>Date: Fri, 8 Nov 2019 02:14:39 +0100
Subject: [PATCH] Allow PR merge-only bots in `dim-bots` (#2519)

---
 source/features/dim-bots.tsx | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/source/features/dim-bots.tsx b/source/features/dim-bots.tsx
index 18298f96c..6cf43b6a6 100644
--- a/source/features/dim-bots.tsx
+++ b/source/features/dim-bots.tsx
@@ -5,8 +5,8 @@ import features from '../libs/features';
 function init(): void {
 	const bots = select.all([
 		/* Commits */
-		'.commit-author[href$="%5Bbot%5D"]',
-		'.commit-author[href$="renovate-bot"]',
+		'.commit-author[href$="%5Bbot%5D"]:first-child',
+		'.commit-author[href$="renovate-bot"]:first-child',

 		/* PRs */
 		'.opened-by [href*="author%3Aapp%2F"]'

Who is Jimmy? Who is @fregante? Are they the same person?
Side note: the Date above is the date I merged the PR, but the timezone matches the original user's, so even if it kinda is the committer date, it's not in the right timezone (it should be +0700)

It should be possible to check it the event actor is the same as the commit author (from a commit request).
So a very simple approach would be:
const event = await getPushEvent(login);
const lastCommit = event.payload.commits[event.payload.commits.length - 1];
const commit = await fetch(lastCommit.url);
if (commit.author.id === event.actor.id) {
    return commit;
}
// Check the next commit or event or load more events...
// This might take a bit but hopefully we are on the happy path 😄

Example PushEvent
{
    "id": "10820875487",
    "type": "PushEvent",
    "actor": {
        "id": 1402241,
        "login": "fregante"
    },
    "payload": {
        "push_id":<PHONE_NUMBER>,
        "commits": [
            {
                "sha": "8d556c5d9dc0f5471abddacfe84667dd72b1bb23",
                "author": {
                    "email"<EMAIL_ADDRESS>                    "name": "Jimmy Gaussen"
                },
                "message": "Allow PR merge-only bots in `dim-bots` (#2519)",
                "url": "https://api.github.com/repos/dertieran/refined-github/commits/8d556c5d9dc0f5471abddacfe84667dd72b1bb23"
            },
            {
                "sha": "9a58274d9442427dafd6d533dd92a84e5c2594fa",
                "author": {
                    "email"<EMAIL_ADDRESS>                    "name": "Federico Brigante"
                },
                "message": "Merge branch 'master' into add-dashboard-label-links",
                "url": "https://api.github.com/repos/dertieran/refined-github/commits/9a58274d9442427dafd6d533dd92a84e5c2594fa"
            }
        ]
    }
}

I removed some properties

I think that's right! To put it plainly, event.actor.id is YOUR id and we just need to match it to commit.author.id.  Good job!
Now, back to the algorithm here. 😅 I think you need this:
function getTimezone(user): string
	while fetchNextEventsPage
		foreach event in eventPage
			if event is pushevent
				fetch commit
				if commit.author.id === event.actor.id
					fetch patch
					return patch.date.timezone

If you implement this I suggest keeping it in a single function/loop for now, we can optimize it later if needed. It’s easier to just return out of the whole loop instead of handling multiple layers of if function !== NaN

Okay I implemented it and it works pretty good.
As expected the first commit we check is valid.
A good place to test would be the contributors page.
I already found some interesting edge cases through that :smile:
For example a commit where the autor is null or that commits from a push event are not found (404).

@fregante Is 12 hour format available?

It's not, but PR welcome to replace the timeFormatter with <local-time> since it uses the browser's settings
<local-time minute="numeric" hour="numeric" datetime={....}/>

I made a commit but I didn't understand how does it gives the 12 hour format. Doc says
When this markup is viewed in a CDT timezone, it will show Apr 1, 2014 6:30PM. If it's viewed in a browser with European date preferences, it will read 1 Apr 2014 18:30. which I was not able to understand.

Hey, how will this further help me in setting 24 Hr format in my PC?
Doc says When this markup is viewed in a CDT timezone, it will show Apr 1, 2014 6:30PM. If it's viewed in a browser with European date preferences, it will read 1 Apr 2014 18:30. which I don't understand.
Btw I did some changes and got same 24 hr format. code is here.

When this markup is viewed in a CDT timezone, it will show Apr 1, 2014 6:30PM. If it's viewed in a browser with European date preferences, it will read 1 Apr 2014 18:30.

"CDT timezone" is American and they prefer 12-hour.
European timezones generally prefer 24-hour.
new Intl.DateTimeFormat(undefined,{hour:"numeric", minute:"numeric"}).format(new Date);

What does this output for you? It's 12-hour for me because my locale is en-US. I don't think it has anything to do with my timezone as their readme suggests, but just the browser's language. Even Safari ignores my OS' preference to display 24-hour so I'm guessing it's all about that locale string.

It looks like 24-hour format because no AM is here.

I just did hour12: true and worked it out this way. I got my 12-hour format but I can give a PR if you want changes in the code.


run on mac arm64

i've compiled the app but i cannot run it

You cand try to use this command
pip install httpx==0.27.2


Gallery slide-in slide-in direction would better match mental model of gallery

If I am using the basic gallery, pages always slide in from the right, whether I click the right (forward) arrow or the left (back) arrow, and whether it is going between two sizes of the same page or two different pages.
It would be better if the sliding matched a mental model of the gallery:
If clicking right arrow goes to different size of same page, slide in from right.
If clicking left arrow goes to different size of same page, slide in from left.
If clicking right arrow goes to next page, slide in from bottom.
If clicking left arrow goes to previous page, slide in from top.

Just to clarify, I'm not looking for something totally literal. When there's a slide in from the top or bottom, I don't expect it to land on the same screen size it just left, and I don't want to see a parade of screen sizes or a diagonal slide. Just something that calls out to me this is the next (or previous) page and not an alternate layout of the same page.

Fixed in v3.1.5


Adding Ingress Default Backend

I'm not actually sure the best way to structure this, but here's a variation of your work on the original ingdefaultbackend branch with a variety of conflicts with master resolved. I've pushed the latest version of k/k master to this fork and have branched off of that with a new ingressv1 branch that we could theoretically base our work off of here before filing a big PR upstream. Open to ideas here if another structure would work better.

@cmluciano Does this look reasonable to you as a starting point?


Fixed an issue with frequency selections above ~12,456

It used to go to a negative value when requesting frequencies above twice the maximum, which meant it wrapped to the maximum prescaler, not the minimum. This changed only the line where the prescaler is converted into an integer, it just forces it to be above or equal to 0. If the calculated prescaler is negative, it is better to use the closest possible value (0) rather than -1. If -1 is used it is converted to 0b1111... which is interpreted as the maximum prescaler.
tl;dr: limits the prescaler to be non-negative.

Thanks for the Pull Request, however this library is being deprecated. Please use the new replacement library here:
https://github.com/adafruit/Adafruit_CircuitPython_PCA9685
Setup instructions here:
https://learn.adafruit.com/16-channel-pwm-servo-driver/python-circuitpython
If there is still a need for the updates provided by this pull request, please resubmit based on new library:
https://github.com/adafruit/Adafruit_CircuitPython_PCA9685/pulls


no .ini files found on SD-card found after flashing dronebridge 0.6.0

Seems like a mounting and resizing problem.. Seems like some have already solved it.  I'll see when I find some time looking into it.

Hi Wolfgang,
Did you find a solution for this no .ini files not found?
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Sunday, 3 May 2020 23:39
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
Seems like a mounting and resizing problem. https://gitter.im/DroneBridge/Lobby . Seems like some have already solved it.  I'll see when I find some time looking into it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-623186454 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22T42UK7B2Y7PHGRAJRLRPXP6RANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22T5PRYFYLFULLOQJAWTRPXP6RA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUSREFQ.gif

Hi, sorry so much other stuff that I need to finish first.
Try the following: Identify the DroneBridge partition that is not mounting. It should be around 13GB in size. Format it to exFAT. Copy the config files etc. to the formatted partition (see attached files).
Could not test it but maybe that works.
DB.zip

Hi Wolfgang,
The program reports that there was no Wifi adapter found. I am using the Alpha longrange adapter.
This adapter works with Raspberri Pi 3b.
Also tried the TP-Link, that one was not recognized either (likewise with the PI 3b.
Thanks,
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Tuesday, 12 May 2020 23:47
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
Hi, sorry so much other stuff that I need to finish first.
Try the following: Identify the DroneBridge partition that is not mounting. It should be around 13GB in size. Format it to exFAT. Copy the config files etc. to the formatted partition (see attached files).
Could not test it but maybe that works.
DB.zip https://github.com/DroneBridge/DroneBridge/files/4618593/DB.zip
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-627615719 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22TZI2YO72AMC3WM6BQLRRG7ULANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22T24AM6XTHJQHY5REOLRRG7ULA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEVUKPZY.gif

It works. I can see the program starting up till the point where it asked to login.
I have connected my Wifi adapters and configured the Rasperri PIs 3b.
I can not connect to the Wifi hotspot. (the same configuration works with Ez-wifibroadcast).
Please advise.
Thanks,
Bram
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Tuesday, 12 May 2020 23:47
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
Hi, sorry so much other stuff that I need to finish first.
Try the following: Identify the DroneBridge partition that is not mounting. It should be around 13GB in size. Format it to exFAT. Copy the config files etc. to the formatted partition (see attached files).
Could not test it but maybe that works.
DB.zip https://github.com/DroneBridge/DroneBridge/files/4618593/DB.zip
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-627615719 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22TZI2YO72AMC3WM6BQLRRG7ULANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22T24AM6XTHJQHY5REOLRRG7ULA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEVUKPZY.gif

That is strange. Are you still on the stock image (except for the file system format maybe)? I cannot help you if you do not provide logs, but only a 'it does not work'.
Can you post the log you get by typing journalctl -b after you tried to connect to the access point?

OK, this is the situation now:
I do have a video connection with the PI groundstation (which is connected to the HDMI port).
At the point where the login prompt is shown I  tried to login with “pi’’ and ‘’raspberri’’.
The response is ‘’access denied”.
If you press ‘’alt + f10”’, you normally (with ez-wifibroadcast) gets you the setup screen in which you can enable ssh.
So I can’t sent you a log file. Still no access from my tablet via wifi to the ground PI.
Regards,
Bram
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Tuesday, 19 May 2020 12:01
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
That is strange. Are you still on the stock image (except for the file system format maybe)? I cannot help you if you do not provide logs, but only a 'it does not work'.
Can you post the log you get by typing journalctl -b after you tried to connect to the access point?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-630719442 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22T4YWBTET2EM3GTUHFLRSJKHNANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22TZUQUA6345MONC5OQLRSJKHNA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEWMAHUQ.gif

In DroneBridge there is only one screen. No need for ALT+Something.
Try to login using raspberry

Sorry, does not work either.
After displaying the login, it is difficult to login. The program most times just continues.
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Tuesday, 19 May 2020 12:19
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
In DroneBridge there is only one screen. No need for ALT+Something.
Try to login using raspberry
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-630727645 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22T22NUQOKYU3K22NVIDRSJMIHANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22T7URO4JZKP6DEZ73D3RSJMIHA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEWMCHXI.gif

Connect the Pi via ethernet und just use SSH

I can not connect via ethernet because the PI did not obtain an IP address from my DHCP server.
With ez-wifibroadcast it gets an IP address of <IP_ADDRESS>.
Van: Wolfgang<EMAIL_ADDRESS>Verzonden: Wednesday, 20 May 2020 16:27
Aan: DroneBridge/DroneBridge<EMAIL_ADDRESS>CC: bpjdons<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Onderwerp: Re: [DroneBridge/DroneBridge] no .ini files found on SD-card found after flashing dronebridge 0.6.0 (#54)
Connect the Pi via ethernet und just use SSH
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/DroneBridge/DroneBridge/issues/54#issuecomment-631508004 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALQ22T5QNDTFOOO2RYFTYIDRSPSDDANCNFSM4MYEUXSQ .  https://github.com/notifications/beacon/ALQ22TZBJMGAYBLYBBZCNTDRSPSDDA5CNFSM4MYEUXS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEWSAYJA.gif

Hi Wolfgang, Did you find a solution for this no .ini files not found?

maybe i can help you last time i got a issue that .ini did not apply. but i was changing wrong file.
i have a question which file are you trying to change?


Dataset Pathway: User initiated data curation request prior to publication

Feature Request
Provide users with an option to request curation prior to publication while still in draft state. This could be displayed on the final review page as an option. Selection of this option would need to trigger an entry in AirTable.

Update of WDLL

[ ] make this a 'Request Curation & Save' button that appears in the following conditions:
- on the 'Review & Publish' tab of the form
- work is a dataset type
- curation has not already been requested

[ ] If curation has already been requested, disable the publish button

[ ] Have a 'Request Curation' section at the bottom of the form that provides guidance for that button (see below)

[ ] In addition to fields we already send to Airtable, add a label marking the record as 'Curation Requested' in the Airtable export

Help Text (@bdezray please edit as needed)
If curation has not yet been requested:
"Please select 'Request Curation & Save' below if you would like metadata curation on your work before it is published."
If curation has already been requested:
"Curation has been requested.

@Smullz622
I noticed that there are a few additional notes on https://github.com/psu-libraries/scholarsphere/issues/1469 about the data curation request feature. I'm just bringing it to your attention in case there's anything else there that you need to consider for this ticket.

@Smullz622 Below I have outlined text for the curation request:
Select 'Request Curation & Save' below if you would like ScholarSphere curators to review your work assessing its findability, accessibility, interoperability, and reusability prior to publication (recommended).
If curation has already been requested:
"Curation has been requested. We will notify you when curation is complete and your work is ready to be published. If you have any questions in the meantime, please contact ScholarSphere curators via our contact form.
I was also wondering if it would make sense to include a description here for the type of curation that occurs if they click publish. Let me know if you think this would fit better in this section or in the pop-ups.
Select 'Publish' if you would like to self-submit your deposit to Scholarsphere and make it immediately public. ScholarSphere curators will review your work after publication. Note, because curatorial review occurs after publication, any changes or updates may result in a versioned work.

@bdezray Thanks!
I think the publish description would be great to include in this section as well. That way users have an informed choice before clicking either 'Request Curation' or 'Publish'


Remove the trigger if feed fails to be called

If feed fails to be called, we need to remove the trigger to keep
the environment clean.

LGTM


Share the trained embeddings?

It would be useful to share your trained embeddings, so we don't have to train them ourselves!

Thank you for your suggestion. We will make the trained embeddings available soon!

Any news about this @benathi ?

Hi! I just added the link in README. The file is being uploaded right now and it should be available soon tonight. If you download right away it might be an incomplete file so wait about a hour or more to be sure. It should be about 470 MB.

I tried to download the file, and it's only ~50MB.  Maybe the upload stalled?

@benathi The link doesn't work now:
This site can’t be reached

<IP_ADDRESS> refused to connect.

It's fixed and the link should work now. Please try again.

@benathi Downloading now.  Looks like ~452<MB.  Thanks!

@benathi Got the file downloaded and unzipped.  There's 4 files in the folder:
{code}

checkpoint
model.ckpt-481392835.data-00000-of-00001
model.ckpt-481392835.index
model.ckpt-481392835.meta
vocab.txt
{code}

How would I load the pre-trained embeddings back into python?

Please see README for more details.

The trained model for K=2 is not available any more.
Connecting to <IP_ADDRESS>:6004... failed: Connection timed out.
Could you fix it, please?


Action Sound plays even when no Action Animation plays

Steps to replicate:
Enter Ready Combat Stance in Default Overlay
Jump and Attack

Fixed in b4cb613f2fc5bdf854242cd3c73b0769e7d94a0e


[REFACTOR] Create file twice cause Worker stuck and trimFlush not work

Describe the intention you'd like

[x] #863
[x] #866
[ ] #867
[ ] #879
[ ] #880

/cc @who-need-to-know
/assign @who-can-help-you

cc @nafiyAix

Could you please describe more detail about the problem?


XLSX: hidden sheets printed/rendered

Bumping up https://github.com/gotenberg/gotenberg/issues/275#issue-782578747, especially the hidden sheet issue reported back then.
LibreOffice would not print them, how come gotenberg does. I tried to set the sheets programmatically to VERYHIDDEN before sending for conversion but gotenberg still includes them in the output pdf.
Am I missing an option or is this a bug ?
FYI, I cannot delete the hidden ones as visible sheets refer to it/them.

Found out that even if hidden, if the print area is set, the sheet would convert.
Clear it and it won't print.

Thanks for the details @yan-hic!


Fixup a test

Validation order changed.
Get the bots passing again.

@swift-ci please smoke test

Thank you! (I was confused when the CI failed on one of my PRs).

The diagnostic is a catch-all introduced to cut off a crasher.  We should be able to do much much better soon.

⛵


Touch input works through the Kivy app, and other apps are opened once I close kivy app

Versions

Python: 2.7
OS: Raspbian
Kivy: 1.10.1.dev0
Kivy installation method: git clone and python setup.py install

Hi, all Kivyers.
I have been using Official 7" touch screen on RPi to develop Kivy app.
It seems like my touch input works through the Kivy app, and other apps(terminal, browser, file manager at the left top corner of main screen) were launched already once I close my app.
This happens if I press their position on my Kivy app before closing.
Seems like hid input issue?

This seems to be missing all the relevant details, or at least a good description as I don't understand what issue is. It's also missing any logs.

Thanks for your quick reply.

When I touch left-top corner while my app is running (red rectangle in the screenshot above), file manager or terminal or browser is opened in background.
So, if I close my app, they are already opened.
And there is no issue in the log, kivy app works well.

Ahh, so the problem is that when you touch something on a kivy app, the screen underneath is also touched, rather than just the kivy app?

Yeah, kivy app works without ANY issue.

@openedhardware Try with SDL2 window provider instead of EGL.

Yeah, I think that's a problem with the egl provider.

Thanks, guys!
Let me try right now!!!

Hmm, failed to launch kivy app:
pi@RPi-3:~/workspace/abm_barcode $ KIVY_WINDOW=sdl2 python main.py
[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_17-06-02_1.txt
[INFO   ] [Factory     ] 194 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Kivy        ] v1.10.1.dev0, git-9243207, 20170601
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [KivyMD      ] KivyMD version: 0.1.2
[INFO   ] [OSC         ] using <multiprocessing> for socket
[INFO   ] [Window      ] Provider: sdl2(['window_egl_rpi'] ignored)
[CRITICAL] [Window      ] Unable to find any valuable Window provider.
sdl2 - RuntimeError: No available video device
  File "/usr/local/lib/python2.7/dist-packages/kivy/core/__init__.py", line 67, in core_select_lib
    cls = cls()
  File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_sdl2.py", line 140, in __init__
    super(WindowSDL, self).__init__()
  File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/__init__.py", line 899, in __init__
    self.create_window()
  File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_sdl2.py", line 269, in create_window
    self.fullscreen, resizable, state)
  File "kivy/core/window/_window_sdl2.pyx", line 84, in kivy.core.window._window_sdl2._WindowSDL2Storage.setup_window (/tmp/pip-sLcaHf-build/kivy/core/window/_window_sdl2.c:1994)
  File "kivy/core/window/_window_sdl2.pyx", line 57, in kivy.core.window._window_sdl2._WindowSDL2Storage.die (/tmp/pip-sLcaHf-build/kivy/core/window/_window_sdl2.c:1570)

[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.
 Exception SystemExit: 1 in 'kivy.properties.dpi2px' ignored
[CRITICAL] [App         ] Unable to get a Window, abort.

And I set environment USE_SDL2 as 1

Try recompiling kivy after installing the dependencies and setting the env var.

Yeah, as you could see in the log, I tried to install Kivy again twice.

This seems to be an sdl2 issue. Maybe it doesn't support the touch screen?

Compiled the latest SLD2 and tried, but failed to execute.
Any update?

https://www.raspberrypi.org/forums/viewtopic.php?t=145830&p=960884

Thanks for your help, @matham
Unfortunately, this doesn't work for the official touchscreen.
Should I re-open this issue? or post another one?

The original issue is unlikely to be fixed because that has been like that forever and is a known issue with egl, so there's no point in re-opening it. The sdl2 issue on the other hand seems to be a sdl2 thing so I'm not sure it makes sense opening up an issue for that here. So I'm not sure what you can do.
I'd say to focus on getting sdl2 to work, unless you got confirmation somewhere that sdl2 is not going to work. Either way, maybe write and email to the kivy-users mailing list asking if someone else solved this somehow. You can also try asking on #kivy on IRC. But I'm not sure how many rpi users are there.

do
export DISPLAY=:0.0


Fix spectate mode only showing a part of the game

Hi, I'm trying to make the spectator mode work properly.
The center of view (player coordinates) was not being set properly, but to a random position on the game area. Therefore the spectator could only see a part of the game. Fixed that by updating the player coordinates to the center of the screen on the 'resize' event callback.
This pull request resolves issue #444.

This pull request is now managed with CodeReviewHub. Refresh.


images for part 4

Images for part 4 are being created.
Items needed so far:

[x] 4.1: static image of frames and divider line
[x] 4.3: gif animation showing starry background
[x] 4.5: static image showing asteroids, stars, player ship, and engine flame
[x] 4.6: gif animation at the end showing final product of tutorial section, esp. asteroid collisions

4.1 completed in b30a289d74ad0ff857be6e66670f51e1ea055440

all completed by f5d9b0690f09be2d2b239d4ce7f880c4691f26a2


Mistyping in code 'MultiViewerExampleEditorPart.js'

        /**
         * @deprcated
         */
        getValue: function() {
            if (this.getModel()) {
                return this.getModel().getText();
            }
        },

deprcated --> deprecated

I already know it, and updated it yesterday.
I will commit it asap.


Mega Issue: Karpenter doesnt support custom resources requests/limit

Version

Karpenter: v0.10.1

Kubernetes: v1.20.15
Expected Behavior
Karpenter should be able to trigger an autoscale
Actual Behavior
Karpenter isnt able to trigger an autoscale
Steps to Reproduce the Problem
We're using Karpenter on EKS. We have pods that has custom resource requests/limits in their spec definition - smarter-devices/fuse: 1. Karpenter seems to not respecting this resource and fails to autoscale and the pod remains to be in pending state
Resource Specs and Logs

Provisioner spec
apiVersion: karpenter.sh/v1alpha5
kind: Provisioner
metadata:
  name: default
spec:
  limits:
    resources:
      cpu: "100"
  provider:
    launchTemplate: xxxxx
    subnetSelector:
      xxxxx: xxxxx
  requirements:
  - key: karpenter.sh/capacity-type
    operator: In
    values:
    - on-demand
  - key: node.kubernetes.io/instance-type
    operator: In
    values:
    - m5.large
    - m5.2xlarge
    - m5.4xlarge
    - m5.8xlarge
    - m5.12xlarge
  - key: kubernetes.io/arch
    operator: In
    values:
    - amd64
  ttlSecondsAfterEmpty: 30
status:
  resources:
    cpu: "32"
    memory: 128830948Ki

pod spec
apiVersion: apps/v1
kind: Deployment
metadata:
  name: fuse-test
  labels:
    app: fuse-test
spec:
  replicas: 1
  selector:
    matchLabels:
      name: fuse-test
  template:
    metadata:
      labels:
        name: fuse-test
    spec:
      containers:
      - name: fuse-test
        image: ubuntu:latest
        ports:
          - containerPort: 8080
            name: web
            protocol: TCP
        securityContext:
          capabilities:
            add:
              - SYS_ADMIN
        resources:
          limits:
            cpu: 32
            memory: 4Gi
            smarter-devices/fuse: 1  # Custom resource
          requests:
            cpu: 32
            memory: 2Gi
            smarter-devices/fuse: 1  # Custom resource
        env:
        - name: S3_BUCKET
          value: test-s3
        - name: S3_REGION
          value: eu-west-1

karpenter controller logs:
controller 2022-06-06T15:59:00.499Z    ERROR    controller    no instance type satisfied resources {"cpu":"32","memory":"2Gi","pods":"1","smarter-devices/fuse":"1"} and requirements kubernetes.io/os In [linux], karpenter.sh/capacity-type In [on-demand], kubernetes.io/hostname In [hostname-placeholder-3403], node.kubernetes.io/instance-type In [m5.12xlarge m5.2xlarge m5.4xlarge m5.8xlarge m5.large], karpenter.sh/provisioner-name In [default], topology.kubernetes.io/zone In [eu-west-1a eu-west-1b], kubernetes.io/arch In [amd64];

We tried enabling the hugepages on all nodes with "vm.nr_hugepages" = "2048".
After this karpenter went crazy spinning up 50 new worker nodes for one of the existing pods. That pod does not have anything related to hugepages, just a RAM requests of 3Gb. Karpenter spins up a new node with 8Gb of RAM and after scheduler is not able to run the pod on the new node. Then, karpenter spins up the new node (again, with 8Gb of RAM), and again scheduler can't run the pod.
It looks like hugepages option messes up the karpenter ability to calculate the memory resources properly.

We're facing the same issue with KubeVirt. Given that it's been ongoing for a while, it might be good to consider both a short-term solution to unblock and a long-term solution?
I noticed PR https://github.com/kubernetes-sigs/karpenter/pull/603 mentioning the deprecated Karpenter config map. As an alternative, I created a fork using the same approach but sourcing configuration from options (arg or environment variable).
Would this be an interesting direction to explore? Or is the current state of this issue more "not a priority, maintain your forks until we have a better design / long-term approach for it"?

Bringing in some context on huge pages which I think is more problematic that just "defining custom allocable". Huge pages are essentially a user configurable based on a mix of instance type + user's need. That means that you could have different huge page allocable even within the same instance type based on what the node is used for. To add to this problem, hugepages are pre-allocated at boot time set at the linux level so it at best can be set in NodeClass level and must be passed through via startup script of the node BUT because nodeclasses can be used by different instance types nodeclass itself cannot be relied upon to know ahead of time how much hugepage resource can be provided.
What does this all mean? Implementation would be difficult because if we want Karpenter to work Karpenter would need to know ahead of time a mapping of all permutation of instance type + possible hugepages. This means user must input a mapping in node pool for instance types to huge pages resource in addition to instance type to huge page in nodeclass to specify how instances come up.
I am likely missing a few pieces of this puzzle but this what I think needs to be solved for hugepages

I am likely missing a few pieces of this puzzle but this what I think needs to be solved for hugepages

I think there are a couple simplifications that we could do here to support hugepages if we wanted to:

Consider the entire available memory to be used for hugepages. Add up all of the hugepages into the resource requests for the NodeClaim and then launch an instance, configuring the startup script to start with that many hugepages so that all of the pods can schedule
Allow users to configure a percentage of the memory to be allocated to hugepages. We would calculate the hugepages during the GetInstanceTypes() call and then use that for scheduling. If we allowed this, this would most likely be a setting on the NodeClass and then we would just pass it down through the GetInstanceTypes() call from the CloudProvider.

Consider the entire available memory to be used for hugepages. Add up all of the hugepages into the resource requests for the NodeClaim and then launch an instance, configuring the startup script to start with that many hugepages so that all of the pods can schedule

One issue here is huge pages are carved out of memory, for us this doesn't matter because we actually do want to move to all huge pages but most users likely have a mix of huge pages and normal memory. If you advertise all huge pages then your nodes technically doesn't have memory

Allow users to configure a percentage of the memory to be allocated to hugepages. We would calculate the hugepages during the GetInstanceTypes() call and then use that for scheduling. If we allowed this, this would most likely be a setting on the NodeClass and then we would just pass it down through the GetInstanceTypes() call from the CloudProvider.

That feels reasonable and removes the need to map instance types to huge pages. Once again that works for us but I am unsure if other users have more unique configuration

Yeah, it's a little tough to boil the ocean here without creating wayyyyy too much configuration and making this likely unreasonable to manage for users.

Agreed. I think this general approach should work, need some time to bake in my head if we would encounter any issues.

We also need this feature. Our use-case is related to a controller which creates extended resources to nodes immediately when a new node is created. Karpenter will not create a node for pods using such extended resources, because it doesn't understand the extended resources.
In our case, using node affinity and node selectors together with existing node labels is sufficient to direct Karpenter to pick a good node. The only thing we need is Karpenter to ignore a list of extended resources, when finding the correct instance type. Having said that, I do have a forked workaround, but forked workarounds are not acceptable where I work, for good reason.
Having ignorable extended resources wouldn't be new in Kubernetes. They exist also in the scheduler.

How much appetite is there to simply have an override config map that has per instance type override on resources capacity just for Karpenter simulation (Support for huge pages and possibly other extend resources!?!)?
https://github.com/aws/karpenter-provider-aws/blob/main/pkg/providers/instancetype/types.go#L179
Config map that as instance types + any resource override and if a particular resource isn't override, take what is provided from cloud provider.
Pin the configmap per NodeClass via a new setting on NodeClass instanceTypeResourceOverride. Note that changes to the configmap won't be reflected on current nodes, we would use drift to reconcile the changes.

Hopefully users wouldn't need to maintain their own list of acceptable instance types in order to handle the "fuse" use case, as fuse doesn't depend on particular instance types.
It's a bit frustrating that the fuse use case is being held up by hugepages. The fuse use case is probably common enough to justify being handled out of the box.

I think fuse's use case is not the same as hugepages and shouldn't be tied together. Fuse likely can do https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/ ?

A nice bonus would be if one could also define extended resources which are applied to all instance types, covering in a simple fashion the fuse-case.

That feels fine also. Let me try to bring this up during working group meeting

Curious if this could be a configuration on the NodePool; we're able to add custom Requirements to allow Karpenter to schedule when hard affinities or tolerances are defined. Would having an entry to define capacity hints to karpenter 'this node pool will satisfy requests/limits for [custom capacity]' be an option?
My use case is smarter-devices/kvm - which can be filtered on a nodepool as metal. I could imagine the same for hugePages or similar - we know what the instances which has these so we can filter them using custom NodePools.
By using weighting we can define these after the main nodepools - so in my example, I would have Spot for all weight 100, on-demand for all weight 90, and then our KVM with capacity hints of 80.
In the mean time, I'm using an Overprovisioner marked with hard affinity for metal instances to ensure these pods can be scheduled; it's a tradeoff with extra cost but the ability to use Karpenter exclusively.

I wonder if this is something that might be useful to configure both at the node pool level, and at the instance type level. Ultimately, we were learning away from an InstanceTypeOverride CRD due to the level of effort to configure it, but perhaps with support for both, it provides an escape hatch as well as the ability to define a simple blanket policy.
We could choose any/all of the following:

Cloudprovider automatically knows extended resource values (e.g. GPU)
NodePool (or class) lets you specify a flat resource value per node pool
NodePool (or class) lets you specify a scalar resource values (e.g. hugePageMemoryPercent)
InstanceType CRD (or config map) let's you define per instance type resource overrides.

/cc

/assign Bryce-Soghigian

https://docs.google.com/document/d/1vEdd226PYlGmJqs6gWlC2pTyDKhZE8DyCU2SbNB35wM/edit Looking for user stories from customers on their extended resources support story here. Please leave some comments here!
After we feel confident we have captured all the critical usecases, I will go through and propose some RFCs to solve the various dimensions of these problems.

@jmickey has captured my comments above in the doc.

For anyone watching this issue, I have a proof of concept to solve this problem here: https://github.com/kubernetes-sigs/karpenter/pull/1305

Searching for a fix. My current workaround is absolutely hideous:
         resources:
            requests:
              cpu: 4000m
              memory: 16Gi
            limits:
              cpu: 11000m
              memory: 24Gi
              xilinx.com/fpga-xilinx_u30_gen3x4_base_2-0: 1
              # ---
              # karpenter will not provision this node if this custom device is here.
              # To provision, comment out, wait for launch and daemon set to launch
              # then uncomment, sync kustomization, then kill the old pod

Does anyone have a better workaround?

I guess feature request did not make the v1.0 release. Can someone confirm?

Hi everyone,
We too faced this exact issue. Karpenter consolidation stopped working after a third party software started to add extended resources to our pods and nodes (we run Spark on EKS). This increased costs significantly and we couldn't wait until this PR is merged/released.
I would like to propose a temporary solution to those who, just like us, need a quick workaround and, importantly, don't care about the extended resources being part of Karpenter's scheduling simulation to find replacement nodes. If you are looking for the inverse and want Karpenter to take extended resources into account, this will not work for you.
This workaround builds a custom Karpenter controller image. I would like to thank @jonathan-innis for his PR, where the required code changes come from.
It is assumed that you can publish the image to your own repository and use it in your Karpenter deployment (in our environment we use ECR and EKS, Karpenter is deployed with Helm using the official chart).
The steps:

Fork the https://github.com/kubernetes-sigs/karpenter repo and clone it
To ensure Karpenter version consistency, from the Releases page, select the commit of the version you are interested in (in our case we use 0.37.0) so the commit is 38b4c32043724f6dafce910669777877295d89ec). Checkout this commit locally, you'll get into detached head state
Create a branch for the fix (i.e. ignore_extended_resources)
Make the same changes as shown in the original pull request. Make sure to change smarter-devices to your own extended resource name that you would like to ignore
Commit and push the branch to your fork
Clone the https://github.com/aws/karpenter-provider-aws repo (no need to fork)
Do the step 2 for this repo too, to ensure the provider and karpenter versions match
Install ko and go
Add this line to the end of go.mod file (change the branch name if it is different):

replace sigs.k8s.io/karpenter => github.com/<your-org-or-account-name>/karpenter ignore_extended_resources

Run go mod tidy from the root of the repo, it should download the replacement dependency from your fork

$ go mod tidy
go: downloading github.com/<your-org-or-account-name>/karpenter v0.0.0-20241003171933-4834e30c1e45
go: downloading k8s.io/cloud-provider v0.30.1
go: downloading k8s.io/component-base v0.30.1
go: downloading k8s.io/csi-translation-lib v0.30.1
go: downloading github.com/stretchr/testify v1.9.0
go: downloading go.uber.org/goleak v1.3.0
go: downloading gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
go: downloading go.uber.org/automaxprocs v1.5.3
go: downloading github.com/jmespath/go-jmespath/internal/testify v1.5.1
go: downloading github.com/blang/semver/v4 v4.0.0
go: downloading golang.org/x/mod v0.17.0
go: downloading github.com/kr/pretty v0.3.1
go: downloading github.com/spf13/cobra v1.8.0
go: downloading github.com/pmezard/go-difflib v1.0.0
go: downloading github.com/golang/glog v1.1.0
go: downloading github.com/prashantv/gostub v1.1.0
go: downloading github.com/inconshreveable/mousetrap v1.1.0
go: downloading github.com/rogpeppe/go-internal v1.10.0
go: downloading github.com/kr/text v0.2.0

We didn't want the build process to publish the image anywhere yet, so we modified the Makefile to only build it locally. If you want the same behavior, modify the Makefile like this:

-       $(eval CONTROLLER_IMG=$(shell $(WITH_GOFLAGS) KOCACHE=$(KOCACHE) KO_DOCKER_REPO="$(KO_DOCKER_REPO)" ko build --bare github.com/aws/karpenter-provider-aws/cmd/controller))
+       $(eval CONTROLLER_IMG=$(shell $(WITH_GOFLAGS) ko build --bare -L github.com/aws/karpenter-provider-aws/cmd/controller))

Ensure Docker is running on your machine
Build the image:

$ make image
2024/10/03 20:24:38 Using base public.ecr.aws/eks-distro-build-tooling/eks-distro-minimal-base@sha256:5c9f8d3da61beb5ed4d60344767c7efaf24e76f6e1355a86697b507b5488a4d6 for github.com/aws/karpenter-provider-aws/cmd/controller
2024/10/03 20:24:39 Building github.com/aws/karpenter-provider-aws/cmd/controller for linux/amd64
2024/10/03 20:24:44 Loading ko.local:63c03b831c126d0b62d9df69a4d0cfbda8a57092bf7f2db08db8719ec05f20fa
2024/10/03 20:24:46 Loaded ko.local:63c03b831c126d0b62d9df69a4d0cfbda8a57092bf7f2db08db8719ec05f20fa
2024/10/03 20:24:46 Adding tag latest
2024/10/03 20:24:46 Added tag latest
make: Nothing to be done for 'image'.

The ko.local is the karpenter controller image.

At this point, you can upload it to the repository of your choice, update the controller.image.repository, controller.image.tag and controller.image.digest Helm chart variables and deploy it.
We stopped seeing any could not schedule pod errors from Karpenter instantly, and consolidation started working properly. Thanks again @jonathan-innis !
P.S.
If you run YuniKorn in a cloud environment, don't forget to update the node sorting policy to binpacking to achieve better node utilization and reduce costs!

For anyone watching this issue, I have a proof of concept to solve this problem here: #1305

This seems to be a universal way to go. Probably a bit complex to configure and document the first time, but it extends a lot the capabilities. Any plans ready for an implementation ?
@ellistarn to simplify a little bit don't you think it would make sense to be able using a selector pointing directly to a NodePool name ? Maybe I miss some logic in NodeOverlays, but as an example some resources like xilinx.com/fpga-xilinx_u30_gen3x4_base_2-0: 1 require special hardware based on a Device plugin (question could be continued in the PR directly)


ag grid angular 2 - prerendering issues

An unhandled exception occurred while processing the request.
Exception: Call to Node module failed with error: Prerendering failed because of error: ReferenceError: HTMLElement is not defined
at Object. (G:\RTS 3.3\RTS3.20\RTS3.17\RTS\RTS\node_modules\ag-grid\dist\lib\filter\baseFilter.js:174:31)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object. (G:\RTS 3.3\RTS3.20\RTS3.17\RTS\RTS\node_modules\ag-grid\dist\lib\filter\textFilter.js:29:20)
at Module._compile (module.js:571:32)
Current directory is: G:\RTS 3.3\RTS3.20\RTS3.17\RTS\RTS

Pls give me a solution ASAP

The Ag-grid library isn't compatible with Universal, meaning it doesn't Render on the server.
https://github.com/ceolter/ag-grid/issues/699
You can see from the Author that he has no intention of supporting it :(
You'll have to pick a component library is compatible with server renders, or disable that option in your application by removing the below attribute from your Views/Home/Index.cshtml view.
<app asp-prerender-module="ClientApp/dist/main-server">Loading...</app>

<!-- change it to -->
<app>Loading...</app>

Thanks!
But now i can only see    this  Loading... when i run my app...
i don't have a idea to run my application with ag-grid.Please suggest now i what i need to do to run my application with ag-grid

Run your app in the Chrome web browser
Hit F12 to open the debug window
Click the console tab
Post any errors you see.

This seems to be a support question about Angular and "ag-grid", so I'd recommend taking the discussion to one of those communities. Hope that's OK!

OK.Thank You! @SteveSandersonMS.Now i will go with NG2 TABLE.


chore(deps): Upgrade to ndk 0.9 and fix thread-safety interactions

Closes #807
Closes #808
Closes #955
Most changes were copied over from my wry PR at https://github.com/tauri-apps/wry/pull/1296.  Most notably a &ThreadLooper is now passed to wry::android_setup() because we have one, and it gives important safety guarantees when it comes to registering callbacks on this looper, without (unnecessarily!) requiring Send.  A thread-local requirement already exists for the JNIEnv that is passed around anyway.
Also note that certain workarounds and illogical inverted passes around key_code() handling are no longer needed, as the ndk crate now passes an enum with the raw i32 around so that the .into() conversion for i32 (the correct type) now becomes lossless.

In the end I'm also quite surprised how many linter warnings trigger in this crate, which don't seem to be down to just linting on an older Rust toolchain?

Thank you


Added grammar fixes.

Nice catches! I'm mergin it.
Thank you for your contribution. Have a nice day! :)