ubuntu 24.04 with k3s 1.28.9 crash at boot

Kairos version:

kairos version
provider-kairos version: 2.6.4, compiled with: go1.21.7
CPU architecture, OS, and Version:

arch: amd64
os: ubuntu 24.04
Describe the bug

After build and install ubuntu 24.04 with k3s 1.28.9, the os keep crashing when k3s service start.
full error report is here https://github.com/k3s-io/k3s/issues/10101
To Reproduce

build kairos with k3s 1.28.9
try to boot it
system crash and reboot
Expected behavior

it shall boot and run
Logs

see https://github.com/k3s-io/k3s/issues/10101
Additional context

confirmed also with v1.29.4

ubuntu 24.04
k3s v1.29.4
do not enable k3s on install
on first boot, run k3s service
it will run for a couple of minutes then fully freeze the machine and cause a hard restart

After that, trying to start it will result for me in errors all around
Jun 11 14:01:14 localhost k3s[2586]: E0611 14:01:14.357604    2586 kubelet.go:2353] "Skipping pod synchronization" err="container runtime status check may not have completed yet"
Jun 11 14:01:15 localhost k3s[2586]: E0611 14:01:15.326496    2586 resource_quota_controller.go:440] unable to retrieve the complete list of server APIs: metrics.k8s.io/v1beta1: stale GroupVersion discovery: metrics.k8s.io/v1beta1
Jun 11 14:01:15 localhost k3s[2586]: I0611 14:01:15.780695    2586 garbagecollector.go:835] "failed to discover some groups" groups="<internal error: json: unsupported type: map[schema.GroupVersion]error>"
Jun 11 14:01:18 localhost k3s[2586]: E0611 14:01:18.117850    2586 remote_runtime.go:633] "Status from runtime service failed" err="rpc error: code = Unknown desc = invalid UUID length: 0: unknown"
Jun 11 14:01:18 localhost k3s[2586]: E0611 14:01:18.117912    2586 kubelet.go:2877] "Container runtime sanity check failed" err="rpc error: code = Unknown desc = invalid UUID length: 0: unknown"
Jun 11 14:01:18 localhost k3s[2586]: E0611 14:01:18.775354    2586 container_manager_linux.go:881] "Unable to get rootfs data from cAdvisor interface" err="unable to find data in memory cache"
Jun 11 14:01:19 localhost k3s[2586]: E0611 14:01:19.358559    2586 kubelet.go:2353] "Ski

clean log before crash
Jun 11 14:15:10 localhost kernel: cni0: port 4(veth7f3a92c9) entered disabled state
Jun 11 14:15:10 localhost kernel: veth7f3a92c9: entered allmulticast mode
Jun 11 14:15:10 localhost kernel: veth7f3a92c9: entered promiscuous mode
Jun 11 14:15:10 localhost kernel: cni0: port 5(vetha766c6b0) entered blocking state
Jun 11 14:15:10 localhost kernel: cni0: port 5(vetha766c6b0) entered disabled state
Jun 11 14:15:10 localhost kernel: vetha766c6b0: entered allmulticast mode
Jun 11 14:15:10 localhost kernel: vetha766c6b0: entered promiscuous mode
Jun 11 14:15:10 localhost systemd[1]: Started cri-containerd-e37ead52ee121f5938f93dc05dc83213b8068567800e997fef119d63d23901b0.scope - libcontainer container e37ead52ee121f5938f93dc05dc83213b8068567800e997fef119d63d23901b0.
░░ Subject: A start job for unit cri-containerd-e37ead52ee121f5938f93dc05dc83213b8068567800e997fef119d63d23901b0.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-e37ead52ee121f5938f93dc05dc83213b8068567800e997fef119d63d23901b0.scope has finished successfully.
░░
░░ The job identifier is 1251.
Jun 11 14:15:10 localhost systemd[1]: Started cri-containerd-75039a472fa3a25662a693ab1301d56cdc2395df94851e792b32c98512994c46.scope - libcontainer container 75039a472fa3a25662a693ab1301d56cdc2395df94851e792b32c98512994c46.
░░ Subject: A start job for unit cri-containerd-75039a472fa3a25662a693ab1301d56cdc2395df94851e792b32c98512994c46.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-75039a472fa3a25662a693ab1301d56cdc2395df94851e792b32c98512994c46.scope has finished successfully.
░░
░░ The job identifier is 1259.
Jun 11 14:15:10 localhost systemd-networkd[1127]: vetha766c6b0: Gained carrier
Jun 11 14:15:10 localhost kernel: cni0: port 5(vetha766c6b0) entered blocking state
Jun 11 14:15:10 localhost kernel: cni0: port 5(vetha766c6b0) entered forwarding state
Jun 11 14:15:10 localhost systemd-networkd[1127]: veth7f3a92c9: Gained carrier
Jun 11 14:15:10 localhost kernel: cni0: port 4(veth7f3a92c9) entered blocking state
Jun 11 14:15:10 localhost kernel: cni0: port 4(veth7f3a92c9) entered forwarding state
Jun 11 14:15:10 localhost systemd-resolved[1285]: Failed to determine the local hostname and LLMNR/mDNS names, ignoring: No such device or address
Jun 11 14:15:10 localhost systemd-resolved[1285]: Failed to determine the local hostname and LLMNR/mDNS names, ignoring: No such device or address
Jun 11 14:15:10 localhost systemd[1]: Started cri-containerd-4a68e5b63d54e3a8a2705fa62b37a744693425925290c0831896ddfacb029024.scope - libcontainer container 4a68e5b63d54e3a8a2705fa62b37a744693425925290c0831896ddfacb029024.
░░ Subject: A start job for unit cri-containerd-4a68e5b63d54e3a8a2705fa62b37a744693425925290c0831896ddfacb029024.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-4a68e5b63d54e3a8a2705fa62b37a744693425925290c0831896ddfacb029024.scope has finished successfully.
░░
░░ The job identifier is 1267.
Jun 11 14:15:10 localhost systemd-resolved[1285]: Failed to determine the local hostname and LLMNR/mDNS names, ignoring: No such device or address
Jun 11 14:15:10 localhost systemd[1]: Started cri-containerd-c0f505522bab0929b6577eae08ac97ca3430e5064e6e7d4cb6473694d3b4e74a.scope - libcontainer container c0f505522bab0929b6577eae08ac97ca3430e5064e6e7d4cb6473694d3b4e74a.
░░ Subject: A start job for unit cri-containerd-c0f505522bab0929b6577eae08ac97ca3430e5064e6e7d4cb6473694d3b4e74a.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-c0f505522bab0929b6577eae08ac97ca3430e5064e6e7d4cb6473694d3b4e74a.scope has finished successfully.
░░
░░ The job identifier is 1275.
Jun 11 14:15:10 localhost systemd[1]: Started cri-containerd-335cac93f53a003d2504cf81916daa77e43aa98eb70cbf0ed7c7447b6cc49629.scope - libcontainer container 335cac93f53a003d2504cf81916daa77e43aa98eb70cbf0ed7c7447b6cc49629.
░░ Subject: A start job for unit cri-containerd-335cac93f53a003d2504cf81916daa77e43aa98eb70cbf0ed7c7447b6cc49629.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-335cac93f53a003d2504cf81916daa77e43aa98eb70cbf0ed7c7447b6cc49629.scope has finished successfully.
░░
░░ The job identifier is 1283.
Jun 11 14:15:10 localhost systemd-resolved[1285]: Failed to determine the local hostname and LLMNR/mDNS names, ignoring: No such device or address
Jun 11 14:15:10 localhost systemd-resolved[1285]: Failed to determine the local hostname and LLMNR/mDNS names, ignoring: No such device or address
Jun 11 14:15:11 localhost systemd-networkd[1127]: vetha766c6b0: Gained IPv6LL
Jun 11 14:15:12 localhost systemd-networkd[1127]: cni0: Gained IPv6LL
Jun 11 14:15:12 localhost systemd-networkd[1127]: veth2da0544e: Gained IPv6LL
Jun 11 14:15:12 localhost systemd-networkd[1127]: veth907aefdd: Gained IPv6LL
Jun 11 14:15:12 localhost systemd-networkd[1127]: veth2e7d620c: Gained IPv6LL
Jun 11 14:15:12 localhost k3s[2141]: I0611 14:15:12.679588    2141 kuberuntime_manager.go:1529] "Updating runtime config through cri with podcidr" CIDR="<IP_ADDRESS>/24"
Jun 11 14:15:12 localhost k3s[2141]: I0611 14:15:12.680862    2141 kubelet_network.go:61] "Updating Pod CIDR" originalPodCIDR="" newPodCIDR="<IP_ADDRESS>/24"
Jun 11 14:15:12 localhost systemd-networkd[1127]: veth7f3a92c9: Gained IPv6LL
Jun 11 14:15:13 localhost systemd[1]: var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount3842500200.mount: Deactivated successfully.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ The unit var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount3842500200.mount has successfully entered the 'dead' state.
Jun 11 14:15:13 localhost systemd[1]: var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount2096714187.mount: Deactivated successfully.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ The unit var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount2096714187.mount has successfully entered the 'dead' state.
Jun 11 14:15:14 localhost systemd[1]: Started cri-containerd-09125cd7d3a6bbd21b93d13433040fe956a14776543299d4ce49a0bf2c7c41a9.scope - libcontainer container 09125cd7d3a6bbd21b93d13433040fe956a14776543299d4ce49a0bf2c7c41a9.
░░ Subject: A start job for unit cri-containerd-09125cd7d3a6bbd21b93d13433040fe956a14776543299d4ce49a0bf2c7c41a9.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-09125cd7d3a6bbd21b93d13433040fe956a14776543299d4ce49a0bf2c7c41a9.scope has finished successfully.
░░
░░ The job identifier is 1291.
Jun 11 14:15:14 localhost systemd[1]: Started cri-containerd-df02313b0db16b61969d77e649bbf1a79d1f5a07355f9a608004c93de2ef422a.scope - libcontainer container df02313b0db16b61969d77e649bbf1a79d1f5a07355f9a608004c93de2ef422a.
░░ Subject: A start job for unit cri-containerd-df02313b0db16b61969d77e649bbf1a79d1f5a07355f9a608004c93de2ef422a.scope has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit cri-containerd-df02313b0db16b61969d77e649bbf1a79d1f5a07355f9a608004c93de2ef422a.scope has finished successfully.
░░
░░ The job identifier is 1299.
Jun 11 14:15:14 localhost systemd[1]: var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount1101758237.mount: Deactivated successfully.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ The unit var-lib-rancher-k3s-agent-containerd-tmpmounts-containerd\x2dmount1101758237.mount has successfully entered the 'dead' state.

I installed this: https://github.com/kairos-io/kairos/releases/download/v3.0.12/kairos-ubuntu-24.04-standard-amd64-generic-v3.0.12-k3sv1.28.5+k3s1.iso
without enabling k3s. Then I logged in and started k3s manually. Before it crashed I started capturing journalctl -f  logs. Here i the last part until the crash:
logs.txt

It's strange, because @liyimeng said that 1.28.6 works. Also that linked ticket doesn't lead to a kernel panic and reboot (which is what I'm seeing). Are we looking at 2 different issues here?

I searched for parts of the exception that looked relevant and this result came up. I tried the suggestion, adding pcie_aspm=off ubuntu to the cmdline and it now doesn't crash. Still Pods don't seem to start successfully.

journalctl -f -u k3s shows these errors:
Jun 13 07:19:58 localhost k3s[7254]: E0613 07:19:58.993820    7254 remote_runtime.go:222] "StopPodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to destroy network for sandbox \"07dbe03aacaf90e4de2b58909582ed8ee6191d604974af33b1336edcb0e16b03\": failed to get network \"cbr0\" cached result: decoding version from network config: unexpected end of JSON input" podSandboxID="07dbe03aacaf90e4de2b58909582ed8ee6191d604974af33b1336edcb0e16b03"
Jun 13 07:19:58 localhost k3s[7254]: E0613 07:19:58.993871    7254 kuberuntime_manager.go:1380] "Failed to stop sandbox" podSandboxID={"Type":"containerd","ID":"07dbe03aacaf90e4de2b58909582ed8ee6191d604974af33b1336edcb0e16b03"}
Jun 13 07:19:58 localhost k3s[7254]: E0613 07:19:58.993914    7254 kuberuntime_manager.go:1080] "killPodWithSyncResult failed" err="failed to \"KillPodSandbox\" for \"b3eb0b00-1080-4934-b7dc-96ea9e91be41\" with KillPodSandboxError: \"rpc error: code = Unknown desc = failed to destroy network for sandbox \\\"07dbe03aacaf90e4de2b58909582ed8ee6191d604974af33b1336edcb0e16b03\\\": failed to get network \\\"cbr0\\\" cached result: decoding version from network config: unexpected end of JSON input\""
Jun 13 07:19:58 localhost k3s[7254]: E0613 07:19:58.993953    7254 pod_workers.go:1300] "Error syncing pod, skipping" err="failed to \"KillPodSandbox\" for \"b3eb0b00-1080-4934-b7dc-96ea9e91be41\" with KillPodSandboxError: \"rpc error: code = Unknown desc = failed to destroy network for sandbox \\\"07dbe03aacaf90e4de2b58909582ed8ee6191d604974af33b1336edcb0e16b03\\\": failed to get network \\\"cbr0\\\" cached result: decoding version from network config: unexpected end of JSON input\"" pod="kube-system/helm-install-traefik-5hf46" podUID="b3eb0b00-1080-4934-b7dc-96ea9e91be41"
Jun 13 07:19:59 localhost k3s[7254]: E0613 07:19:59.367537    7254 resource_quota_controller.go:440] unable to retrieve the complete list of server APIs: metrics.k8s.io/v1beta1: stale GroupVersion discovery: metrics.k8s.io/v1beta1
Jun 13 07:19:59 localhost k3s[7254]: I0613 07:19:59.778413    7254 garbagecollector.go:816] "failed to discover some groups" groups="<internal error: json: unsupported type: map[schema.GroupVersion]error>"
Jun 13 07:19:59 localhost k3s[7254]: E0613 07:19:59.976507    7254 remote_runtime.go:222] "StopPodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to destroy network for sandbox \"2d79e83a102db35dcadf52fb507468122a4349ff874317338a8819b37ffa4150\": failed to get network \"cbr0\" cached result: decoding version from network config: unexpected end of JSON input" podSandboxID="2d79e83a102db35dcadf52fb507468122a4349ff874317338a8819b37ffa4150"
Jun 13 07:19:59 localhost k3s[7254]: E0613 07:19:59.976556    7254 kuberuntime_manager.go:1380] "Failed to stop sandbox" podSandboxID={"Type":"containerd","ID":"2d79e83a102db35dcadf52fb507468122a4349ff874317338a8819b37ffa4150"}
Jun 13 07:19:59 localhost k3s[7254]: E0613 07:19:59.976603    7254 kuberuntime_manager.go:1080] "killPodWithSyncResult failed" err="failed to \"KillPodSandbox\" for \"6042af7a-2757-4a9d-853c-b22868e7bf75\" with KillPodSandboxError: \"rpc error: code = Unknown desc = failed to destroy network for sandbox \\\"2d79e83a102db35dcadf52fb507468122a4349ff874317338a8819b37ffa4150\\\": failed to get network \\\"cbr0\\\" cached result: decoding version from network config: unexpected end of JSON input\""
Jun 13 07:19:59 localhost k3s[7254]: E0613 07:19:59.976638    7254 pod_workers.go:1300] "Error syncing pod, skipping" err="failed to \"KillPodSandbox\" for \"6042af7a-2757-4a9d-853c-b22868e7bf75\" with KillPodSandboxError: \"rpc error: code = Unknown desc = failed to destroy network for sandbox \\\"2d79e83a102db35dcadf52fb507468122a4349ff874317338a8819b37ffa4150\\\": failed to get network \\\"cbr0\\\" cached result: decoding version from network config: unexpected end of JSON input\"" pod="kube-system/local-path-provisioner-84db5d44d9-qm958" podUID="6042af7a-2757-4a9d-853c-b22868e7bf75"

hm, I re-installed with this config:
#cloud-config

users:
  - name: kairos
    passwd: kairos

debug: true

install:
  grub_options:
    extra_cmdline: "pcie_aspm=off"

to put the options there by default and avoid k3s crashing in the first place (in case it left garbage behind on the first crash preventing it from working after adding the option).
The system crashed on the first boot after systemctl start k3s. So the option didn't fix it. On the other hand, it did work at least once. I have no idea what's going on now.

ok the cmdline option is completely irrelevant. It just happens that after the first crash, k3s becomes even more broken. So after reboot, when the service is started again, it doesn't even reach the point where the kernel crash occurs but fails with different errors earlier (not triggering the kernel panic).
Back to zero.

After starting the k3s service and before it crashes, this command returns a value:
$ systemctl show -p InvocationID --value k3s.service
fc073eb96e0a491dbed23e2d444dc826

I don't know where this output comes from but it seems there is an InvocationID.

random data point: I disabled immutability with rd.cos.debugrw just to see if this has anything to do with the failure. The failure still occurs, so nothing to do with it.

To collect more data points I also tried kairos-opensuse-tumbleweed-standard-amd64-generic-v3.0.12-k3sv1.29.3+k3s1. It doesn't crash but k3s fails to start Pods. In the journalctl -f -u k3s logs:
[  593.624150][ T1894] overlay: filesystem on /var/lib/rancher/k3s/agent/containerd/multiple-lowerdir-check3244114304/upper not supported as upperdir

(I delete the previous message about non-working TW, it works fine there).
Working TW:
systemd 255 (255.6+suse.30.g3ea0e1dff3)
+PAM +AUDIT +SELINUX +APPARMOR +IMA -SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK -XKBCOMMON -UTMP +SYSVINIT default-hierarchy=unified

kairos@localhost:~> uname -a
Linux localhost 6.9.1-1-default #1 SMP PREEMPT_DYNAMIC Fri May 17 11:59:46 UTC 2024 (0c0b0b5) x86_64 x86_64 x86_64 GNU/Linux

kairos@localhost:~> k3s --version
k3s version v1.29.3+k3s1 (8aecc26b)
go version go1.21.8

Working ubuntu 24.04 (kairos-ubuntu-20.04-standard-amd64-generic-v3.0.12-k3sv1.29.3+k3s1.iso):
root@localhost:/home/kairos# systemctl --version
systemd 245 (245.4-4ubuntu3.23)
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=hybrid

root@localhost:/home/kairos# uname -a
Linux localhost 5.15.0-107-generic #117~20.04.1-Ubuntu SMP Tue Apr 30 10:35:57 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

root@localhost:/home/kairos# k3s --version
k3s version v1.29.3+k3s1 (8aecc26b)
go version go1.21.8

TODO: Non working ubuntu

Seems to work with kernel linux-image-6.10.0-1003-oem from ppa ppa:canonical-kernel-team/ppa
diff --git a/images/Dockerfile.kairos-ubuntu b/images/Dockerfile.kairos-ubuntu
index e19dbe4..43474c2 100644
--- a/images/Dockerfile.kairos-ubuntu
+++ b/images/Dockerfile.kairos-ubuntu
@@ -250,10 +250,13 @@ RUN apt-get update && apt-get install -y --no-install-recommends \

 FROM base-ubuntu-current AS kernel-ubuntu-24.04
 RUN apt-get update
+RUN apt-get install -y software-properties-common
+RUN add-apt-repository ppa:canonical-kernel-team/ppa
+RUN apt-get update
 # If a kernel is already installed, don't try to install it again, this way the base image can
 # be non-hwe for older releases
 RUN [ -z "$(ls -A /boot/vmlinuz*)" ] && apt-get install -y --no-install-recommends \
-    linux-image-generic-hwe-24.04 || true
+    linux-image-6.10.0-1003-oem  || true
 RUN apt-get clean && rm -rf /var/lib/apt/lists/*

Also doesnt happen on upstream ubuntu+k3s directly....

btw, on an upstream ubuntu 24.04 k3s starts just fine. Kernel:
root@ubuntu-vm:/home/dimitris# uname -a
Linux ubuntu-vm 6.8.0-35-generic #35-Ubuntu SMP PREEMPT_DYNAMIC Mon May 20 15:51:52 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

maybe 6.8.0-35 does the magic too? (vs 6.8.0-31 that fails)

on my upstream, 6.8.0-35 worked
on kairos, 6.8.0-35 failed. Also 6.8.0-38
on kairos, 6.10.0 worked, then "upgrading" it to a kairos image that has 6.8.0-35 but the rest is the same, results in the crash.
Notice that after the crash, it wont crash anymore, probably due to the k3s not starting properly and not reaching the crash point.
@jimmykarily was able to capture this kernel panic which seems to point to networking as it meantiosn both conntrack and the trace points to the modules nfnetlink and nf_conntrack_netlink
[  120.464927] BUG: kernel NULL pointer dereference, address:<PHONE_NUMBER>000000
[  120.469465] #PF: supervisor read access in kernel mode
[  120.471199] #PF: error_code(0x0000) - not-present page
[  120.472658] PGD 800000010b231067 P4D 800000010b231067 PUD 10b3cd067 PMD 0
[  120.475137] Oops: 0000 [#1] PREEMPT SMP PTI
[  120.476249] CPU: 1 PID: 2870 Comm: conntrack Tainted: P           O       6.8.0-31-generic #31-Ubuntu
[  120.484866] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS unknown 2/2/2022
[  120.486481] RIP: 0010:strlen+0x0/0x30
[  120.487243] Code: 48 89 f8 31 d2 31 f6 31 ff c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 <80> 3f 00 74 16 48 89 f8 48 83 c0 01 80 38 00 75 f7 48 29 f8 31 ff
[  120.502904] RSP: 0000:ffffbbd081da36a0 EFLAGS: 00010246
[  120.504783] RAX:<PHONE_NUMBER>000000 RBX: ffff9fb48d176c00 RCX:<PHONE_NUMBER>000000
[  120.510100] RDX:<PHONE_NUMBER>000000 RSI:<PHONE_NUMBER>000000 RDI:<PHONE_NUMBER>000000
[  120.518139] RBP: ffffbbd081da36d8 R08:<PHONE_NUMBER>000000 R09:<PHONE_NUMBER>000000
[  120.524846] R10: ffff9fb488883090 R11:<PHONE_NUMBER>000000 R12:<PHONE_NUMBER>000000
[  120.530652] R13: ffff9fb48888308c R14: ffff9fb488883048 R15: ffffbbd081da36f4
[  120.532531] FS:<PHONE_NUMBER>431538(0000) GS:ffff9fb62cb00000(0000) knlGS:0000000000000000
[  120.536821] CS:  0010 DS: 0000 ES: 0000 CR0:<PHONE_NUMBER>050033
[  120.545083] CR2:<PHONE_NUMBER>000000 CR3: 000000010e83e003 CR4:<PHONE_NUMBER>370ef0
[  120.546777] DR0:<PHONE_NUMBER>000000 DR1:<PHONE_NUMBER>000000 DR2:<PHONE_NUMBER>000000
[  120.548479] DR3:<PHONE_NUMBER>000000 DR6: 00000000fffe0ff0 DR7:<PHONE_NUMBER>000400
[  120.550559] Call Trace:
[  120.551109]  <TASK>
[  120.552379]  ? show_regs+0x6d/0x80
[  120.553509]  ? __die+0x24/0x80
[  120.555871]  ? page_fault_oops+0x99/0x1b0
[  120.557177]  ? do_user_addr_fault+0x2ee/0x6b0
[  120.559012]  ? exc_page_fault+0x83/0x1b0
[  120.560423]  ? asm_exc_page_fault+0x27/0x30
[  120.561303]  ? __pfx_strlen+0x10/0x10
[  120.562866]  ? ctnetlink_dump_secctx.isra.0+0x7a/0xf0 [nf_conntrack_netlink]
[  120.567313]  ctnetlink_fill_info+0x297/0x480 [nf_conntrack_netlink]
[  120.571437]  ctnetlink_dump_table+0x27a/0x5f0 [nf_conntrack_netlink]
[  120.572849]  netlink_dump+0x1c0/0x340
[  120.575420]  __netlink_dump_start+0x1eb/0x320
[  120.577173]  ctnetlink_get_conntrack+0x233/0x2c0 [nf_conntrack_netlink]
[  120.579338]  ? __pfx_ctnetlink_start+0x10/0x10 [nf_conntrack_netlink]
[  120.582850]  ? __pfx_ctnetlink_dump_table+0x10/0x10 [nf_conntrack_netlink]
[  120.584133]  ? __pfx_ctnetlink_done+0x10/0x10 [nf_conntrack_netlink]
[  120.588293]  nfnetlink_rcv_msg+0x347/0x420 [nfnetlink]
[  120.589195]  ? __pfx_nfnetlink_rcv_msg+0x10/0x10 [nfnetlink]
[  120.591275]  netlink_rcv_skb+0x5a/0x110
[  120.592745]  nfnetlink_rcv+0x6c/0x180 [nfnetlink]
[  120.594431]  netlink_unicast+0x24a/0x390
[  120.596096]  netlink_sendmsg+0x214/0x470
[  120.598137]  __sys_sendto+0x21b/0x230
[  120.601406]  __x64_sys_sendto+0x24/0x40
[  120.603639]  x64_sys_call+0x1c33/0x25c0
[  120.605532]  do_syscall_64+0x7f/0x180
[  120.606570]  ? handle_mm_fault+0xad/0x380
[  120.607627]  ?

Problem is, as usual Selinux
Modifying /etc/cos/bootargs.cfg to remove the security=selinux selinux=1 on boot (by overriding the bootargs file while building the iso) it works as expected and doesnt crash
NAMESPACE     NAME                                     READY   STATUS      RESTARTS   AGE
kube-system   local-path-provisioner-957fdf8bc-bbqh2   1/1     Running     0          38s
kube-system   coredns-77ccd57875-9wvbc                 1/1     Running     0          38s
kube-system   helm-install-traefik-crd-49blq           0/1     Completed   0          38s
kube-system   svclb-traefik-86c8a295-7nzvq             2/2     Running     0          29s
kube-system   helm-install-traefik-xpx8c               0/1     Completed   1          38s
kube-system   traefik-768bdcdcdd-2zgrj                 1/1     Running     0          29s
kube-system   metrics-server-648b5df564-v2vwz          1/1     Running     0          38s
kairos@localhost:~$ uname -a
Linux localhost 6.8.0-35-generic #35-Ubuntu SMP PREEMPT_DYNAMIC Mon May 20 15:51:52 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
kairos@localhost:~$ cat /proc/cmdline
BOOT_IMAGE=(loop0)/boot/vmlinuz console=ttyS0 console=tty1 net.ifnames=1 rd.cos.oemlabel=COS_OEM rd.cos.oemtimeout=10 panic=5 rd.emergency=reboot rd.shell=0 systemd.crash_reboot=yes root=LABEL=COS_ACTIVE cos-img/filename=/cOS/active.img rd.emergency=reboot rd.shell=0 panic=5 systemd.crash_reboot systemd.crash_shell=0

So either we are missing something here in terms of selinux settings or profiles, or its just not supported in ubuntu 24.04 and we have to expand the bootargs to disable selinux
Probably if we try with plain ubuntu+selinux enabled + k3s we could reproduce this maybe? That its the piece missing :D

hi guys, glad you get time to look into this. I think it is ubuntu kernel issue somewhere. Likely k3s make some syscall and crash it.

Following @Itxaka 's suggestion,  installing these packages on Ubuntu makes it work:
   selinux-utils
   selinux-basics
   selinux-policy-default

(I also tried to install only selinux-basics but it was failing with selinux errors)


Missing documentation for System.IO.Pipelines.Pipe

Steps to reproduce,

Go to https://docs.microsoft.com/en-us/dotnet/api/
Type System.IO.Pipelines.Pipe
Documentation expected to be shown, nothing appropriate gets displayed

Documentation is available from third party blogs, https://blog.marcgravell.com/2018/07/pipe-dreams-part-1.html

@mairaw @terrajobst @BillWagner I am assuming this is coming from a different NuGet package, that we haven't onboarded yet?

apisof.net (https://apisof.net/catalog/System.IO.Pipelines.Pipe) indicates this is part of .NET Core + extensions, so yes.

@mairaw thanks for the confirmation! This is likely part of the work that we have to do for hybrid content onboarding. I will leave this open for now, as that's something we know we need to work on.

Documentation should now be available!


[SPARK-10506][SQL]move .close() to finally code block

move close to finally to avoid potential  resource leak

Merged build triggered.

Merged build started.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42184/
Test FAILed.

test failed by jenkins ?

LGTM

Test build #1730 has started for   PR 8664 at commit 637dee0.

Test build #1730 has finished for   PR 8664 at commit 637dee0.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

retest this please

Merged build triggered.

Merged build started.

Test build #42216 has started for   PR 8664 at commit 637dee0.

Test build #42216 has finished for   PR 8664 at commit 637dee0.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42216/
Test FAILed.

Merged build triggered.

Merged build started.

hi @srowen @andrewor14 after debug, I found before we call  UTF8String.fromBytes(output.toByteArray) , we must call generator.close(), otherwise UTF8String.fromBytes will get empty result. That why the code yesterday didnt pass the test.      But  I dont know the root cause :)

Test build #42247 has started for   PR 8664 at commit 4b91eac.

Test build #42247 has finished for   PR 8664 at commit 4b91eac.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42247/
Test FAILed.

Test build #1735 has started for   PR 8664 at commit 4b91eac.

Test build #1735 has finished for   PR 8664 at commit 4b91eac.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

retest this please

Merged build triggered.

Merged build started.

Test build #42350 has started for   PR 8664 at commit 4b91eac.

Test build #42350 has finished for   PR 8664 at commit 4b91eac.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42350/
Test FAILed.

@baishuo HiveQuerySuite is failing consistently here. I wonder if it is somehow related to this change?

Test build #1770 has started for   PR 8664 at commit 4b91eac.

Test build #1770 has finished for   PR 8664 at commit 4b91eac.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

@baishuo can you follow up on this, or close the PR?

I am so sorry that I worked on trip and diffcult to connect github. @andrewor14 @srowen
close this PR
I will reopen it when I  go back to beijing


Balance is incorrect

When approving an expense claim, the remaining budget does not decrease.  I have approved six expense claims and the current budget still remains the same value.
URL: https://opencollective.com/wordpress-sydney/
Logged in as (username or profile URL): https://opencollective.com/wil
Error message if any:
Expected result: Budget does not decrease with approved expense claims
Browser: Chrome

Scrap that - I was wrong sorry.


New pay now button

I have created a much better button to be used, a much better and more accurate Stripe check out button.
The SVG file is attached below in case you ever want to modify, also shows you what the button looks like.

Hi @xboxfly15, thanks for the PR. May I ask where this SVG comes from? Did you make this one yourself?

Hi, yes I made this myself. It is inspired by the "Pay Now" button on https://github.com/stripe-archive/stripe-payments-demo
No problem, I'll upload a button with Alipay and without and then people can easily choose which one they want.

Done!
Here's the SVG with Alipay. I've changed the button.png to be the one with alipay, people can rename the file if they want to use the version without alipay.

ah you are faster than me, figuring out the right way to edit svg. I will attach my version here as well:

Let me embed the svg file to the plugin as well, instead of the github issue. Also I would like to credit this in the README if you don't mind. I will update over your branch here.

@xboxfly15 Again, thanks for taking time!


Song info on failure

Say what song a failure occurred on when uploading or syncing in the logs.

Fixed in bcabaac804770df560a4e6a58790cac800b011c7.


where can I  get your paper?

I have read your introduction, but I want to make sure if you track the pose in 3D? thanks

@maoyali could you write me an Email to tanke  iai.uni-bonn.de? Cheers

http://pages.iai.uni-bonn.de/gall_juergen/download/jgall_mvpose_gcpr19.pdf


[FIX] fix links anchor to bids examples

closes #1544

If we're going to link to the website, the website should probably link to the example datasets.

If we're going to link to the website, the website should probably link to the example datasets.

like this you mean:
https://github.com/bids-standard/bids-examples/pull/390


Does PGBM interface easily with Feature Importance methods?

Hello!
Thank you for this wonderful model!
I was curious though, just how well does PGBM work with things like sklearns partial dependency plots (https://scikit-learn.org/stable/modules/partial_dependence.html), Feature Importance graphs etc?

Hi,
Thanks! We don't support integration with these features yet, but there are two options to investigate feature importance:

You can use the model.feature_importance attribute to investigate the feature importance by split_gain (i.e. this provides the total accumulated split_gain per feature). More important features typically show higher gain.
You can use model.permutation_importance(X, y=None, n_permutations) to investigate the feature importance based on permutation invariance (see also this explanation). You can do this both supervised (i.e. 'what is the effect on my test error if I permute this feature randomly') or unsupervised (i.e. 'how much does my prediction change when randomly permuting this feature').

For an example of all these methods, see here (Torch version) or here (Numba version).
In the future I'd first like to support Shap values as an additional feature importance metric, since this is one of the best techniques for evaluating feature importance.
Hope this helps.

Hi, I wasn't too happy with my initial answer. The following code demonstrates how you can use sklearn's partial dependence plot function with a PGBM regressor:
from sklearn.base import BaseEstimator

class PGBM_sklearn(BaseEstimator):
    def __init__(self, params, objective, metric):
        self.params = params
        self.objective = objective
        self.metric = metric

    def fit(self, X, y):
        self._estimator_type = "regressor"
        self.model = PGBM()
        train_set = (X, y)
        self.model.train(train_set, params=self.params, objective=self.objective, metric=self.metric)
        self.fitted_ = "yes"

        return self

    def predict(self, X):
        return self.model.predict(X)

from sklearn.inspection import plot_partial_dependence
model = PGBM_sklearn(params, objective, metric).fit(X_train, y_train)
plot_partial_dependence(model, X_test, [0])

Perhaps this helps you.

Hi,
As another follow-up, you might be interested to see these examples:
In there, we specify a set of monotonic constraints for two features and evaluate them using sklearn's partial_dependence function. The monotonic_constraint feature is new, so make sure to upgrade to at least version 1.1 of the package (pip install pgbm --force-reinstall).

Hello @elephaint
Thank you very much for the quick response and your assistance with this! The class wrapper works quite nicely!

Hi, good to hear!
I've released a new version (1.2) that fixes a few bugs (specifically for the Torch-GPU version and a bug relating to the calculation of monotone constraints), but maybe more importantly I've also now included the sklearn wrapper. So, you can now simply do, e.g.
from pgbm import PGBMRegressor
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_boston
X, y = load_boston(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.1)
model = PGBMRegressor().fit(X_train, y_train)
yhat_point = model.predict(X_test)
yhat_dist = model.predict_dist(X_test)

For the Numba version, just replace pgbm with pgbm_nb. This wrapper uses the standard mse loss and rmse evaluation metric, but you can supply own loss functions as a parameter. See also here for the PyTorch version and here for the Numba version for more details about parameters.
The torch-cpu and numba estimators pass all sklearn estimator checks (the gpu-version has an issue with pickling), so they should fit into the sklearn ecosystem nicely.

Closing this issue, feel free to reopen if you feel I missed something.


Got Memory issue and application crashed.

If I set huge amount of html string then got memory issue in debugger and application crashed

Hello @takhil , Did you find any solution for this?
I am getting same problem. Let me know if any solution.
@nnhubbard : Can you please help us out in this issue?


T&D section gives out ISO not GB boilerplate (Chinese and English)

Current gem gives out ISO boilerplate for the T&D section. It should have been the GB boilerplate.
Chinese:

English:

I don't believe I've ever seen GB-specific boilerplate, and there certainly isn't any in the code or YAML configuration. We assumed it would be user supplied, and present or ignored via a document attribute. If there is known GB boilerplate for T&D, please supply it in Chinese and English.

Yes we had that conversation, boilerplate located here: https://github.com/riboseinc/asciidoctor-gb/issues/23#issuecomment-367169593

Right, so the only thing from ISO that needs to be suppressed is term_def_boilerplate:

ISO和IEC用于标准化的术语数据库地址如下：

ISO在线浏览平台:
        位于http://www.iso.org/obp

IEC Electropedia:
        位于http://www.electropedia.org

The current logic there is that the ISO boilerplate is added if there isn't any boilerplate supplied by the user. That must be a misunderstanding: the ISO boilerplate is not to be supplied regardless of what the user has typed.
What should be supplied, presumably, only if there isn't any boilerplate supplied by the user is the content before that, 本文件不提供术语和定义 or 下列术语和定义适用于本文件 or %界定的术语和定义适用于本文件 or % 界定的以及下列术语和定义适用于本文件. Please confirm.

Yes. Correct. The first one is when there are no terms; the second only terms provided below, the third when terms are purely sourced from external sources, the last one when terms sourced and are also provided in this document.


Add support for Kubernetes 1.16

Update Kubespray version to 2.12 (installs K8s 1.16).
Update Intel Device Plugins to v0.15.0 and fix compatibility issues.
Update SR-IOV Network device plugin from v3.0.0 to v3.1.
Update Multus from v3.2  to v3.3 and fix compatibility issues.

rebased on top of the latest master


SE-0157: Enable recursive protocol constraints by default.

We don't know if they work in general, but specific cases of recursive
protocol constraints are working, and enabling them doesn't break
anything.

@swift-ci please smoke test and merge

Reverting here: https://github.com/apple/swift/pull/10950

Thanks for the revert. No party hats for me!


Use vector icons.

This patch removes the png icons, and replaces them with vector icons. This should make it easier to add/change icons in the future, as a single file can provide all the multi-density images.
Since we are targeting an older minSdkVersion, the vectors are converted to png at build time, as per https://developer.android.com/studio/write/vector-asset-studio.html
I've tried to make sure that the images look as close to the originals as possible.

Where did you get the images? I can probably provide original SVG for the Traccar logo.. and other icons are from Google material icons set.

A small advantage of this is I use android:fillColor="@color/primary" in the vector files, so changing the colour of the icons is as simple as changing the color/primary resource.

Here is the original source for the icon with shadow:
https://www.dropbox.com/s/cwtcw2t9eibi1ux/logo-with-shadow.svg?dl=0

I've rebased this off master, and added a small fix needed to make it work with the support library v27.

Merged, thanks. Would you be able to implement same thing for Traccar Manager?

Merged, thanks. Would you be able to implement same thing for Traccar Manager?
Sure. I'll do that today.

I'm very sorry, this patch has an issue with. The icon does not show on older SDKs. I'm sure I tested it on older SDK's.  Maybe my testing faulty.
I'm working on a fix.

I'm assuming there is the same problem with manager as well, correct?

I'm assuming there is the same problem with manager as well, correct?
Yes


Add script for Google Analytics tracking, active if consent is given

Towards https://github.com/giantswarm/giantswarm/issues/22128
This PR adds JavaScript code to check if the user has given consent based on the Hubspot GDPR banner. If yes, we add Google Analytics tracking code to the DOM.
The GA4 property is one exclusively created for docs.

It turned out that this is not ready as it is. We want to use a different GA4 property for the entire domain, but that isn't set up yet.

what we do with this @marians ?

I am closing this for now


⚠ Bofrost.at has degraded performance

In 62493c2, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1458 ms

Resolved: Bofrost.at performance has improved in ed96cb2 after 6 minutes.


(maint) Update more beaker tests for FIPS mode

This commit skips a filebucket test when running in FIPS mode because we
only support FIPS in PE, which disables filebucket. It also fixes up a
typo around FIPS detection logic, to avoid testing md5 sums when
running in FIPS mode.

feel free to merge when CI passes


Fix on Extra semicolon in form.js

src/js/form.js
17:26  error  Extra semicolon  semi
18:82  error  Extra semicolon  semi
✖ 2 problems (2 errors, 0 warnings)
2 errors and 0 warnings potentially fixable with the --fix option.

Please merge this, the current master branch can not be build.


Ability to launch a new tab on macOS from a keyboard shortcut

Feature description
The documentation found here says that I should be able to open a new tab by pressing "Shift + Cmd + `", but this doesn't appear to be working for me.
I'm on v17.3.
Screenshots
N/A
Steps to reproduce

Open WebSSH
Start a connection within SSH
Press "Shift + Cmd + `" to try and open a new tab.
Nothing happens

Thanks!

This shortcut isn't made by WebSSH but macOS.
It won't allow to launch a new tab directly but instead show all tabs then you will be able to add a new tab by pressing the plus button.
Which shortcut is shown on your macOS?
Here is mine :

Oh that's interesting, mine doesn't have that:

Strange.
macOS 12.3 also as me?
I will improve the documentation by deleting the shortcut.
I also need to find a way to add this shortcut but I don't have found any way - yet - to open a tab from code.

Thanks Arnaud! (Yep, 12.3 as well)

I was sure that shortcut were same on all languages but I'm wrong.
Documentation will be updated soon after being updated by the pipeline.
Thanks too!

I've been trying to see if it's an option I've just not enabled somewhere, but had no luck so far.
Thank you for adding this as a feature request. Multiple tabs and split view are new features I'm looking forward to on the macOS app. :)

🙏👍💪❤ Thank you so much @jarrah31 about sponsoring my work ❤💪👍🙏

There's a workaround!
If I select "Show All Tabs", it gives me the following window:

Which then gives me multiple tabs!

🙏👍💪❤ Thank you so much @jarrah31 about sponsoring my work ❤💪👍🙏

You're welcome, I'm more than happy to do so! Your app is genuinely very useful! The fact you don't charge a monthly subscription makes a big difference, but I realise you still need to cover monthly costs, so I just wanted to show my appreciation for the price of a monthly coffee/beer. 🍺

Already enhanced inside WebSSH 18.0 : Cmd + t will allow to open a new tab
Beta release will be available in the next few days

Now available inside WebSSH 18.0

This also works great in 18.0 beta, thank you!


fix code Dockerfile

Pull Request Title:
Fix Dockerfile by removing redundant installation of curl, jq, and supervisor
Description:
This pull request fixes the Dockerfile by removing the redundant installation of curl, jq, and supervisor to streamline the process.
Changes Made:

Removed the duplicate installation command for curl, jq, and supervisor.

Files Modified:

geth/Dockerfile

I noticed an issue in the script where the command sequence apt-get install -y jq curl supervisor was used.
It seems that the order of the commands could be improved for better logic and consistency. Specifically, curl should come before jq since curl is more fundamental and commonly required first in most scenarios.
I’ve corrected this to apt-get install -y curl jq supervisor, which is more appropriate for ensuring the proper installation flow.
Stay based

I don't face any issues with the installation flow 😅

@teenager-ETH Thank you, we're going to leave this as-is for now.


Declare iteration counters

Declaring i in for loops so that this module is usable in strict mode.

The codebase currently uses "classic" ES5 "var" instead of "let" statements. Since there may be people using this with old node versions I think we should stay with that until the next major release.
Could you please change your PR to use "var" of "let"?

Thanks! :+1:


Newsletter-7: translate into Chinese

I have picture problems in this file
in local:
## Check for broken links
bundle exec htmlproofer --check-html --disable-external --url-ignore '/^\/bin/.*/' ./_site
Running ["LinkCheck", "HtmlCheck", "ScriptCheck", "ImageCheck"] on ["./_site"] on *.html...

Ran on 1096 files!

- ./_site/zh/newsletters/2018/08/07/index.html
  *  image /img/posts/rbf.png does not have an alt attribute (line 133)
htmlproofer 3.15.0 | Error:  HTML-Proofer found 1 failure!
make: *** [test-after-build] Error 1
Makefile:88: recipe for target 'test-after-build' failed

in remote enviroment test:
4:21:04 PM: "build.command" failed
4:21:04 PM: ────────────────────────────────────────────────────────────────
4:21:04 PM:
4:21:04 PM:   Error message
4:21:04 PM:   Command failed with exit code 2: make (https://ntl.fyi/exit-code-2)
4:21:04 PM:
4:21:04 PM:   Error location
4:21:04 PM:   In Build command from Netlify app:
4:21:04 PM:   make
4:21:04 PM:
4:21:04 PM:   Resolved config
4:21:04 PM:   build:
4:21:04 PM:     command: make
4:21:04 PM:     commandOrigin: ui
4:21:04 PM:     environment:
4:21:04 PM:       - REVIEW_ID
4:21:04 PM:     publish: /opt/build/repo/_site
4:21:04 PM:     publishOrigin: ui
4:21:05 PM: Failed during stage "building site": Build script returned non-zero exit code: 2
4:21:05 PM: Build failed due to a user error: Build script returned non-zero exit code: 2
4:21:05 PM: Failing build: Failed to build site
4:21:05 PM: Finished processing build request in 7m30.057s

How to debug the image error? What should I do?


Colour output broken on mingw on Windows

steps
Run SBT
problem
Garbage characters instead of colours
expectation
Coloured output
notes
I know coloured output is supported by this terminal as npm is able to produce coloured output without issue.

does anyone know if this has progressed?

So much has changed around Windows and JLine so maybe we should close it for now, and reopen if others still run into this.


react/prop-types doesn't work with fragment syntax

Example:
import React from "react";

const ForAttendees = ({ page }) => (
  <>

{page}

barfoo

  </>
);

export default ForAttendees;

react/prop-types does not capture this. If you replace the fragment syntax with divs, it detects the case.

I suspect a lot of rules will need to be updated to support fragment syntax.

Related: #1579, #1661

@bebraw in the meantime, does this work with <React.Fragment> instead of <>?

@lencioni Yeah, going with that fixes it.

Since babel 7 is required for <>, and is not yet released, let’s leave this open until it is, so we will be sure to fix it.

FYI, babel 7 got released

See #1956


Stale centroids and centroid names

This changeset on December 20 deleted manual place=county nodes that had been label members of boundary relations, in favor of letting the tiler generate centroid points automatically. These points are being generated automatically, but the old deleted nodes are still present in the tiles, resulting in duplicate labels. Additionally, the same changeset removed dates from the boundary relations’ name=* tags, but these dates are present in the automatically generated centroid points.

This was only cache cleaning workflow, but actually the data has been removed from the DB,

The specific examples above have cleared up, but I’m still seeing several other duplicate points and stale names from the same changeset:

I think I might be running into the same or similar issue. Today I refined this building outline from a rough square to a more precise shape, but the square is still visible behind the new shape:

This building is stale from several days ago. I originally uploaded 1317 Republic St without a start_date. I corrected that four days ago, but it is still visible before 1878:

I have been testing  removing point/label from  boundary relations,  it is working updating the tiles, https://www.openhistoricalmap.org/changeset/151388#map=6/-11.135/-72.817&layers=O&date=1500-01-01&daterange=1500-01-01,2024-12-31


Reevaluate debug sequence points after shortening jumps

Problem
Debug sequence points offsets were not updated after removing NOP during jump shortening
Solution
Count NOPs before seqpoint and offset opcodes on this amount
Added tests to check that reevaluation was correct

question: should debug points be removed if they were replaced with NOP, panic or keep code as is?

should debug points be removed if they were replaced with NOP

Likely we'll just have several points at the same offset and then hi, #2428.

@roman-khimov, agree to merge?


chore(deps): upgrade jenkins-x/jx3-versions to version 1.18.5

from: https://github.com/jenkins-x/terraform-aws-eks-jx

Do these tests actually fail? or it's a bug in lighthouse/github?

/retest


Missing Agents in SimulationScene

Hi,
I experimented with the following example: https://github.com/nvr-avg/trajdata/blob/main/examples/simple_sim_example.py
This worked out of the box, but with some different datasets / settings it didn't.

Same Dataset, but freeze_agents=False

KeyError: ('4f41f55039c34783b0f63a3ebc196434', 1)

eupeds_eth Dataset with  freeze_agents=False

KeyError: ('2', 2)

eupeds_eth Dataset with  freeze_agents=True

KeyError: 'labels [5] not found in level'
I'm not positing the full stack trace as it probably isn't very helpful. Best to reproduce it quickly on a local machine.
I figured the issue might be in https://github.com/nvr-avg/trajdata/blob/24251636bc708bd20e91a538b68095300a3199c8/src/trajdata/simulation/sim_df_cache.py#L125.
As far as I understand it, it drops the available data and replaces it with the calculated data. The problem is that the calculated data only contains the agents that have been in the scene before. Thus, data from agents that appear new in the scene us just dropped without any replacement.
I wrote some quick code to replace the above (L124 - 127) with:
self.persistent_data_df = pd.concat([self.persistent_data_df, sim_step_df])
self.persistent_data_df = self.persistent_data_df[~self.persistent_data_df .index.duplicated(keep='last')]

This will just concatenate the simulated data and then remove the duplicated. Data from new agents in the scene is therefore kept.
This seemed to fix all three cases above. Which is a little bit surprising, because I assumed it wouldn't fix 3 as the agents should be frozen.
Did I understand the code correctly? Perhaps you can have look. Thanks!

Hi @Leon0402 , thanks for the detailed questions.
Just today I have fixed point 3 in our internal version of the codebase, what I did was add a check to Line 124 to only drop data if persistent_data_df actually contains data at that timestep. Further, I don't actually expect points 1 and 2 to work yet; I have not yet implemented the handling of unfrozen agents in simulation.
You understand the code correctly, and that is exactly why those errors come up. The way point 3 works is that only data from the agents existing in the initial frame of the scene is kept within persistent_data_df, this is why for unfrozen agents at later timesteps there is no corresponding data in the persistent_data_df as they did not exist in the initial frame when the simulation was created. Again, this is purely because I have not yet implemented the handling of unfrozen agents (it requires a deeper discussion overall, since agents appearing may not be consistent with how the scene evolved until then...).


ADD Remove fav for movie on Movie Detail Page

closes #150

@MastanSayyad , Level 1 should be assigned as only fav and un fav is added not much changes to correspond to level 2


Implement benchmark test

Codecov Report
Attention: Patch coverage is 0% with 10 lines in your changes missing coverage. Please review.

Project coverage is 86.94%. Comparing base (0ba38b6) to head (baac090).

Files
Patch %
Lines

client.go
0.00%
7 Missing and 1 partial :warning:

server.go
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #2      +/-   ##
==========================================
- Coverage   89.32%   86.94%   -2.39%
==========================================
  Files           5        5
  Lines         328      337       +9
==========================================
  Hits          293      293
- Misses         25       33       +8
- Partials       10       11       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[5.4] Included ability to pass extra variables to Blade @each

As it is not possible to pass extra variables to the @each, it's hard to avoid the @foreach sometimes.
with the inclusion of the $mergeData, it is simple to add new variables:
@each ('blog.post', $posts, 'post', 'blog.empty', ['data' => 'This is a sample data'])
This way, we can use the $data on our 'blog.post' view.
Note1: I've included the argument at the end to avoid break older versions.
Note2: Now the empty will accept 'false' as argument. If it is false, the code will add the 'raw|' to it. This is to make it easier to developers to 'jump' an argument that couldn't be used.

Hm, i like the idea. But can't it create confusion because it's not possible to know if this extra data is beeing included in the else part or the included view..
I hope you got my point... :)

By the way, will be good to make possibly pass simple text except path to view if object is empty.

@morlodere Agreed! I've jus updated the else part, adding the $mergeData on it. So, now the passed variables will be available on both parts.

@rorc If you pass the $empty as 'raw|Any Text', the line 190 substr($empty, 4) will remove the 'raw|' and add only the text. So, it will print just 'Any Text' instead of load a partial.

@maurobaptista Ok, thanks =)

@morloderex I've also updated the test file to handle the ability to pass the variables to the empty view.

I don't like that I would be force to specify an "empty" view just to define extra data to pass to the view.

@taylorotwell Nether do I. What do you suggest?

Do not change it, and forget about it! (If you need to use an extra variable just use @foreach + @include)

Make the last argument ($empty) accept string or array. If string, it will be a view, if array it will be the set of one or more variables. In the last case, if it must contain the 'empty' key, pass it as the empty view.

@param  string|array  $empty
renderEach($view, $data, $iterator, $empty = 'raw|')
(Ps: The arg $empty, should have a different name to make a better understanding of the code)

Keep as suggested, but if the user passes as the fourth argument an array, it will consider it as $mergeData. Another way it will be considered the view.

public function renderEach($view, $data, $iterator, $empty = 'raw|', $mergeData = [])
e.g.
public function renderEach('blog.post', [], $post, 'blog.empty): The 4th arg will be the empty view
public function renderEach('blog.post', [], $post, ['key' => 'value']): The 4th arg will be the variable to be passed to the view
public function renderEach('blog.post', [], $post, 'blog.empty', ['key' => 'value']): It will have the empty view as the 4th arg, and the variables as the 5th arg.

^ I think 3 seems the best one, it's simple and does the job, try to resubmit it with this change to get a new feedback. 😄

@fernandobandeira Thanks for the feedback. I will do it!


how to write checkpoints when loading splitted dump

My code loads a split dump like this:
const gruppeString = gruppe === 'Lebensräume' ? 'lr' : (gruppe === 'Macromycetes' ? 'pilze' : gruppe.toLowerCase())
app.remoteDb.get('ae-' + gruppeString)
  .then(function (doc) {
    return _.keys(doc._attachments)
  })
  .then(function (attachments) {
    let series = PouchDB.utils.Promise.resolve()
    attachments.forEach(function (fileName) {
      series = series.then(function () {
        const couchUrl = getCouchUrl()  // is: http://localhost:5984/artendb (local dev) or http://arteigenschaften.ch/artendb (production, untested yet)
        const loadUrl = couchUrl + '/ae-' + gruppeString + '/' + fileName
        // TODO: looks like no checkpoint is set, so following replication takes forever
        return app.localDb.load(loadUrl, {proxy: couchUrl})
      })
    })
    series.then(function () {
      resolve(true)
    })

Real code here: https://github.com/barbalex/ae/blob/master/src/modules/loadGroupFromRemote.js
When the promise resolves, replication is started for the loaded subset of docs:
app.localDb.replicate.from(app.remoteDb, {
  filter: function (doc) {
    return (doc.Gruppe && doc.Gruppe === gruppe)
  }
})

Real code here: https://github.com/barbalex/ae/blob/master/src/actions.js#L98-L102
The problem is: A checkpoint was not written, or so it seems, because pouchdb starts thousands of changes requests to the remoteDb.
After this replication the checkpoint was written thought: if I start replication a second time (manually) it finishes after only two requests to the remoteDb.
Am I doing something wrong?
Or does the proxy setting only work when a dump was not split?
I do see that the split files are loaded from last to first. So if pouchdb overwrites the checkpoint every time it loads one of the split files, there will be a checkpoint but most of the replication will still happen.
Update: I changed the sorting of the split files. The one with the last docs is now loaded last. Replication still takes forever.

Looking at your code, it seems like the issue is that you are not providing a proxy option to the load() request. If you don't, then replication will start from scratch after you've load()ed all the files. (Although yes you are right that the order matters for checkpoing writing; you should load the last one last.)
As a working example, you can look at http://npm-browser.com, which loads may large files in sequence and then switches to regular replication with a remote CouchDB. Here is the code for the loading operation.

is it not included in this line here?: https://github.com/barbalex/ae/blob/master/src/modules/loadGroupFromRemote.js#L33

Hey, seems like you looking solved the issue ;-)
Without changing any code it suddenly works. Maybe caching played a trick?
Anyway: I now write the checkpoint only when loading the last dump of split files: https://github.com/barbalex/ae/blob/master/src/modules/loadGroupFromRemote.js#L35-L39
Sorry for bugging you!

Happy it works. :)


Ensure we pass needed environment in edpm_deploy

As a pull request owner and reviewers, I checked that:

[X] Appropriate testing is done and actually running

recheck

/approve

We don't have the error anymore for that task:
https://review.rdoproject.org/zuul/build/b2727aed63dc4dc3b5d24dbe849aa0ed/log/ci-framework-data/logs/ansible.log-2023-07-20-22:57#1910
Still, we apparently lack the actual output.... Might be nice to redirect the command stdout to |tee -a {{ cifmw_edpm_deploy_basedir }}/logs/<some-file>.log or something like that.


spawnMachine method is ignoring custom classes inherited from Interpreter.

Description
If using custom interpreter class inherited from Interpreter, spawnMachine method always returns original class.
Expected Result
CustomInterpreter class should create new instance of itself in spawnMachine method.
Actual Result
Interpreter creates new instance of itself, not pointed class.
Reproduction
class CustomInterpreter extends Interpreter {
    spawnMachine(machine, options) {
        return super.spawnMachine(machine, options)
    }
}
const actor = new CustomInterpreter(exampleMachine)
assert( actor.spawnMachine(exampleMachine) instanceof CustomInterpreter ) // assert error

Additional context
At core/src/interpreter.ts line 848
Line:
const childService = new Interpreter(machine, {

IMHO should be something like:
const childService = new (this.constructor as any)(machine, {

I have prepared fix for it already, I want to be sure if it is bug or feature.

Personally I would be against this - I feel that extending our classes can only lead to problems. Composition over inheritance and stuff. Why would you like to extend the builtin Interpreter like this?

According to documentation guides, there is a possibility to create custom interpreters, however custom interpreters do not work with nested machines, so only option is to extend class.
While creating multiple compositions of machines, sometimes they are used as plain sometimes as nested, I would expect same behavior in all cases.
Simplest example: because of duplication of code we decided to migrate promises and some services to machines. Thanks to that we can compose or use some machines standalone, also testing is universal.
While process of migration is ongoing and we needed to keep already existing error handling, instead of fighting with it in every case, we created function wrapper that returns machines as promises. Yet it was not handy, and we wanted to keep machine descriptions as much in JSON format as possible.
Extending Interpreter class allowed us to get things done and solve problems instead of fighting with them. In this case future problems are something we can handle and we agree for.
Simply thanks to that this part of code is not changing, and can be used as promise and machine.
load: {
  invoke: {
    src: loadService,
    onDone: 'done',
    onError: 'error',
  }
}

So few lines of code solved problem instead of researching for alternative libraries, writing our own, or refactoring every single machine. We are using a lot MST now, custom interpreter allowed us also to simplify stores and for painless and powerful integration of XState with MST. And it is working great!
Also solves problem from #696 that we were fighting with.

Why would you like to extend the builtin Interpreter like this?

Interpreter should be a class that interprets machine definition to custom resources, that allows two things: keeping things universal, and making easy to integrate Xstate with any possible system. Let's assume that having mobx-state-tree model, we want to add state machine on top of it, and we love how xstate is solving it, meanwhile there is a lot of unnecessary duplication of code and logic. So why do not create MSTXstateInterpreter, that will do something like this:
class MSTXstateInterpreter extends Interpreter {
    exec(action, context, event, actionFunctionMap) {
        const actionOrExec = getActionFunction( action.type, context )
        const exec = typeof actionOrExec === 'function' ? actionOrExec : actionOrExec ? actionOrExec.exec : action.exec;
        if (exec) {
            return exec(context, event, { action: action, state: this.state });
        } else {
            return super.exec(action, context, event, actionFunctionMap)
        }
    }
}

obviously it is example not finished code
instead of writing and mapping guards, services or actions to model. Possibilities are endless, and while we are interpreting xstate definition to our own resources, we can still keep it as it is, without breaking compatibility etc.
IMHO Interpreter class should be exposed, devs should be even encouraged to use it as it may ends up with deep integration of xstate in multiple different projects. And obviously, every developer that is using custom interpreter should know and be aware about consequences and take responsibility (like with any library).

We are in this situation too. We need a way to register for our application the services that are created/spawned but since the default interpreter always spawns an instance of itself, we also have to do some hacks to work around this problem, or write too much boilerplate code.
I understand the problem of the composition but rewriting completely an interpreter just to change a particular behavior seems to be a big problem when we don't want to diverge from the default interpreter. Keeping composition can be also possible but we need a way to inject the interpreter to use when invoking a machine, but it will be necessary to provide this option in the config of the machine that should not be aware of such things for me.
What do you think of this problem? Is there another better solution?
@Baael do you still have your fix working? We can also make a PR if necessary.

What do you think of this problem? Is there another better solution?

Could you describe your problem in a more concrete way? It's hard to discuss any details with such an abstract description. What are you trying to do?

@Baael do you still have your fix working? We can also make a PR if necessary.

Nope, in the end I've created my own implementation based on/compatible with Xstate build on MST, cause I've had multiple other things to solve that do not align well with Xstate itself.


Docs/compare approaches

This responds to #34 by adding a description of the library to the introduction and adding a reference to pairwise.org, and the statement that this is a popular tool.

Codecov Report

Merging #37 (837afb0) into main (767726f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #37   +/-   ##
=======================================
  Coverage   90.46%   90.46%
=======================================
  Files           9        9
  Lines         860      860
=======================================
  Hits          778      778
  Misses         82       82

Continue to review full report at Codecov.

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


Prevent History from duplicating output fields whose names end with their component name

Description

Fields included in History collections may accidentally be duplicated when their name end with their corresponding component name, if such a name includes non-alphabetical characters used to identify expressions in MAPL_SetExpression(). For example, this happens when running two instances of GOCART's carbonaceous aerosol (CA) component: one for black carbon, named CA.bc, and the other for organic carbon, named CA.oc. Exported fields from each component are differentiated by adding to the component's name to their original name (e.g. CAphilicCA.bc).
This PR introduces changes to explicitly take into account this case, preventing History from duplicating such fields and generating the error: existing item CAphilicCA.bc not replacable
Related Issue

This PR reintroduces changes submitted with PR #729
Motivation and Context

This PR addresses an issue potentially preventing History from writing exported fields whose names end with their component's name.
How Has This Been Tested?

The changes were tested on Orion using a UFS-GOCART test case.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Trivial change (affects only documentation or cleanup)

Checklist:

[ ] I have tested this change with a run of GEOSgcm (if non-trivial)
[x] I have added one of the required labels (0 diff, 0 diff trivial, 0 diff structural, non 0-diff)
[x] I have updated the CHANGELOG.md accordingly following the style of Keep a Changelog

Adding @bena-nasa as the reviewer.

@rmontuoro   we can't see what the actual problem is here.   Could you propose some times where you, @bena-nasa and myself could discuss?

I think you have hit a corner case in History that we have not hit before.
If you add aliases to the fields that will get you past this. This issue has nothing to do with the component or instant name in the field, you just picked the field name that triggered this.  It is misinterpreting that as an expression because of the "." in the field name and causing a duplicate field to be added because fo the quirks of how the expressions are handled. So try adding the alias:
  inst_ca_3d.format:     'CFIO' ,
  inst_ca_3d.descr:      '3d,3-Hourly,Instantaneous,Model-Level,Analysis,Aerosol Concentrations',
  inst_ca_3d.template:   '%y4%m2%d2_%h2%n2z.nc4',
  inst_ca_3d.mode:       'instantaneous',
  inst_ca_3d.grid_label:  PC720x361-DC ,
  inst_ca_3d.splitField:  1,
  inst_ca_3d.frequency:   030000 ,
  inst_ca_3d.duration:    030000 ,
  inst_ca_3d.ref_time:    000000 ,
  inst_ca_3d.nbits:      10,
  inst_ca_3d.fields:   'CAphilicCA.bc' , 'CA.bc'   , 'CAphillicCA_bc' ,
                       'CAphobicCA.bc' , 'CA.bc'   , 'CAphobicCA_bc' ,
                       'CAphobicCA.oc' , 'CA.oc'   , 'CAPphobicCA_oc' ,
                       'CAphobicCA.oc' , 'CA.oc'   ,  'CAphobicCA_oc' ,
                      ::

This should get you past the crash, while I make a patch.

@bena-nasa - Adding aliases for the CA fields as you specified causes the following error, which is the same behavior I was observing early on:
FAIL at line=05086    MAPL_HistoryGridComp.F90                 <Field CAphillicCA_bc not found>

Ok, I have made a patch for what I assumed was the issue I was able to see which I assumed was the "." in the name. Now that I can run UFS/Gocart let me investigate this. I don't know why using the alias works for GEOS but would not work here.


Feature request: hatchling should implement the prepare_metadata_for_build_wheel hook

In Fedora Linux, the prepare_metadata_for_build_wheel hook is used to generate a package’s runtime requirements to use as build-time RPM dependencies, which is helpful for ensuring everything is in place to run the tests. Since hatchling does not implement this hook, it’s not possible to do this for hatchling or for projects that use it as a build backend. The most popular Python build systems (setuptools, poetry, flit, build, etc.) do support this hook.
This is just an inconvenience, and can be worked around by some manual effort or project-specific scripting hacks, but it would be a helpful feature if it’s practical to implement.

I can do this. Is the METADATA file all you need?

Per https://www.python.org/dev/peps/pep-0517/#build-wheel:

If the build frontend has previously called prepare_metadata_for_build_wheel and depends on the wheel resulting from this call to have metadata matching this earlier call, then it should provide the path to the created .dist-info directory as the metadata_directory argument. If this argument is provided, then build_wheel MUST produce a wheel with identical metadata.

So, without access to build-time data METADATA, entry_points.txt, and license_files/ would be identical but WHEEL would not since build hooks can modify the tag/file name and whether or not it is ZIP-safe.
Therefore, we have three options:

Go against PEP 517 and produce a non-identical .dist-info directory

Go against PEP 427 and omit the WHEEL file

Per https://www.python.org/dev/peps/pep-0517/#prepare-metadata-for-build-wheel:

The hook MAY also create other files inside this directory, and a build frontend MUST preserve, but otherwise ignore, such files

We could actually build and cache the wheel here, and extract the real .dist-info directory. The build_wheel hook would then simply reuse the wheel from this stage.

Since hatchling does not implement this hook, it’s not possible to do this for hatchling or for projects that use it as a build backend.

You can just build the wheel in that case, the PEP even says that. We even provide a helper that does just that in pypa/build, https://pypa-build.readthedocs.io/en/latest/api.html#build.util.project_wheel_metadata.

3. We could actually build and cache the wheel here, and extract the real .dist-info directory. The build_wheel hook would then simply reuse the wheel from this stage.

This does not make sense, as people should be running build_wheel in that case. That approach would only make sense if you had to run some build step to generate the metadata, but not the whole build.

So, without access to build-time data METADATA, entry_points.txt, and license_files/ would be identical but WHEEL would not since build hooks can modify the tag/file name and whether or not it is ZIP-safe.

Can you elaborate here?

Can you elaborate here?

Hatch has the concept of build hooks like https://github.com/ofek/hatch-mypyc. Wheels recognize these fields which plugins can use to modify builds. For example, the aforementioned one does this to package compiled files.

You can just build the wheel in that case, the PEP even says that.

That's a really good point. @musicinmybrain Is there a reason why Fedora doesn't do that?

You can just build the wheel in that case, the PEP even says that.

That's a really good point. @musicinmybrain Is there a reason why Fedora doesn't do that?

I’m not sure I’m in a position to answer that question clearly, but I’ll try to rough out some context.
A modern Fedora RPM spec file for a Python library looks something like:
# [… name, description, sources, etc. …]
BuildRequires:  python3-devel

%package python3-foo
# […]

%prep
# unpack the tarball
%autosetup -n foo-%{version}

%generate_buildrequires
# -r means generate runtime dependencies, not just build-time, and is the default
%pyproject_buildrequires -r

%build
%pyproject_wheel

%install
%pyproject_install
%pyproject_save_files foo

%check
# run the tests

%files -n python3-foo -f %{pyproject_files}

The %prep section runs before %generate_buildrequires, then any additional build dependencies are installed based on its output (always as RPM packages, in an offline environment), then the wheel is built in %build and so on. Nothing else can be installed once %build starts.
Generating the runtime dependencies as (RPM-level) build dependencies prevents accidentally creating a package that can’t be installed due to unsatisfied dependencies, and it’s also typically necessary for running any tests.
Maybe there’s a way to be more clever in %pyproject_buildrequires, but on the other hand, the prepare_metadata_for_build_wheel hook, while optional per the relevant PEPs, is implemented in other build systems I’ve encountered. There was quite a bit of discussion about whether and how to support it in build; see also the associated PR.
Here is where and how the hook is actually used in Fedora.
A workaround to get the metadata I actually need to generate runtime dependencies for userpath looks like this:
%generate_buildrequires
echo 'python3dist(tomli)'
'%{python3}' <<EOF
from tomli import load

def emit(tomlbase, reqtag, getdeps):
    with open(f'{tomlbase}.toml', 'rb') as cfgfile:
        deps = getdeps(load(cfgfile))
    with open(f'requirements.{reqtag}.txt', 'w') as reqfile:
        reqfile.writelines(f'{dep}\n' for dep in deps)

emit('pyproject', 'pyproject', lambda cfg: cfg['project']['dependencies'])
EOF
%pyproject_buildrequires -R requirements.pyproject.txt

Another workaround would be to simply maintain the list of BuildRequires manually by copying them out of pyproject.toml and checking them on each update. For a long time, that was how Python packages were handled in Fedora, but it has proved to be error-prone.
Mentioning @hroncok, who is the primary author of this machinery in Fedora and who might be interested in this discussion.

The current situation is that if the prepare metadata for wheel hook is not available, our %pyproject_buildrequires macro cannot do anything wrt runtime requires. This could be changes by falling back to building the wheel instead, but that could lead into surprising results. For instance, the environment variables set during the %build phase are different than during the %generate_buildrequires phase. I'm sure there are semantics expectations from what is done in %generate_buildrequires and building the entire package isn't what RPM devs expected. Technically, it's probably possible.

I keep pondering whether or not to implement this but it just doesn't make sense to given that build hooks may modify the WHEEL file and PEP 517 explicitly outlines what to do in this case.
I think each distribution's machinery should adhere to the PEP. Is that okay?

@musicinmybrain If you wish to experiment with building the wheel in =generate_buildrequires, open an RFE for pyproject-rpm-macros. I bet it's actually doable somehow.

@musicinmybrain If you wish to experiment with building the wheel in %generate_buildrequires, open an RFE for pyproject-rpm-macros. I bet it's actually doable somehow.

I've opened https://bugzilla.redhat.com/show_bug.cgi?id=2076994
tox 4 now uses hatchling

From the above I cannot understand the workaround, or otherwise why this was closed...
Trying to install platformdirs 2.5.2 in a poetry controlled project (under NixOS) I got the following:
Processing /build/platformdirs-2.5.2
  Running command Preparing metadata (pyproject.toml)
  Traceback (most recent call last):
    File "/nix/store/byxadvq5s849vl5xsla3rf2p2802syv3-python3.10-pip-22.0.3/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 156, in prepare_metadata_for_build_wheel
      hook = backend.prepare_metadata_for_build_wheel
  AttributeError: module 'hatchling.build' has no attribute 'prepare_metadata_for_build_wheel'

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/nix/store/byxadvq5s849vl5xsla3rf2p2802syv3-python3.10-pip-22.0.3/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
      main()
    File "/nix/store/byxadvq5s849vl5xsla3rf2p2802syv3-python3.10-pip-22.0.3/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/nix/store/byxadvq5s849vl5xsla3rf2p2802syv3-python3.10-pip-22.0.3/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 160, in prepare_metadata_for_build_wheel
      whl_basename = backend.build_wheel(metadata_directory, config_settings)
    File "/nix/store/g8sz7bxjqf3pwididawh9ngirsmqjxgr-python3.10-hatchling-0.22.0/lib/python3.10/site-packages/hatchling/build.py", line 41, in build_wheel
      return os.path.basename(next(builder.build(wheel_directory, ['standard'])))
    File "/nix/store/g8sz7bxjqf3pwididawh9ngirsmqjxgr-python3.10-hatchling-0.22.0/lib/python3.10/site-packages/hatchling/builders/plugin/interface.py", line 103, in build
      configured_build_hooks = self.get_build_hooks(directory)
    File "/nix/store/g8sz7bxjqf3pwididawh9ngirsmqjxgr-python3.10-hatchling-0.22.0/lib/python3.10/site-packages/hatchling/builders/plugin/interface.py", line 318, in get_build_hooks
      raise ValueError('Unknown build hook: {}'.format(hook_name))
  ValueError: Unknown build hook: vcs

Thanks for any hint!

https://github.com/platformdirs/platformdirs/commit/d6ab2ca5bb19d0c707352d826d76785d085d165f#commitcomment-71548711

Thanks, will try adding also hatch-vcs...

Thanks, will try adding also hatch-vcs...

Packaging for Fedora Linux, I find that simply having hatch-vcs available is sufficient for a wheel built from the platformdirs PyPI sdist to be properly versioned.
I don’t know much about the NixOS Way of Doing Things, but for distribution packagers in general, if you find yourself needing to build from a GitHub archive instead of a PyPI sdist for some reason (because some upstreams don’t include documentation or tests in the PyPI sdist, for example, although this isn’t an issue for platformdirs), then it’s good to know that hatch-vcs uses setuptools-scm, so the trick
export SETUPTOOLS_SCM_PRETEND_VERSION="${MY_PACKAGE_VERSION}"

works for hatch-vcs too.

https://github.com/dependabot/dependabot-core/issues/3290#issuecomment-1238417795
https://github.com/pypa/hatch/pull/466


fix: versions view breaks when collection has defaultSort

Description
Closes #4027
When using Postgres, the versions view was throwing an error when defaultSort is defined in the collection or global.

[X] I have read and understand the CONTRIBUTING.md document in this repository.

Type of change

[X] Bug fix (non-breaking change which fixes an issue)

Checklist:

[TODO] I have added tests that prove my fix is effective or that my feature works
[X] Existing test suite passes locally with my changes

Closing - alternate fix was released in v.2.4.0.


rule: make commit_files squashable with blobs

Closes #687

[x] I updated the documentation explaining the new behavior if any.
[x] I updated CHANGELOG.md file adding the new feature or bug fix.
[x] I updated go-mysql-server using make upgrade command if applicable.
[x] I added or updated examples if applicable.
[x] I checked that changes on schema are reflected into the documentation, if applicable.

Fixed. Forgot an iferrnil after that statement

Rebased

Rebased


⚠ Bofrost.lu has degraded performance

In 2130506, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 2151 ms

Resolved: Bofrost.lu performance has improved in 59850c6 after 36 minutes.


Cannot save bot: `Please correct the errors and try again.'

Github issues should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Version
No SDK, dev.botframework.com
Describe the bug
Bug: Settings in the dev.botframework.com page cannot be changed, leading to an error.
C.f. the discussion in the closed issue https://github.com/microsoft/botframework-sdk/issues/3549
I've decided to open a new issue since the original issue was about a different problem.
As has been pointed out in the discussion above, the problem lies in the property 'MsaAppType':'0' that is being sent with the request, leading to the error {"Errors":[{"Field":"MsaAppType","Message":"'MsaAppType' property cannot be changed."}]}
To Reproduce
Steps to reproduce the behavior:

Go to dev.botframework.com
change something
press save changes
See error: Please correct the errors and try again

Expected behavior
Saving succeeds successfully.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Tracking Status
Dotnet SDK TODO

[ ] PR
[ ] Merged

Javascript SDK TODO

[ ] PR
[ ] Merged

Python SDK TODO

[ ] PR
[ ] Merged

Java SDK TODO

[ ] PR
[ ] Merged

Samples TODO

[ ] PR
[ ] Merged

Docs TODO

[ ] PR
[ ] Merged

Tools TODO

[ ] PR
[ ] Merged

@MatDumoulin
Thank you for the report. We are investigating.

Hi there!
To follow up on the issue, I think we found why the "Please correct the errors and try again." error was occuring. Through Microsoft documentation, we found that https://dev.botframework.com/ is not the official way of managing your bots anymore.
The fix for us was to migrate our bots to Azure. Once the migration is done, you can change the messaging endpoint directly in Azure instead of doing it through dev.botframework.com.
I hope others might find this information useful!
As a side note, the documentation has to be updated since our bots are only using the Microsoft Teams channel but they still needed to be migrated.

@MatDumoulin
We are working on getting that error resolved, but in the long-term migrating to Azure is the best bet.

As a side note, the documentation has to be updated since our bots are only using the Microsoft Teams channel but they still needed to be migrated.

I don't understand what you mean by this. Migrating a bot to Azure happens irrespective of channel.

We had a PR ready for this issue. Incident 284309614 : [PR Ready]Need a fix: Cannot save bots in Dev Portal

Thanks @MatDumoulin. @anishprasad01 Do you still need an App ID of a Bot?

Nope, we're good. Once the PR makes its way through and goes live, the problem should be fixed and we'll close this issue.

I have a PR fix this issue.


⚠ Secret Website 1 has degraded performance

In ff30411, Secret Website 1 ($SECRET_WEBSITE_1) experienced degraded performance:

HTTP code: 200
Response time: 5867 ms

Resolved: Secret Website 1 performance has improved in d87b697.


maximum ask of new accounts is 250,000

Spec

The first time a user creates a proposal, they cannot ask for more than 50,000
If their project requires more funding, we will ask them to make a second proposal after their first one has passed and is in review.

Implementation

keep track of people's ask and success history
For people with non-positive track record, max is 50,000

Still missing:

[x] Unit test
[x] Change value to 250k?
[x] Implementation: A failed proposal "resets" a user's score. We add up successes and failures - maybe not needed.
[ ] Add ability to blacklist?
[x] Migrate old accounts into the trust table- so all previous proposals count.

Deployment

[ ] deploy proposals and settings
[ ] call reset on settings
[ ] call migrathistry() after deploying

There is a discussion for if this should be deployed or not.

Closing this since we may not want this.


Control automatic function parameter interpolation method

Description
Allow users to specify which interpolation method they would like to be applied to function parameters.
Motivation
When using three-dimensional lookup tables I have found better model build times when moving from "cubic" to "linear" interpolation (in particular convert_to_casadi is slow). At the moment I can only control this by modifying the process symbol method of parameter values.
The speed up might be due to differences in calculating the Jacobian (or perhaps not calculating it if the Jacobian at all is not defined everywhere for linear interpolation) but I am not sure of the exact reason.
Possible Implementation
I can think of a couple of ways of doing this but I'm not sure what is preferable for everyone. Both should be non-breaking.
1. Pass optional dictionary to parameter_values class
This would just involve adding an optional argument to the parameter_values class and then adding the input as an attribute of the class. The user would just pass an options dictionary in the following way:
options = {"interpolation methods": {"name of function parameter to target": "linear"}

if not specified then "cubic" interpolation will be used so that this change is nonbreaking.
2. Allow users to add a third entry to the tuple within the parameter values dictionary
i.e.
options = {"interpolation method": "linear"}
parameter_values_dictionary = {
   "negative electrode open circuit voltage [V]": ("negative electrode open circuit voltage [V]", ( (x_data, ), y_data), options),
   "positive electrode open circuit voltage [V]": ("positive electrode open circuit voltage [V]", ( (x_data, ), y_data)),
}

This could either be a dictionary like I suggest here (so that additional control can be easily added later) or it could just be "linear" or "cubic". This third argument should be optional with "cubic" used by default so that we don't break all previous code.
Additional context
I am happy to implement once there is agreement on how to do so.
Could perhaps be done in conjunction with modifications to function parameter in #2403

You can also create the Interpolant first to give more control rather than passing data directly, but I think a solution like you suggest would be useful.

Passing in the interpolant directly might be tricky because you don't know what the children objects are from outside the model classes. However, you can create a function that returns the interpolant object. I would favor this route (examples demonstrating how to do this in 1D, 2D, 3D) rather than functionality that lets you pass options, since it's fairly easy to do yourself if there is an example
It's interesting that you found linear to be better than cubic. I thought cubic worked better because of needing to differentiate? Ideally, the default would be linear.

Ah yeah good point. When I changed the default interpolant to linear I left the function parameters as cubic as I thought differentiating would lead to issues. I agree having linear as the default everywhere would be best.

Would be interesting to do a bit more detailed profiling to see where the bottleneck is


Expose copy_effects compute shader in Mobile backend

This PR exposes compute version (the only one currently) of copy effects allowing for using some of the RenderingServer's functions on Mobile backend eg. sky_bake_to_panorama.
Baking Lightmaps on development machine works (not considering other bugs).
Note: I encourage to test it on your phone. This is a quick change/hack, feedback necessary.
Fixes: https://github.com/godotengine/godot/issues/55868

I forgot about other checks too.

I can take a look at what functions (without raster version) can be exposed if not all of them need to be exposed.

The way I see it is that only copy_cubemap_to_panorama would be of any use. Should I leave other 2 functions as is (with check that is)?
Note: I haven't tested it on a phone yet, I need to build android template.

Note: I haven't tested it on a phone yet, I need to build android template.

The lightmapper_rd module isn't built on Android, so it won't work there either way.

Thanks!


[ ,dots.down ] is identified as content in typst

https://github.com/OrangeX4/mitex/blob/996f9e2fab1af7fdb9823d382dc9908a24d5a507/crates/mitex/src/lib.rs#L697-L700

This could be a bug in typst, with minimal reproducibility like this:
$mat(; ,x)$
// Err: expected array, found content

Specific reasons:
#let mymat = (..args) => repr(args)
$mymat(; ,x)$
// Output: (([],), [], ([x],))
// Expected: (([],), ([], [x]))

I'll try to output pmatrix(zws; zws,x) to avoid this bug.


Use Cluster Security Group - By default

Fixes #94
See: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html for background!

:shipit:

When the tests pass :trollface:

:shipit:

When the tests pass :trollface:

They are still running :hand_over_mouth:


Migrate 1x1 mhlo.conv to mhlo.dot pattern to linalg.conv to linalg.matmul pattern

Right now we are using a MHLO level pattern for 1x1 mhlo.conv. This should be replaced by a pattern that converts linalg.conv to linalg.matmul. So that it can be used for the linalg on tensors path.

This is done by Ahmed via https://github.com/google/iree/pull/5423.


Update CI configuration

Removing Square internal configuration from the open source repo.

SwiftTestTarget.xctest  seems to be missing on Xcode 11?