[BUG] One volume not backed up, all others backed up to S3

Describe the bug
I have longhorn installed on a k3s cluster.
The cluster has been newly set up a few week ago, but the Volumes are all restored from S3 storage.
I have a backup job doing hourly and daily incremental backups and a monthly full backup on my S3 storage.
Everything works fine, backups run for all volumes except for one particular volume.
My observation with the affected volume:

last backup as mentioned in UI: 6 days ago
Manually triggering a backup creates a snapshot but not a backup to S3
Scaling down the workload and manually attaching the volume leads to the same result.
There's no error in the instance manager logs
There's no event in the event log hinting at an error. After manual attachment and manual backup trigger, the last event is

source: longhorn-volume-controller
Reason: attached

To Reproduce

Expected behavior
The volume should be backed up to S3 like all other volumes in the cluster
Support bundle for troubleshooting
Sent to email
Environment

Longhorn version: 1.5.3
Impacted volume (PV): pvc-7bb71062-c152-4136-86a5-91f48e753970
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): Kubectl
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: K3s, v1.29.0+k3s1

Number of control plane nodes in the cluster: 3
Number of worker nodes in the cluster: 0

Node config

OS type and version:  Debian 12
Kernel version: Linux 6.1.0-17-amd64 x86_64
CPU per node: 4
Memory per node: 16Gi
Disk type (e.g. SSD/NVMe/HDD): SSD
Network bandwidth between the nodes (Gbps): 1Gbps

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): Baremetal
Number of Longhorn volumes in the cluster: 11

Additional context

@bensta Please provide a support bundle for investigation. Thanks.

@derekbit Sent it to the suse email mentioned in the bug report template.

@bensta
Thanks. I will check it after receiving the support bundle from the mailbox.
Can you provide the name of the problematic volume? Thanks.

I noted it in the report: pvc-7bb71062-c152-4136-86a5-91f48e753970

@bensta Can you send the support bundle again? The mail is lost due to a trouble of our mailing system.

Sure, check inbox, I sent again.

@bensta I cannot unzip your support bundle...

Next try: I sent a cloud storage download link. Hope it works this time.

Type 1 lock is a backup or restore lock.
The log messages indicate the failure of the lock (codes).
Can you provide the content of the locks inside the volume in thebackupstore/backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/?
2024-02-26T09:22:10.835951119+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:10Z" level=info msg="Initializing backup backup-747ed6c71cec40a6 for volume pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6 snapshot hourly-b-46b11937-8a40-46ae-b650-fd46fbc6ff11" func=backup.DoBackupInit file="main.go:74" pkg=backup
2024-02-26T09:22:10.839414360+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:10Z" level=info msg="Start creating backup backup-747ed6c71cec40a6" func=backup.DoBackupCreate file="main.go:135" pkg=backup
2024-02-26T09:22:11.982234537+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:11Z" level=info msg="Loaded driver for s3://k8s-backup.staubli.li@ch-gva-2/backups/" func=s3.initFunc file="s3.go:85" pkg=s3
2024-02-26T09:22:11.986587146+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:11Z" level=info msg="Saving config in backupstore" func=backupstore.SaveConfigInBackupStore file="config.go:79" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck kind=s3 object=config pkg=backupstore reason=start
2024-02-26T09:22:12.519838220+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:12Z" level=info msg="Saved config in backupstore" func=backupstore.SaveConfigInBackupStore file="config.go:90" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck kind=s3 object=config pkg=backupstore reason=complete
2024-02-26T09:22:12.756647651+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:12Z" level=info msg="Stored lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 on backupstore" func=backupstore.saveLock file="lock.go:190" pkg=backupstore
2024-02-26T09:22:15.665382743+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:15Z" level=info msg="Loading config in backupstore" func=backupstore.LoadConfigInBackupStore file="config.go:54" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck kind=s3 object=config pkg=backupstore reason=start
2024-02-26T09:22:15.911256054+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:15Z" level=info msg="Loaded config in backupstore" func=backupstore.LoadConfigInBackupStore file="config.go:65" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck kind=s3 object=config pkg=backupstore reason=complete
2024-02-26T09:22:16.144494735+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:16Z" level=info msg="Loaded lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 on backupstore" func=backupstore.loadLock file="lock.go:171" pkg=backupstore
2024-02-26T09:22:16.609451499+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:16Z" level=info msg="Loading config in backupstore" func=backupstore.LoadConfigInBackupStore file="config.go:54" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-81d14ddd864144f5.lck kind=s3 object=config pkg=backupstore reason=start
2024-02-26T09:22:16.856054878+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:16Z" level=info msg="Loaded config in backupstore" func=backupstore.LoadConfigInBackupStore file="config.go:65" filepath=backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-81d14ddd864144f5.lck kind=s3 object=config pkg=backupstore reason=complete
2024-02-26T09:22:17.088757497+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:17Z" level=info msg="Loaded lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-81d14ddd864144f5.lck type 2 on backupstore" func=backupstore.loadLock file="lock.go:171" pkg=backupstore
2024-02-26T09:22:17.092122488+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:17Z" level=info msg="Trying to acquire lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck" func="backupstore.(*FileLock).canAcquire" file="lock.go:65" lock="{ volume: pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6, name: lock-774b23ce3f3f4a0e, type: 1, acquired: false, serverTime: 2024-02-26 03:22:12 +0000 UTC }" pkg=backupstore
2024-02-26T09:22:17.092155035+06:00 time="2024-02-26T03:22:17Z" level=info msg="backupstore volume pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6 contains locks [{ volume: , name: lock-774b23ce3f3f4a0e, type: 1, acquired: false, serverTime: 2024-02-26 03:22:12 +0000 UTC } { volume: , name: lock-81d14ddd864144f5, type: 2, acquired: true, serverTime: 2024-02-26 03:21:34 +0000 UTC }]" func="backupstore.(*FileLock).canAcquire" file="lock.go:66" pkg=backupstore
2024-02-26T09:22:17.822331193+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:17Z" level=info msg="Removed lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 on backupstore" func=backupstore.removeLock file="lock.go:180" pkg=backupstore
2024-02-26T09:22:18.055577290+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:18Z" level=info msg="Removed lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 on backupstore" func=backupstore.removeLock file="lock.go:180" pkg=backupstore
2024-02-26T09:22:18.058974471+06:00 [pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6-r-082d4086] time="2024-02-26T03:22:18Z" level=error msg="Failed to create delta block backup" func=backupstore.CreateDeltaBlockBackup.func1 file="deltablock.go:129" destURL="s3://k8s-backup.staubli.li@ch-gva-2/backups/" error="failed lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 acquisition" snapshot="&{hourly-b-46b11937-8a40-46ae-b650-fd46fbc6ff11 2024-02-26T03:22:10Z}" volume="&{pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6<PHONE_NUMBER> map[KubernetesStatus:{\"pvName\":\"pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6\",\"pvStatus\":\"Bound\",\"namespace\":\"vault\",\"pvcName\":\"data-vault-1\",\"lastPVCRefAt\":\"\",\"workloadsStatus\":[{\"podName\":\"vault-1\",\"podStatus\":\"Running\",\"workloadName\":\"vault\",\"workloadType\":\"StatefulSet\"}],\"lastPodRefAt\":\"\"} RecurringJob:hourly-backup VolumeRecurringJobInfo:{\"daily-backup\":{\"jobSpec\":{\"name\":\"\",\"groups\":[\"default\"],\"task\":\"backup\",\"cron\":\"30 0 * * ?\",\"retain\":50,\"concurrency\":1},\"fromGroup\":[\"default\"],\"fromJob\":false},\"hourly-backup\":{\"jobSpec\":{\"name\":\"\",\"groups\":[\"default\"],\"task\":\"backup\",\"cron\":\"0 * * * ?\",\"retain\":50,\"concurrency\":1},\"fromGroup\":[\"default\"],\"fromJob\":false},\"monthly-backup\":{\"jobSpec\":{\"name\":\"\",\"groups\":[\"default\"],\"task\":\"backup\",\"cron\":\"0 0 1 * ?\",\"retain\":50,\"concurrency\":1},\"fromGroup\":[\"default\"],\"fromJob\":false}} longhorn.io/volume-access-mode:rwo] 2024-02-26T03:22:10Z   0   lz4 longhorn-crypto}"
2024-02-26T09:22:18.059022486+06:00 time="2024-02-26T03:22:18Z" level=error msg="Failed to create backup backup-747ed6c71cec40a6" func="rpc.(*SyncAgentServer).BackupCreate" file="server.go:723" error="failed lock backupstore/volumes/2d/af/pvc-0eff2e8c-b7f6-4d9f-854d-bfe2533e07d6/locks/lock-774b23ce3f3f4a0e.lck type 1 acquisition"

cc @ChanYiLin @mantissahz

Thanks, here's the content of the lock:
{"Name":"lock-1ac534a725a0464b","Type":2,"Acquired":true}
Sidenote: Can I ask you to redact my backup endpoint in the publicly posted logs? Thanks.

Sidenote: Can I ask you to redact my backup endpoint in the publicly posted logs? Thanks.

Sure. Done.

Hello @bensta
Can you list ls -al <backupstore>/backupstore/volumes/c8/93/pvc-7bb71062-c152-4136-86a5-91f48e753970/locks/ (I need the timestamps) as well as re-generate a support bundle? Thank you.


gnutls is not built against nettle 3.7 on osx-arm64

$ conda create -n test "gnutls >=3.6.13" nettle=3.7
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: /
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package nettle conflicts for:
nettle=3.7
gnutls[version='>=3.6.13'] -> nettle[version='>=3.4.1|>=3.6,<3.7.0a0']

Fixed by #28.


[Flakey CI] [rfe_id:393][crit:high][vendor:cnv-qe@redhat.com][level:system] VM Live Migration with a live-migrate eviction strategy set with multiple VMIs with eviction policies set [test_id:3245]should not migrate more than two VMIs at the same time from a node

/kind bug
/triage build-officer
What happened:
Flakefinder found this test to be flakey:
[rfe_id:393][crit:high][vendor:cnv-qe@redhat.com][level:system] VM Live Migration with a live-migrate eviction strategy set with multiple VMIs with eviction policies set [test_id:3245]should not migrate more than two VMIs at the same time from a node

It failed during this job:

https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/3947/pull-kubevirt-e2e-k8s-1.17/1293384254578757632

What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

KubeVirt version (use virtctl version):
Kubernetes version (use kubectl version):
VM or VMI specifications:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

I see in https://storage.googleapis.com/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/3947/pull-kubevirt-e2e-k8s-1.17/1293384254578757632/artifacts/k8s-reporter/pods/1_kubevirt-test-default_virt-launcher-testvmignbrjbfwq6p5br7vzc5rbzw56lrpc47fjx2s2n29bd-compute.log:
{"component":"virt-launcher","level":"error","msg":"failed to get domain metadata","pos":"libvirt_helper.go:116","reason":"virError(Code=55, Domain=20, Message='Requested operation is not valid: transient domains do not have any persistent config')","timestamp":"2020-08-12T06:01:02.505562Z"}

and over and over
{"component":"virt-launcher","kind":"","level":"warning","msg":"failed to set time: QEMU agent unresponsive","name":"testvmignbrjbfwq6p5br7vzc5rbzw56lrpc47fjx2s2f5mqqmcndg6","namespace":"kubevirt-test-default","pos":"manager.go:549","reason":"virError(Code=86, Domain=10, Message='Guest agent is not responding: QEMU guest agent is not connected')","timestamp":"2020-08-12T06:01:47.479858Z","uid":"81cddc0f-0fa5-4dbd-a6ce-cc74a67002dd"}

@davidvossel could you have a look?

/assign @davidvossel

sounds like another reason to move the metadata out of the domain

The issue doesn't have to do with the qemu agent or a failure to get metadata, all of that is transient and/or mostly benign.
Here's the timeline.

VMI starts on node1
eviction controller migrates VMI
migration fails
time passes
eviction controller tries to migrate VMI again
migration fails with "migration job already executed"
time passes
eviction controller tries to migrate VMI again
migration fails with "migration job already executed"

So essentially the first migration fails, and then something on the VMI isn't reset correctly to allow another migration to be attempted.

This issue goes pretty deep, but here's what I know... A VMI migration fails, and then subsequent attempts to migrate the same VMI continue to fail indefinitely afterwards
This sort of issue has been a sore spot for us for awhile and continues to cause issues.
What we need is a functional test like the disabled [1] that causes a vmi migration to fail, then we need to ensure that subsequent migration attempts after the failure have a shot at succeeding. Without a test that fully exercises this and acts as a reproducer, it's very difficult to track down the root cause.

https://github.com/kubevirt/kubevirt/pull/3557

@rmohr i have a theory...
https://github.com/kubevirt/kubevirt/blob/master/pkg/virt-handler/cmd-client/client.go#L226
We're using the activePods list to find the command client. When a migration fails, that pod is never removed from the ActivePods list, furthermore the pod can keep going for awhile and remain active i believe. I actually found 4 pods in the ActivePods list for the vmi in question.
I think when a migration fails, we run a chance of talking to the wrong target pod when doing the client setup.  I have no idea if this is the cause of the issue we're encountering here. But it seems suspicious

@davidvossel sounds like a high-impact issue. Would be great if you can investigate it further and resolve it.

i have a test that I think will reliably cause a migration to fail.  I was able to confirm that the target pod outlives (and is running) beyond the point where the migration fails.
I think that's the problem that needs to be solved. We need to signal to virt-launcher to shutdown when the migration fails so that pod doesn't remain active.

I think that's the problem that needs to be solved. We need to signal to virt-launcher to shutdown when the migration fails so that pod doesn't remain active.

I take that back... The migration target pod has an anti-affinity rule on it that prevents two pods from being active on the same node. So while the failed migration pod does stay around for awhile until it timesout, a new target pod will stay in the pending phase until the old target pod exits.
It's still unclear exactly what's happening in this test failure.
To give us more confidence in how migration failures are handled, I have a functional test that exercises this that I've posted for review #4023

@rmohr My functional test might have uncovered something. [1] [2]
It looks like the migration flow isn't handling the container disk not being ready yet. or something along those lines. Maybe this is related to the removal of the readiness checks?
{"component":"virt-launcher","level":"info","msg":"Marked as ready","pos":"virt-launcher.go:71","timestamp":"2020-08-20T00:16:15.417326Z"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:15.845034Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:15.847936Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:15.852482Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:15.875287Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:15.918323Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:16.014186Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:16.177878Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:16.501623Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:17.145905Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:18.430466Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:21.003754Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}
{"component":"virt-launcher","kind":"","level":"error","msg":"Failed to prepare migration target pod","name":"testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhttqqlfd6q2l","namespace":"kubevirt-test-default","pos":"server.go:142","reason":"no supported file disk found for volume with index 0","timestamp":"2020-08-20T00:16:26.128558Z","uid":"bb9f261e-dbb4-4f64-8dea-65266e3a4ffa"}

https://storage.googleapis.com/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/4023/pull-kubevirt-e2e-k8s-1.16/1296190027184738304/artifacts/k8s-reporter/pods/1_kubevirt-test-default_virt-launcher-testvmihmj8dgdhbqrf7r2nj8tfz2xfnccfcpzm6qbwhlcrfp-compute.log

https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/4023/pull-kubevirt-e2e-k8s-1.16/1296190027184738304

Happened again: https://storage.googleapis.com/kubevirt-prow/reports/flakefinder/kubevirt/kubevirt/flakefinder-2020-08-24-024h.html

Failed again here: https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/4022/pull-kubevirt-e2e-k8s-1.16/1298039088628109312

Failed again here: https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/4011/pull-kubevirt-e2e-k8s-1.16/1298418719243898880

Failed again here: https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/4107/pull-kubevirt-e2e-k8s-1.16/1301699767302098945

@rmohr can you reopen this issue? it's seems that the flakiness is still there.


removed is_interactive() usages from InteractiveBackend (closes #38)

Issue
Closes #38
Description
Removed all usages of is_interactive() from InteractiveBackend since InteractiveBackend is only used if is_interactive() returns true.

Looks great, thank you! :)

Tiny nitpick, but we use present tense action verbs for commits usually, so next time please do that ;) not a biggie but more uniform that way.
In this example it would be
remove is_interactive() usages...
instead of
removed is_interactive() usages....
Commit messages should read a bit like TODO items, like "remove this", "fix that", etc.


Extension process didn't stop after closing VS Code

Type: Bug
Reproduce
Open in vscode project like
https://github.com/blockscout/blockscout
compile this project
install extension
https://marketplace.visualstudio.com/items?itemName=pranaygp.vscode-css-peek
https://user-images.githubusercontent.com/1568885/222010377-f45f3d78-8499-4b4a-880b-df7dfa9d2a2a.mp4
Expected behaviour
The process from extension stop after closing VS code
VS Code version: Code 1.75.1 (Universal) (441438abd1ac652551dbe4d408dfcec8a499b8bf, 2023-02-08T21:34:59.000Z)
OS version: Darwin arm64 22.3.0
Modes:
Sandboxed: Yes

System Info

Item
Value

CPUs
Apple M1 Max (10 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
2, 2, 2

Memory (System)
32.00GB (0.04GB free)

Process Argv
--crash-reporter-id 92d09ffb-b0c1-4701-929f-5b7b9365b24d

Screen Reader
yes

VM
0%

The extension has not been updated for two years. You can request the extension to be marked deprecated in the following thread if you think it should be:

https://github.com/microsoft/vscode-discussions/discussions/1

The cause would be that the extension depends on an old vscode-languageclient package:
    "vscode-languageclient": "^5.2.1"

https://github.com/pranaygp/vscode-css-peek/blob/e4b0ceb3547a219e3081854f1d1e208c20cd45f8/client/package.json#L15

The old version caused similar issues:

microsoft/vscode-languageserver-node/pull/776

Would be nice if VS code make some requirements for extensions, for example VS code v1.8 requires "vscode-languageclient": "^8.0.0" and if an extension has a lower version then it stops working

@pustovalov Seems feasible. You had better open a new issue as a feature request.

This is unfortunate, but the process that is leaking is not the extension host process. It is a process spawned by one of the extensions running in the extension host process. There are valid situations where extensions want to spawn processes which outlive vscode and the extension host process, so we can't attempt to kill all child processes on exit, as that would break the usecase. Given the extension appears abandoned, I would recommend raising an issue and starting the process of deprecating it.

Nothing to be done on the VS Code side.
Closing.
@pustalov did you file an issue on the extension? Did you ask them if we should mark them as deprecated?


How to generate 3D Spatial Transcriptomic Maps from PASTE2 analysis results?

As a novice user of PASTE2, I'm truly grateful for the provision of such a robust 3D spatial transcriptome reconstruction tool. Having successfully replicated results using the demo data, I'm now confronted with the task of creating a 3D image following pairwise alignment of all consecutive slices. I'm eagerly seeking guidance and tutorials on the downstream analysis processes after completing PASTE2 analyses. Could you advise on the subsequent steps and analyses required, as well as recommend software tools, to generate 3D images suitable for publication, similar to those depicted in the following articles: "High-resolution 3D spatiotemporal transcriptomic maps of developing Drosophila embryos and larvae" (DOI: 10.1016/j.devcel.2022.04.006) and "3D reconstruction of a gastrulating human embryo" (DOI: 10.1016/j.cell.2024.03.041)?

Hi,
Thank you for your interest in PASTE2! I can provide you with the code that I used to generate Fig. S6b of our paper, which is a visualization of a 3D reconstruction of the tissue.
If you follow the tutorial, the last section uses partial_stack_slices_pairwise() to get a list new_slices, where each item in the list is an AnnData object of a slice with the .obsm['spatial'] field updated so that all slices are in the same 2D coordinate system. Now you only need to assign each slice a z coordinate so that each spot from each slice has a (x,y,z) coordinate, then you will have your 3D model. How you assign a z coordinate to each slice is entirely up to you because the z coordinate depends on your specific data, i.e. how far away are the two slices experimentally.
Here is the code for generating Fig. S6b of our paper:
import scanpy as sc
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
import plotly.express as px
import plotly.io as pio
import seaborn as sns

pio.renderers.default='notebook'
config = {
      'toImageButtonOptions': {
        'format': 'svg',
        'filename': "DLPFC_3d"
      }
    }
layer_to_color_map = {'Layer{0}'.format(i+1):sns.color_palette()[i] for i in range(6)}
layer_to_color_map['WM'] = sns.color_palette()[6]
z_coordinates = np.array([0,1,2,3])*1500
df = pd.DataFrame(columns=['x','y','z','layer'])
for i, L in enumerate(new_slices):
    adata = new_slices[i]
    df_ = pd.DataFrame(np.concatenate((L.obsm['spatial'],np.matrix(z_coordinates[i]*np.ones(len(adata))).T,np.matrix(np.ones(len(adata),dtype=int)).T),axis=1),columns=['x','y','z','layer'])
    df_.loc[:,"layer"] = list(adata.obs['layer_guess_reordered'])
    df = df.append(df_, ignore_index=True)
df = df.sort_values(by=['layer'])
df['y'] = -df['y']
fig = px.scatter_3d(df, x='x', y='y', z='z',
                  color='layer',color_discrete_sequence=[matplotlib.colors.to_hex(layer_to_color_map[c]) for c in sorted(list(adata.obs['layer_guess_reordered'].cat.categories))])
fig.update_layout(scene_aspectmode='data',font=dict(size=8))
fig.show(config=config)

The z_coordinates = np.array([0,1,2,3])*1500 line is where I assign a z to each of the four slices. You can adapt this code to generate the 3D plot you want. The 'layer' column of the data frame is simply a cell type annotation and should be changed to whatever suits your data.
Let me know if you have any other questions!
Thanks,
Xinhao


config file instructions

for customizing the database connection, etc

This needs to be part of the backend and frontend. I found myself changing the package.json to modify the port and I surely don't want to commit that change :)


SSL documentation

SSL documentation is incomplete/incorrect.
>>> sslcontext = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
>>> context.verify_mode = ssl.CERT_REQUIRED
>>> context.load_verify_locations("/etc/ssl/certs/ca-bundle.crt")
>>> conn = aiohttp.TCPConnector(verify_ssl=False)
>>> r = yield from aiohttp.request(
...     'get', 'https://example.com', connector=conn)

It swaps between using sslcontext and context.
It doesn't pass the context to the TCPConnector constructor
verify_ssl is false

Fixed in 65c08d9
Thanks for report!


Observation: System-test log_request_error_messages fails and leaves an operation in C8y behind

Describe the bug
This is an observation with a not yet identified root cause:
The test log_request_error_messages fails and leaves an operation behind that we need to cancel manually.
Same thing for : log_request_num_lines -> seems to be a systematic issue.
(same issue in CI)
To Reproduce
Within a pysys env:
pysys.py run log_request_error_messages
or via
ci/ci_run_all_tests.sh
Expected behavior
Feature works and test passes :)
Screenshots

Environment (please complete the following information):

OS Debian Bullseye / Rpi OS
thin-edge.io version: Build on top of cae66180e676c5cc1cc94ee576c725d4df0858c5

Additional context
context

Hi @abelikt, I think I know what is causing this. Can you let me know what you see when you run:
cat /etc/tedge/operations/c8y/c8y_LogfileRequest

Your output should be something like:
pi@raspberrypi:~ $
[exec]
topic = "c8y/s/ds"
on_message = "522"
command = "/usr/bin/tedge_logfile_request_plugin"


Use cross-spawn-async on npm, fixes #13

This PR attempts to fix issue #13 by using cross-spawn-async instead of the native require('child_process).spawn.

Cool, let's try it out, thanks!


Apply clang-tidy modernize-use-using to io

Run clang-tidy 7.0 with -checks='-*,modernize-use-using' -fix against single TU with #include <boost/gil/io/*.hpp>.
Manually refactor numerous typedef-s

where missed by modernize-use-using check, not uncommon
in code snippets in comments

Outcome is that searching for lower-case whole word typedef in all io/*.hpp should return no matches.
References

#192
#193

Tasklist

[ ] Review
[ ] Adjust for comments
[x] All CI builds and checks have passed

@stefanseefeld And this?


DBZ-2767 - MS SQL Decimal with default value not matching the scale o…

…f the column definition cause exception
Note that it might be useful to move the assertColumnHasDefaultValue to a central place so all connectors can use the same validation (and maybe enrich the validation based on extra validations done by other if applicable).

@tdeleeuw Applied, thanks a lot! Regarding the centralization of assertColumnHasDefaultValue - yes, it is good idea. If you will have an opportunity to tak a look at it we would be happy the get it in.


Use more recent version of Kube conformance image

Switch to v1.21.11.
Fixes #2743
Signed-off-by: Antonin Bas<EMAIL_ADDRESS>

/test-all

Codecov Report

Merging #2744 (af6af03) into main (0867867) will decrease coverage by 18.37%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #2744       +/-   ##
===========================================
- Coverage   59.37%   40.99%   -18.38%
===========================================
  Files         285      158      -127
  Lines       23033    19272     -3761
===========================================
- Hits        13675     7901     -5774
- Misses       7907    10623     +2716
+ Partials     1451      748      -703

Flag
Coverage Δ

kind-e2e-tests
?

unit-tests
40.99% <ø> (-0.01%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

 I assume it may be because the K8s version for the test cluster is too old (1.19), and I assume there is now way to update it? We may have to copy the docker images needed for conformance testing to our Harbor registry, and use it in https://github.com/antrea-io/antrea/blob/main/ci/conformance-image-config.yaml?

Actually it seems all the images are in k8s.gcr.io/e2e-test-images, so let me try that first
Funny thing, it seems that mirror.gcr.io/library/nginx:1.14-alpine is no longer missing...

The VMC cluster should be able to upgrade to k8s v1.20.1 but there're some configuration error. So far don't have time to investigate...

I'm checking if a different approach will help in the meantime: https://github.com/antrea-io/antrea/pull/2748

Closing for now in favor of https://github.com/antrea-io/antrea/pull/2748

Re-opening this now we use a more recent version of K8s for test clusters (v1.20).

/test-all

/test-all


Support for new upcoming Intellij Idea 242.*

Pretty much the title is the issues: Support for new upcoming Intellij Idea 242.*
We started to use EAP version because of scala 3 support, and only couple plugins dont work, i am going and raising in each repo an issue. I am happy to help if you have some form of documentation or steps for testing i can use to raise a PR.
Thanks

Hi, thanks for flagging. Been busy with life lately.
Just releasing an upgrade, it should be available within a few days.

https://plugins.jetbrains.com/plugin/10053-play-2-routes/edit/versions/stable/634235


the name yt2btc

It's up to you if you like the executable command but a future feature should include a user should be able to pass a mp3/wav instead of a youtube_ID and it should take over from there

is transcriber a better name?


GraphQL Api requesting and examples

Hello peeps I have now fully learned the ways of the GraphQL Replit API and how to send requests.
Behold

This code will get a bunch of information about the person, including username, bio, cycles, and posts. We can discuss if you want to know more.

we do that with the repltalk module by @mat1. That queries data from the graphql.

whoops, but can you give us the way to query data for posts?(in python)

querying data was in my other issue. Look here:
https://github.com/JBYT27/REPLAPI/issues/7

we do that with the repltalk module by @mat1. That queries data from the graphql.

You mentions mat1, u realize that? lol

i know

@lamaqdahodwala quite unprofessional way to raise an issue :/
also congrats! you figured out the GraphQL, but do you know all the schemas ;D or how to get that data using python?

@lamaqdahodwala quite unprofessional way to raise an issue :/
also congrats! you figured out the GraphQL, but do you know all the schemas ;D or how to get that data using python?

Sorry its a few of my first issues
yes i do i found this repl that has the schema

yes i do i found this repl that has the schema

Can you give an example of it(make sure to test it first in replit)

An example of the schema? Or of the requesting?

wdym @lamaqdahodwala

@lamaqdahodwala oh well then I suppose you found masfrost's copy. Don't share it, and don't post any copies. If you have hacker and you've forked it, make that Repl private.

The graphql schema is best kept quite...

I mean what do you want me to give an example on?
On Mon, Apr 12, 2021, 4:38 PM Dark Boi @.***> wrote:

wdym @lamaqdahodwala https://github.com/lamaqdahodwala
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/JBYT27/REPLAPI/issues/21#issuecomment-818198850, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AR3V6LDH5IWUWUFBUU5GZKDTINK4FANCNFSM42F6TOHA
.

I mean what do you want me to give an example on?
…
On Mon, Apr 12, 2021, 4:38 PM Dark Boi @.***> wrote: wdym @lamaqdahodwala https://github.com/lamaqdahodwala — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#21 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AR3V6LDH5IWUWUFBUU5GZKDTINK4FANCNFSM42F6TOHA .

Like using graphql for grabbing data, i need an example of it to see if it's worth it

I mean what do you want me to give an example on?
…
On Mon, Apr 12, 2021, 4:38 PM Dark Boi @.***> wrote: wdym @lamaqdahodwala https://github.com/lamaqdahodwala — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#21 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AR3V6LDH5IWUWUFBUU5GZKDTINK4FANCNFSM42F6TOHA .

Like using graphql for grabbing data, i need an example of it to see if it's worth it

Hm, ok.
So GraphQL is not really a special type of language, it is a framework which REST can be extended on. It allows you to request certain pieces of information containing just what you want. This is great for something like Repl, where there are a lot of users. You don't want 5 terabytes of data flowing through your internet. GraphQL can be interacted with the same as REST, by sending a request to a URL asking for certain things. In GraphQL's case, it is only one URL, and a POST request.
You have to lay out the data for the POST in a certain way, so the API knows what to do with it. If something goes wrong, it sends back an error message saying what happened.
{"errors": "you noob you literally keyboard mashed get a life"} (of course graphql isn't as harsh)
The entire thing is mastered by the schema, which is kind of like the documentation for the API. It contains all the data types you can ask for, and everything you could do with those types
Ex.
type Book{
   author: String!
}

This type is called Book, and has a property you can grab called author. The String! means that it returns a string, and it is required to return a string.
Therefore you can say to repl:
user(username: "darkdarcool") {
    posts{
        ...
    }
}

(This isn't the proper schema btw)

@darkdarcool
import requests
url = 'https://staging.replit.com/graphql'
body = {'query': 'query UserData { userByUsername(username: "RayhanADev") { id, username, bio, karma } }'}
headers = {'X-Requested-With': 'RayhanADev', 'Referrer': 'https://staging.replit.com/' }

res = requests.post(url, data=body, headers=headers)
print(res.text)

or view the repl. This is just a small scale example using a few queries, and I have a copy of the schema that I'm open-sourcing at my own discretion in my ReplAPI.it Repo.

Nice!! This looks great, you can put it in now(if you want, you don't have to). And tomorrow we'll build a parser of this!
Thanks so much @lamaqdahodwala and @RayhanADev!

@darkdarcool am I on the Repl? I probably am I'll work on it and maybe push.

Lol the funny part is we weren't even supposed to know about this but here we are extorting it like its nothing
@darkdarcool

@darkdarcool nope I'm not xD. Please invite.

~Lol the funny part is we weren't even supposed to know about this but here we are extorting it like its nothing~
@darkdarcool

Lol thank mat1, he's the one who was a em, sketchy mod (his bot upvoted all this posts) and made the first package.

okie @RayhanADev

@RayhanADev, uhhh what?

he means like to be invited to the replapi repl.

oohh, ok

also can you get on<EMAIL_ADDRESS>

@darkdarcool Hey, I'm still in school so I can't rn. Maybe we can get on later when I'm done (5ish Central/UTC-6)

maybe, i have go somewhere around then, but maybe I can make it work, just comment here when you get some time

e

hi jb, can you get on Glitch Studios?

sry, i cant. :( and also, sry for late comment lol

lol it's fine

also @JBYT27, can you add me to the Glitch Studios repo so I can push some things?


Added support for Holiday customization in tests

This allows us to wrap assertions around with_holidays(:carrier) - And lets us support other carriers such as usps, fedex in the future.
FedEX will be more complicated to support: http://www.fedex.com/us/service-guide/holiday-schedule.html
USPS pretty simple: https://about.usps.com/news/events-calendar/2016-postal-holidays.htm

squashed..


ApplicationNotResponding  android.text.SpannableStringBuilder in getSpanStart

Description
Certain users are getting their app crashed while typing in a text input.
From Sentry we where able to get this log:
io.sentry.android.core.ApplicationNotResponding: Application Not Responding for at least 5000 ms.
    at android.text.SpannableStringBuilder.getSpanStart(SpannableStringBuilder.java:828)
    at android.text.TextUtils.removeEmptySpans(TextUtils.java:2004)
    at android.text.MeasuredParagraph.buildForStaticLayout(MeasuredParagraph.java:431)
    at android.text.PrecomputedText.createMeasuredParagraphs(PrecomputedText.java:436)
    at android.text.StaticLayout.generate(StaticLayout.java:706)
    at android.text.DynamicLayout.reflow(DynamicLayout.java:612)
    at android.text.DynamicLayout$ChangeWatcher.reflow(DynamicLayout.java:1091)
    at android.text.DynamicLayout$ChangeWatcher.onSpanChanged(DynamicLayout.java:1126)
    at android.text.SpannableStringBuilder.sendSpanChanged(SpannableStringBuilder.java:1318)
    at android.text.SpannableStringBuilder.sendToSpanWatchers(SpannableStringBuilder.java:662)
    at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:591)
    at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:518)
    at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:39)
    at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:945)
    at android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:219)
    at com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:204)
    at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:561)
    at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:118)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:226)
    at android.os.Looper.loop(Looper.java:313)
    at android.app.ActivityThread.main(ActivityThread.java:8641)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:567)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1133)

Device details from this example:
SM-G988U
Model:SP1A.210812.016
android 12
You can see in this screenshot - Sentry catches a lot of different ANRs, but it looks like most of them is related to the input component (maybe even all of them.. I don't have enough insights on the code to know)

Version
0.66.0
Output of npx react-native info
System:
OS: macOS 12.1
CPU: (8) x64 Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz
Memory: 44.38 MB / 32.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 16.13.0 - /usr/local/bin/node
Yarn: 1.22.10 - /usr/local/bin/yarn
npm: 8.1.0 - /usr/local/bin/npm
Watchman: Not Found
Managers:
CocoaPods: 1.11.2 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.2, iOS 15.2, macOS 12.1, tvOS 15.2, watchOS 8.3
Android SDK:
API Levels: 28, 29, 30, 31
Build Tools: 30.0.2, 31.0.0
System Images: android-29 | Google Play Intel x86 Atom, android-30 | Google Play Intel x86 Atom, android-31 | Google APIs ARM 64 v8a, android-31 | Google Play Intel x86 Atom_64, android-32 | Google Play Intel x86 Atom_64
Android NDK: Not Found
IDEs:
Android Studio: 2021.1 AI-211.7628.21.2111.8139111
Xcode: 13.2.1/13C100 - /usr/bin/xcodebuild
Languages:
Java: 1.8.0_292 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.66.0 => 0.66.0
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
We were not able to reproduce, but the users it happen to - report that this is happening very often.
And Sentry logs & Google play logs - show those ANRs that happen again and again.
Snack, code example, screenshot, or link to a repository
This is just a simple text input component.. not much to share.. 🤔

We are facing exactly the same issue.

We are also getting one more, identical to the one in your list: android.os.BinderProxy in transactNative

For us, it's mostly happening with SM-G998B and SM-G998B on Android 12.

My team has been receiving support requests and the same sentry report. All the reports seem to be for Samsung users on Android 12 with the suggest text corrections feature enabled.
We were able to reproduce it on a test device. It seemed like the larger the value was and the more suggestions that the feature suggested, the worse the slowdowns became. After about two paragraphs of text the app started becoming noticably unresponsive.
It seems that setting the autoCorrect={false} prop on the text field prevents the suggest text corrections feature from running and after setting it we weren't seeing any slowdowns. Right now we're putting out a bug fix which disables autoCorrect (and so also the buggy samsung feature) for Samsung users on Android 12.
import { getBrand, getSystemVersion } from 'react-native-device-info';

function MyComponent() {
  return <TextInput autoCorrect={getBrand() !== 'samsung' || getSystemVersion() !== '12'} />
}


Open NnnExplorer as a single window when replacing netrw

I want to use NnnExplorer as netrw replacement without buffer window in vertical split.
It may seem that I can achieve this with nnn itself, but I want to keep the cwd.
Is there any way to do this?

So you want NnnExplorer to open inside the current window when editing a directory buffer, without splitting? I think this makes sense. Thanks for the suggestion I'll look into it.
I think it could be default behavior when the only window has no active buffers. Would that cover your use case? Or do you want to be able to open in the current window despite the current window already displaying a non-empty buffer?

I think it could be default behavior when the only window has no active buffers. Would that cover your use case?

Yes, it would.

Or do you want to be able to open in the current window despite the current window already displaying a non-empty buffer?

I usually use NnnPicker and can't say for sure if anyone will need this behavior.
To be able to open nnn in the current window, it should be enough to use NnnPicker.

How about making a new command for this?
A command that opens NnnPicker inside the current window.
That would be a drop-in replacement for netrw's :Explore command.
Other netrw commands like :Vexplore can be emulated using this as well.

@anjerukare @WieeRd please check if https://github.com/luukvbaal/nnn.nvim/commit/0fcc15a3c84d9d6de2ee0057bbcfb59386bf63ec covers your use case. Otherwise, I think indeed allowing to open NnnPicker inside the current window makes sense.

@luukvbaal, sorry for late response. It covers my case, kind of.
I would like NnnExplorer to behave even more like netrw.
Here is my use case with netrw:
https://user-images.githubusercontent.com/81213838/185424477-8cff2830-58c1-4909-bb9d-52e9bb6837e7.mov
Same use case with NnnExplorer:
https://user-images.githubusercontent.com/81213838/185424556-af90a6b6-2683-406a-9932-d770994bb6e5.mov

After entering the file I have a splitted NnnExplorer. It's fine for NnnExplorer users, but I don't need it because I am using NnnPicker.
To get back to the terminal, I have to do a sequence of actions: :q, press q in NnnExplorer and :q.

I also found that when I set width = 1 and height = 1 for NnnPicker I get a clean and usable result:
https://user-images.githubusercontent.com/81213838/185428795-ca28726d-d79b-43bb-9f8d-4d088bb8046c.mov
But, of course, I don't want to have a "full screen" NnnPicker always, only when it runs as a netrw replacement.
This result is what I'm looking for.

If you don't intend to use NnnExplorer it makes more sense to set NnnPicker as netrw replacement indeed. I guess we can make NnnPicker cover the whole screen (set width = height = 1) under the same conditions that make NnnExplorer full screen, and use the configured dimensions otherwise.

@anjerukare implemented in https://github.com/luukvbaal/nnn.nvim/commit/88627fbcb7309486dcbb81e452cf997aec94fddb.

I guess we can make NnnPicker cover the whole screen (set width = height = 1) under the same conditions that make NnnExplorer full screen, and use the configured dimensions otherwise.

Was this idea rejected? Now with replace_netrw = 'picker' set, I have NnnExplorer without a split after entering file.
Also, with the current implementation, I'm missing set number after entering the file.

Was this idea rejected? Now with replace_netrw = 'picker' set, I have NnnExplorer without a split after entering file.

No that idea was implemented but instead of opening nnn inside of a floating window we open it inside the current window, making it fullscreen. That does not make it NnnExplorer though, it still closes after opening a single file(s). I didn't think opening a floating window would be necessary if we are going to be covering the full width/height anyways, do you disagree?

Also, with the current implementation, I'm missing set number after entering the file.

Right we need to restore the buffer options after NnnPicker closes with the current implementation.

What makes you call it NnnExplorer?

The status bar at the bottom and the spell checker. And I just realized that all of this can be disabled in my configuration. My bad 😓.

I didn't think opening a floating window would be necessary if we are going to be covering the full width/height anyways, do you disagree?

No, that's right.

The status bar at the bottom and the spell checker.

Right, I guess that makes it different from a full size floating window. But yeah perhaps that's best left up to personal configuration. I will make sure to fix the buffer option problem then.

I'm missing set number after entering the file.

Should be fixed in latest commit.

I'm missing set number after entering the file.

Should be fixed in latest commit.

Yes, it is. Thanks!
I guess that for explorer netrw replacement this fix is also needed.


Some errors:ValueError: Tokenizer class InternLMXComposerTokenizer does not exist or is not currently imported.

I run the quick inference demo of the github repo and follow the install pipeline without any other operation.
But I got this error.
Traceback (most recent call last):
File "/home/ssw/DemoFusion/base_models/InternLM-XComposer/projects/ShareGPT4V/demo_share4v.py", line 24, in
eval_model(args)
File "/home/ssw/DemoFusion/base_models/InternLM-XComposer/projects/ShareGPT4V/share4v/eval/run_share4v.py", line 31, in eval_model
tokenizer, model, image_processor, context_len = load_pretrained_model(
File "/home/ssw/DemoFusion/base_models/InternLM-XComposer/projects/ShareGPT4V/share4v/model/builder.py", line 114, in load_pretrained_model
tokenizer = AutoTokenizer.from_pretrained(
File "/home/ssw/anaconda3/envs/share4v/lib/python3.10/site-packages/transformers/models/auto/tokenization_auto.py", line 699, in from_pretrained
raise ValueError(
ValueError: Tokenizer class InternLMXComposerTokenizer does not exist or is not currently imported.
Hope for your reply!

怀疑可能是sharecaptioner的inference环境和sharegpt4v-7B不一样？我的后者模型是可以正常运行的，但是前者不行


[SVS-9] Implemented ErrorListInfoBarController

Implemented the controller that will show the info bar and will handle the Update command.
I've considered just using the binding and connection workflows instead of driving the experience via the section, but decided not to do it since it could introduce various race conditions and avoiding them would require increasing the overall complexity which i preferred to avoid.
The approach used drives the flow using the WPF commands by passing the right arguments to those commands, so essentially exactly the same as the user would have done, so no added risk.
Misc:

BindingController - removed dead code that was checked in part of SLVS-87 + some other minor change to be consisted with the ConnectionController
ConnectionController/Workflow - Simplified the code (was getting a delegate that could have been directly called from within the workflow)
Added another telemetry to the fix-conflicts: one that records the number of times we showed the UX in addition to the existing fix-conflicts command telemetry. Now we should be able to see if the users trust that feature :)

Other than reverting the encoding change to ConfigurableSolutionBindingInformationProvider.cs, LGTM.


OLS-490: Remove deprecated Extra and replace it with literals

Description
Remove deprecated Extra and replace it with literals.
In pydantic:
@deprecated(
    "Extra is deprecated. Use literal values instead (e.g. `extra='allow'`)", category=PydanticDeprecatedSince20
)

Type of change

[x] Refactor

/lgtm

/approve


python3 opencv 3.4.1

Issues should contain the following details which increases the probability of it get resolved quickly

Exact error or Issue details
OpenCV Version
Python Version
Operating System
Changes done, if any in the original code

@hiteshn97  there is no information in this issue. What is your issue? I see that you have opened another issue https://github.com/ITCoders/Human-detection-and-Tracking/issues/32 If this was a mistake please confirm so we can close this issue. cc: @prsntmaurya


Error during downloading the D dataset

Hello Oier,
I am trying to download the D dataset but need help getting this error. However, there is no error for downloading other distributions like debug datasets.
(calvin_venv) user@user:~/Pictures/Gaurav/calvin/dataset$ sh download_data.sh D
Downloading task_D_D ...
--2023-09-11 13:50:17--  http://calvin.cs.uni-freiburg.de/dataset/task_D_D.zip
Connecting to <IP_ADDRESS>:8080... connected.
Proxy request sent, awaiting response... 403 Forbidden
2023-09-11 13:50:17 ERROR 403: Forbidden.
unzip:  cannot find or open task_D_D.zip, task_D_D.zip.zip or task_D_D.zip.ZIP.
saved folder: task_D_D

It was occurring due to interrupted internet connection.


ci: codecov: Fix merged coverage report path

This commit updates the codecov workflow to specify the full coverage report file path under files because codecov-action v4 does not correctly process the directory parameter.

this has been broken for a while -> hotfix for ci


packaging: don't upload the node_modules if nothing changed

The node_modules.tar.gz file, even if compressed, is quite heavy and we
don't want to put this burden into our CI process. For this, we will
have to upload the latest yarn.lock file in OBS as well.
Signed-off-by: Miquel Sabaté Solà<EMAIL_ADDRESS>

I think that all this will be done for each ruby version. Is that true ? If so, we'd need to restrict the if condition to only do it once (or even better, if all ruby versions were successful)

I think that all this will be done for each ruby version. Is that true ? If so, we'd need to restrict the if condition to only do it once (or even better, if all ruby versions were successful)

Since we are downloading & comparing the yarn.lock file before doing anything at all, this shouldn't be a problem.


Downloading from links inside embed

Bot doesn't seem to download from links inside embed messages like in the picture above at the moment.

completed in 53d75ee3965327b69f5e0169328a42c7aafb032c


edupont04 from OPS portal: Merge from master to live

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

dynamics-nav-app/includes/MimeType_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/dyn_nav_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav2009_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav2009r2_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav2009sp1_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav7long_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_2009_long_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_2009_short_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_4_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_5_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_current_long_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/nav_current_short_md.md
:white_check_mark:Succeeded

dynamics-nav-app/includes/newdev_dev_preview.md
:white_check_mark:Succeeded

dynamics-nav-app/index.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[Snyk] Upgrade react-native from 0.76.3 to 0.76.4

Snyk has created this PR to upgrade react-native from 0.76.3 to 0.76.4.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.

The recommended version was released 21 days ago.

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:

🧐 View latest project report
📜 Customise PR templates
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

[!NOTE]
I'm currently writing a description for your pull request. I should be done shortly (<1 minute). Please don't edit the description field until I'm finished, or we may overwrite each other. If I find nothing to write about, I'll delete this message.

Summary by Sourcery
Enhancements:

Upgrade the React Native dependency to version 0.76.4.

@gstraccini codacy bypass


gvm failed to install new versions - Permission denied

Hi, i'm having troubles when trying to install new versions of grails.
gvm install grails 2.3.6
Downloading: grails 2.3.6
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100  129M  100  129M    0     0   229k      0  0:09:35  0:09:35 --:--:--  248k
Installing: grails 2.3.6
__gvmtool_install_candidate_version:9: permission denied: mv
Done installing!

Tried reinstalling gvm
After running the gvm command, I can no longer run any other OS commands in the shell.
Before running the gvm command, everything is normal.
I used gvm frequently installing and switching grails versions.
I'm using MacOs

Please give me any hints!
Thanks.

[SOLUTION] It was for sure a problem caused by Trend Micro Security anti-virus software installed by my company on MacOS.
I trashed the antivirus and able to install grails with sdkman.
Then, put back the deleted anti-virus.

Hello,
I am on a company machine on WSL behind proxy (downloads work) but most installations fail on the mv command. I got java 8.0.232-open working while gradle 6.0.1 and others fail.

Hi @mashimom, if you hop onto slack I can help you there: https://slack.sdkman.io


Warning "'bool' incorrectly referred to as 'boolean'" should show context

At the moment it's just a debug message effectively, it should either show where the mistake is or not complain.

Now covered in BadDoc


Popover does not resize properly when content size changes

I'm currently using the popover to display a search widget.  The widget has some controls that when toggled can cause the popover to expand in size (works great).   The issues arises when doing the following:

Cause the widget to expand by selecting an option inside of it that adds a div (pushing the popover down)
Close the popover by clicking out of it
Open the popover
Cause the widget to "contract" by selecting an option that remove the div
The Popover does not resize itself properly (specifically the popover-compass div)

Note: If the popover starts off at the smaller size then it works fine.  The issue only happens when you start at the larger size and then go to the smaller size.
At this point the popover-compass class has a height that is too large and results in a black bar at the bottom of the popover.  I know the description is a bit hard to follow so I attached a screenshot of what this looks like:

Is there some way to force a "repaint" of the popover so it will resize itself properly under these circumstances?

Or by using a DOM mutation observer, like Liquid Fire


Fix for url generation after save_and_edit

Like stated in #1902 , the url generated is broken. The fragment should be the last part of the url.
GOOD: url.com?parm=1&parm2=2#hash
Ref: (http://tools.ietf.org/html/rfc3986#section-4.1) [ rfc about url fragment ]

I just edited one file, dunno why this is trying to update 3 files. I edited the file directly on github as this was a simple change ... only noticed now that is trying to change 3 files! is there a way to remove the things i don't want in this PR or should i close it and open a new one ?

@pxpm from the PR commit history, it looks like StyleCI kicked in and made these 2 changes. Must have found the fixes here before he did on master. Don't worry about it.
Thanks a lot for the PR - perfect as-is, just merged it. I'm surprised this bug didn't annoy more people - once I tested it to confirm it, it was super-annoying to me.
Thanks again. Keep up the good work. Cheers!


vulnerability newsfeed feature?

does notary provide vulnerability feed by scanning the docker images?

Hi @s-rohil,
I think you may be confusing products. Notary is an implementation of The Update Framework and is only concerned with package signing, not image scanning.


Add a Resource Aware Pool

The resource aware pool will ensure that a data race will not occur when a stream (resource) attempts to reuse memory that is still be touched by a different stream (resource).
Still needed to be done:

[x] Implement an official RAP test
[x] Clean up example and add comments
[x] Add documentation and cookbook recipe
[x] Double check all the TODO comments (questions about whether or not a check is needed....)

@adayton1 @MrBurmark - this PR is finally ready. Would like to merge next week. Take a look if you're interested!

Do you need to apply changes from https://github.com/LLNL/Umpire/pull/917/files to ResourceAwarePool?

My only major concern is having to manually construct strings for allocate(name, size) method due to templated Resource constructor. If this is fixed in camp I think that would be a good idea.

I think I've addressed this and the other comments from the review

Issue here: https://github.com/LLNL/Umpire/issues/925


Recommendation for more logging or details for submit error scenarios

When attempting to submit a transaction where we know the environment is not in a good state and thus errors are expected, the following 3 types of errors were received
14 UNAVAILABLE: failed to select a set of endorsers that satisfy the endorsement policy
14 UNAVAILABLE: no combination of peers can be derived which satisfy the endorsement policy: no peer combination can satisfy the endorsement policy Details

and
10 ABORTED: failed to collect enough transaction endorsements, see attached details for more info Details: [{\"address\":\"peer0.org2.example.com:9051\",\"message\":\"error 500, error in simulation: failed to execute transaction 389b63174fda3704ffb89424f4a469c6ff594b7c5b17fcdc3dbd9d0d1f9bc955: error sending: chaincode stream terminated\",\"mspId\":\"Org2MSP\"},{\"address\":\"peer1.org3.example.com:11151\",\"message\":\"error 500, error in simulation: failed to execute transaction 389b63174fda3704ffb89424f4a469c6ff594b7c5b17fcdc3dbd9d0d1f9bc955: error sending: chaincode stream terminated\",\"mspId\":\"Org3MSP\"}]"}

The last one includes details looks to provide additional clues into why the error message occurs whereas the first 2 don't, so you would need to look in the gateway peer logs to try to see what the true cause of these error messages are.
the log does show connectivity problems which could be the cause of the message
So this issue is about having a discussion on if it's possible to include more detail back to the client about the true cause or whether there is a need for logging in the gateway to help determine if the connectivity errors seen further up in the log are the contributors to the error message.

The first one:

14 UNAVAILABLE: failed to select a set of endorsers that satisfy the endorsement policy

gets generated if discovery believes one or more peers are available, but the gateway fails to connect to it/them.  So this one I could definitely append the list of endpoints that failed to connect.
The second one:

14 UNAVAILABLE: no combination of peers can be derived which satisfy the endorsement policy: ...

gets generated by the discovery service.  It will only include a peer in an endorsement plan if it believes that peer is alive.  And it gets that information from periodic gossip messages.  Whether you get this error, or the previous one, is probably just down to timing relative to the gossip messages.  The gateway doesn't have much it can add to the error message for this case.

resolved


SDK License

Add SDK License

@stanleynguyen , have any idea for what kind of license we want to use?

Let's go with MIT, short and sweet

MIT License added


EN Content: Language Toggle component

Summary: Documentation of component guidance in EN for the Language toggle component on the Design System website.
Including use cases, how to use guidance, accessibility guidelines and more.
Acceptance Criteria:

[x] Component Kickoff
[x] Component review
[x] Sync with Dev and Design
[x] Research and consulting other design libraries
[x] Component ID (name, definition, example image
[x] Use case (when to use guidance & related components)
[x] How to use guidance
[x] Accessibility guidelines
[x] Inclusive language
[x] Descriptive text for images
[ ] Translation & Localization
[ ] Bilingual review – content design
[ ] Ensure consistency: ordering, terminology, high level voice/tone/style
[ ] Final review

Draft document

Reviewed!

@nchoquet Document's ready for translation.

ETA for FR content: 28th June.

@ethanWallace, translation is ready here:
https://docs.google.com/document/d/1Ri7sXekCCqapL_oRr8GUgXiR5O7l5cb7co8QlhL-piQ/edit?usp=sharing

Bilingual content review underway
EN: https://docs.google.com/document/d/1O5c6UDG8hsVUQXoSHLmAZTbE8endbbSVZ0yjvKPbl9M/edit#heading=h.4pwu50pkptap
FR: https://docs.google.com/document/d/1Ri7sXekCCqapL_oRr8GUgXiR5O7l5cb7co8QlhL-piQ/edit

✅ Final content review complete

Missing Visual for French Anatomy

🚀 Ready for dev


initParticlesEngine is not properly exported for TypeScript

I see initParticlesEngine is exported in the index.ts file, but TypeScript isn't happy when importing.

I thought this might be a tsconfig issue, but I haven't not been able to identify a change that makes it happy. I've tried using the tsconfig.json in this repo.

It looks like updating the exports to be similar to the react version might fix the problem.
I create a locale file name initParticlesEngine.s with the following contents and TS is happy.
export async function initParticlesEngine(cb: (engine: Engine) => Promise<void>): Promise<void> {
	tsParticles.init();

	await cb(tsParticles);
}


Added Arc-Appliance October Release

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

Please merge! Thanks.

arcappliance


Move Managed HSM testing to regions with more capacity

We should try these regions: Australia East, Brazil South, France Central, Japan West. Specifically, those which might be closer like France Central. My concern is about potential timeouts, so maybe we need to increase the timeouts for test runs against MHSMs.
/cc @pallavit @vcolin7

Changing to Australia East


do not fetch table stats when node is not fully available yet

this could have led to NPE during long recovery on node start
fixes #3791

@mfussenegger please review

lgtm


Put compute asset objects in the store

ComputeAsset objects are currently added to the workflow definition. They should be in the AssetStore corresponding to their namespace, with the workflow specifying the name, and the system looking up and retrieving the appropriate ComputeAsset from the AssetStore it's in when executing.

Fixed in 5ec5443fa5c8569a9e88bd627032c79e2c0a168b


Obey more of Amazon's restrictions on PutLogEvents

I discovered these two issues when testing a tail input with read_from_head=true on a log file with many old entries.

Good catch :+1: Thank you for your contribution!

released v0.1.1


[PH] store stake info in memory for forward looking headers

This line is problematic in PH rule validation
https://github.com/stratisproject/StratisBitcoinFullNode/pull/2381/files#diff-c0bed2cb85d3ca47e2fb7a8c5c5e12e8R220
Problem:
We ask for stake info (to get the stake modifier) from StakeStore but that will only calculate stake info up to current CT.
The solution:
At that point of validation we have all required info to calculate stake modifier for current PH so we calculate it and store it in the PH header (it will not get serialized to disk, or should it? see bellow)
After verifuing stake modifier and kernal is correct we will calculate the stake modifier for current block using stakeValidator.ComputeStakeModifierV2()

One more option:
Storing stake modifier in PH header AND passing it in payloads and storing it to disk.

Benefit: this will reduce the complexity of the code
Downside: Increase the amount of data we store to disk (but only slightly)

I suggest we consider putting stake modifier in PH as a serialised citizen.

In order to validate PH we need to validate coisntake kernel which is inside of PH. This validation requires information from the stake chain, more specifically - stake modifier.
Usually we get this from StakeStore but stake store only has this info for blocks that are already part of consensus chain. Now we need this info after consensus tip to validate proven headers.
Therefore we need a way to access this information.
I think we can implement it by adding a field to PH (it will not be serialized and saved to disk\sent to network\ affect hash)- this field will contain stake modifier.
When we need to validate PH N we will go to PH N-1 and get modifier from there.
After that we will be able to calculate modifier for N and then we should save it in N's modifier field.

To compute stakeModifier from previous header, I need that the previous header exposes that information.
Are we sure that if we validate a header after last checkpoint, the previous header is a ProvenHeader ?
Since we allow whitelisted stratisX peers to return us legacy headers, we can't ensure this is true, so the StackModifier property should be added to PosBlockHeader and not to ProvenBlockHeader and that property should be computed for both normal PoS headers and PH headers. Is this right? How we approach this?
@noescape00 @dangershony

Are we sure that if we validate a header after last checkpoint, the previous header is a ProvenHeader ?

no. we might as well be syncing from whitelisted qt node- in that case we don't have proven header there

Since we allow whitelisted stratisX peers to return us legacy headers, we can't ensure this is true

Yes

StackModifier property should be added to PosBlockHeader and not to ProvenBlockHeader and that property should be computed for both normal PoS headers and PH headers. Is this right? How we approach this?

Hmm. Probably not.
But that would mean that before we download blocks from qt we can't validate proven headers because we won't have stake modifier.
But adding it to pos header sounds extremely hacky.
So I'm not sure how to do it nicely in terms of design.
@dangershony any thoughts?

Maybe I've a solution, or 2.

If we consider what rised this task (the lack of a BlockStore in StakeChain) we could solve the problem implementing a proxy StakeChain layer that can access BlockStake from this (if exists) or from memory (actually missing, so a sort of Cache implementation of IStakeChain).
We can then put in that cache the BlockStake computed just by the header (is this technically possible or are we missing information? In case we can populate what we have and create a flag to signal that BlockStake is partial created so we can then fill it with missing information once we have a Block and we can store it on disk)
Having all the BlockStake there, allow us to rely on the BlockStakeProxy to obtain the value we need (StackModifierV2) to validate headers.

Solution number 2 is quite an architecture hack: actually we want to allow whitelisted peers to sync with legacy header.... what if we implemet this as a custom network rule, leaving this out from standard c# full node, and just create some kind of FullNode proxy that skip the PHvalidation part and just talk to those whitelisted nodes? This way we can use this special kind of nodes to sync from StratisX like they do now, but other FullNodes can't and will just sync with Proven Headers (once activated).

I will elaborate on a call if needed

needed re-design, addressed in https://github.com/stratisproject/StratisBitcoinFullNode/issues/2662.


Add some comments to test_example_qir_phi_int.ll

@cqc-melf Please review (note this is based on example/phiregister)

Feel free to merge this now


CI

Since most of the code is generated, unit tests don't feel too practical.
I'd like to write a few e2e examples and run them against a Dockerized obs-studio and websocket server as our test suite.
Sounds pretty silly since there's no UI, but I should be able to export my settings locally and import them into the image. I've gotten both built and running, but haven't yet tried connecting and running the existing examples against it.

Closed by https://github.com/andreykaipov/goobs/pull/17 and https://github.com/andreykaipov/goobs/pull/18
Might add more robust e2e tests in the future


examples/agents/bee.ts stop working for the question "What's the weather in Tokyo today"

Describe the bug
The examples/agents/bee.ts stopped working for the question "What's the weather in Tokyo today" It was answering
Agent 🤖 :  The final answer is $\boxed{21.5°C}

before (at least yesterday)
To Reproduce

run  examples/agents/bee.ts. yarn start -- examples/agents/bee.ts
type What's the weather in Tokyo today? for the User 👤 :  prompt
see the error

Expected behavior
The expected response is like
Agent (final_answer) 🤖 :  The final answer is $\boxed{21.5°C}$.
Agent 🤖 :  The final answer is $\boxed{21.5°C}$.

Screenshots / Code snippets
Here is the console output.
Agent (thought) 🤖 :  The user wants to know the current weather in Tokyo.
Agent (tool_name) 🤖 :  OpenMeteo
Agent (tool_input) 🤖 :  {"location": {"name": "Tokyo"}}
Agent (tool_caption) 🤖 :  Retrieving current weather forecast for Tokyo.
Agent (tool_output) 🤖 :  ToolInputValidationError: The received tool input does not match the expected schema.
Input Schema: "{"type":"object","properties":{"location":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1},"country":{"type":"string"},"language":{"type":"string","default":"English"}},"required":["name"],"additionalProperties":false},{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false}]},"start_date":{"anyOf":[{"type":"string","format":"date"},{"type":"string","format":"date-time"}],"description":"Start date for the weather forecast in the format YYYY-MM-DD (UTC)"},"end_date":{"anyOf":[{"type":"string","format":"date"},{"type":"string","format":"date-time"}],"description":"End date for the weather forecast in the format YYYY-MM-DD (UTC)"},"elevation":{"type":["number","null"]},"temperature_unit":{"type":"string","enum":["celsius","fahrenheit"],"default":"celsius"}},"required":["location","start_date"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}"
Validation Errors: [{"instancePath":"","schemaPath":"#/required","keyword":"required","params":{"missingProperty":"start_date"},"message":"must have required property 'start_date'"}]

HINT: If you're convinced that the input was correct but the tool cannot process it then use a different tool or say I don't know.
Agent (thought) 🤖 :  The user wants to know the current weather in Tokyo, but the OpenMeteo function failed due to missing start date. I can suggest an alternative function called WeatherAPI.

Set-up:

Bee version: [commit 9ee7957d119723844bc05d05fd97ee6408f695d6 (HEAD -> main, origin/main, origin/HEAD)]
Model provider:

const llm = new OllamaChatLLM({
  modelId: "llama3.1", // llama3.1:70b for better performance
})

Additional context
One thing I noticed is that if I take out the WikipediaTool from the tools list, it works.
--- a/examples/agents/bee.ts
+++ b/examples/agents/bee.ts
@@ -33,7 +33,7 @@ const agent = new BeeAgent({
   tools: [
     new DuckDuckGoSearchTool(),
     // new WebCrawlerTool(), // HTML web page crawler
-    new WikipediaTool(),
+    // new WikipediaTool(),
     new OpenMeteoTool(), // weather tool
     // new ArXivTool(), // research papers
     // new DynamicTool() // custom python tool

This should gets fixed by #56

After #56 and #57 merged, I'm getting different error.
% yarn start -- examples/agents/bee.ts
🛠 System The code interpreter tool is enabled. Please ensure that it is running on http://<IP_ADDRESS>:50051
Interactive session has started. To escape, input 'q' and submit.
User 👤 : What's the weather in Tokyo today?
Agent (thought) 🤖 :  The user wants to know the current weather in Tokyo.
Agent (tool_name) 🤖 :  OpenMeteo
Agent (tool_input) 🤖 :  {"location": {"name": "Tokyo", "country": "Japan"}, "start_date": "2024-10-03T00:00:00+09:00", "end_date": "2024-10-03T23:59:59+09:00"}
Agent (tool_caption) 🤖 :  Get the current weather forecast for Tokyo, Japan.
Agent (tool_output) 🤖 :  {"latitude":35.7,"longitude":139.6875,"generationtime_ms":0.06902217864990234,"utc_offset_seconds":0,"timezone":"UTC","timezone_abbreviation":"UTC","elevation":40,"current_units":{"time":"iso8601","interval":"seconds","temperature_2m":"°C","rain":"mm","apparent_temperature":"°C"},"current":{"time":"2024-10-03T15:30","interval":900,"temperature_2m":23.8,"rain":0,"apparent_temperature":27.9},"hourly_units":{"time":"iso8601","temperature_2m":"°C","relative_humidity_2m":"%","apparent_temperature":"°C"},"hourly":{"time":["2024-10-02T00:00","2024-10-02T01:00","2024-10-02T02:00","2024-10-02T03:00","2024-10-02T04:00","2024-10-02T05:00","2024-10-02T06:00","2024-10-02T07:00","2024-10-02T08:00","2024-10-02T09:00","2024-10-02T10:00","2024-10-02T11:00","2024-10-02T12:00","2024-10-02T13:00","2024-10-02T14:00","2024-10-02T15:00","2024-10-02T16:00","2024-10-02T17:00","2024-10-02T18:00","2024-10-02T19:00","2024-10-02T20:00","2024-10-02T21:00","2024-10-02T22:00","2024-10-02T23:00","2024-10-03T00:00","2024-10-03T01:00","2024-10-03T02:00","2024-10-03T03:00","2024-10-03T04:00","2024-10-03T05:00","2024-10-03T06:00","2024-10-03T07:00","2024-10-03T08:00","2024-10-03T09:00","2024-10-03T10:00","2024-10-03T11:00","2024-10-03T12:00","2024-10-03T13:00","2024-10-03T14:00","2024-10-03T15:00","2024-10-03T16:00","2024-10-03T17:00","2024-10-03T18:00","2024-10-03T19:00","2024-10-03T20:00","2024-10-03T21:00","2024-10-03T22:00","2024-10-03T23:00"],"temperature_2m":[24.5,26.4,28.4,29.5,30.2,30,29.4,28.5,27,25.8,25,24.4,23.6,23.9,23.4,23.1,23,22.5,22.4,22.2,22.1,21.9,22,22.5,23.2,24.2,25,25.2,25.4,25.3,23.4,22.5,22.6,21.1,21.2,21.2,21.5,21.9,22.4,23.1,24.3,24.8,25.2,25.5,25.5,25.5,26,26.7],"relative_humidity_2m":[76,68,62,60,56,55,58,62,72,76,80,85,89,87,90,96,95,91,95,92,88,90,92,86,82,77,73,72,71,73,81,84,81,90,89,92,92,93,93,93,90,87,86,86,87,88,87,84],"apparent_temperature":[28,30.4,32.7,34.1,33.7,32.6,32.1,31.5,30.8,29.5,29.1,28.7,28,28.4,27.6,27.6,27.3,25.8,26.3,25.7,25.2,25.2,25.8,25.9,26.3,27.1,27.8,28,28.1,28.2,26.3,25.2,25.1,23.9,24,24.2,24.5,25.2,26.1,27.1,28.4,28.8,29.3,29.6,29.7,29.9,30.5,31.3]},"daily_units":{"time":"iso8601","apparent_temperature_max":"°C","apparent_temperature_min":"°C","sunrise":"iso8601","sunset":"iso8601"},"daily":{"time":["2024-10-02","2024-10-03"],"apparent_temperature_max":[34.1,31.3],"apparent_temperature_min":[25.2,23.9],"sunrise":["2024-10-01T20:37","2024-10-02T20:37"],"sunset":["2024-10-02T08:24","2024-10-03T08:22"]}}
Agent 🤖 :  [LinePrefixParserError: The generated output does not adhere to the schema.
Nothing valid has been parsed yet!] {
  isFatal: true,
  isRetryable: false,
  context: {
    lines: '',
    excludedLines: '```'
  },
  [errors]: []
}
ERR  🔥  15:40:04 (app): [AgentError: Error has occurred!] {
  isFatal: false,
  isRetryable: true,
  context: {},
  [errors]: [
    [LinePrefixParserError: The generated output does not adhere to the schema.
    Nothing valid has been parsed yet!] {
      isFatal: true,
      isRetryable: false,
      context: {
        lines: '',
        excludedLines: '```'
      },
      [errors]: []
    }
  ]
}

Now I'm getting this.
% yarn start -- examples/agents/bee.ts
🛠 System The code interpreter tool is enabled. Please ensure that it is running on http://<IP_ADDRESS>:50051
Interactive session has started. To escape, input 'q' and submit.
User 👤 : What's the weather in Tokyo today?
Agent (thought) 🤖 :  The user wants to know the current weather in Tokyo.
Agent (tool_name) 🤖 :  OpenMeteo
Agent (tool_input) 🤖 :  {"location": {"name": "Tokyo", "country": "Japan"}, "start_date": "2024-10-03T00:00:00+09:00", "end_date": "2024-10-03T23:59:59+09:00"}
Agent (tool_caption) 🤖 :  Get the current weather forecast for Tokyo, Japan.
Agent (tool_output) 🤖 :  {"latitude":35.7,"longitude":139.6875,"generationtime_ms":0.12099742889404297,"utc_offset_seconds":0,"timezone":"UTC","timezone_abbreviation":"UTC","elevation":40,"current_units":{"time":"iso8601","interval":"seconds","temperature_2m":"°C","rain":"mm","apparent_temperature":"°C"},"current":{"time":"2024-10-03T17:15","interval":900,"temperature_2m":24.6,"rain":0,"apparent_temperature":29.1},"hourly_units":{"time":"iso8601","temperature_2m":"°C","relative_humidity_2m":"%","apparent_temperature":"°C"},"hourly":{"time":["2024-10-02T00:00","2024-10-02T01:00","2024-10-02T02:00","2024-10-02T03:00","2024-10-02T04:00","2024-10-02T05:00","2024-10-02T06:00","2024-10-02T07:00","2024-10-02T08:00","2024-10-02T09:00","2024-10-02T10:00","2024-10-02T11:00","2024-10-02T12:00","2024-10-02T13:00","2024-10-02T14:00","2024-10-02T15:00","2024-10-02T16:00","2024-10-02T17:00","2024-10-02T18:00","2024-10-02T19:00","2024-10-02T20:00","2024-10-02T21:00","2024-10-02T22:00","2024-10-02T23:00","2024-10-03T00:00","2024-10-03T01:00","2024-10-03T02:00","2024-10-03T03:00","2024-10-03T04:00","2024-10-03T05:00","2024-10-03T06:00","2024-10-03T07:00","2024-10-03T08:00","2024-10-03T09:00","2024-10-03T10:00","2024-10-03T11:00","2024-10-03T12:00","2024-10-03T13:00","2024-10-03T14:00","2024-10-03T15:00","2024-10-03T16:00","2024-10-03T17:00","2024-10-03T18:00","2024-10-03T19:00","2024-10-03T20:00","2024-10-03T21:00","2024-10-03T22:00","2024-10-03T23:00"],"temperature_2m":[24.5,26.4,28.4,29.5,30.2,30,29.4,28.5,27,25.8,25,24.4,23.6,23.9,23.4,23.1,23,22.5,22.4,22.2,22.1,21.9,22,22.5,23.2,24.2,25,25.2,25.4,25.3,23.4,22.5,22.6,21.1,21.2,21.2,21.9,22,22.4,23.1,24.4,24.6,24.8,24.9,25,25.2,25.6,26.6],"relative_humidity_2m":[76,68,62,60,56,55,58,62,72,76,80,85,89,87,90,96,95,91,95,92,88,90,92,86,82,77,73,72,71,73,81,84,81,90,89,92,93,94,95,95,92,91,90,91,89,89,87,84],"apparent_temperature":[28,30.4,32.7,34.1,33.7,32.6,32.1,31.5,30.8,29.5,29.1,28.7,28,28.4,27.6,27.6,27.3,25.8,26.3,25.7,25.2,25.2,25.8,25.9,26.3,27.1,27.8,28,28.1,28.2,26.3,25.2,25.1,23.9,24,24.2,25.3,25.6,26.4,27.4,28.7,29.1,29.1,29.3,29.3,29.6,30,31.2]},"daily_units":{"time":"iso8601","apparent_temperature_max":"°C","apparent_temperature_min":"°C","sunrise":"iso8601","sunset":"iso8601"},"daily":{"time":["2024-10-02","2024-10-03"],"apparent_temperature_max":[34.1,31.2],"apparent_temperature_min":[25.2,23.9],"sunrise":["2024-10-01T20:37","2024-10-02T20:37"],"sunset":["2024-10-02T08:24","2024-10-03T08:22"]}}
Agent (thought) 🤖 :  I now know the final answer.
Agent (final_answer) 🤖 :  ```
Agent 🤖 :  ```

git log
commit 4491d9677955b4a2586d1683703abed6bc868b2e (HEAD -> main, origin/main, origin/HEAD)
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 19:00:36 2024 +0200

    chore: release 0.0.23

commit 5ac89c15fce25ce78698fd5a9b80437de0af5e88
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 18:55:29 2024 +0200

    feat(agent): add fallback for invalid llm output

    Ref: #55

commit f7d51283edf4bcd12faaf6fe1b9dee02621b8c3c
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 18:52:23 2024 +0200

    fix(llm): watsonx chat preset typo

commit 93b316741e699ca8f7fc18599a7ea8bdc6d88ed7
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 18:51:55 2024 +0200

    fix(llm): bam chat preset typo

commit 572572b903704a5bf983e5508a1c5143238b8254
Author: Matous Havlena<EMAIL_ADDRESS>Date:   Thu Oct 3 18:38:29 2024 +0200

    feat(agent): update bee system prompt (#58)

    Ref: #55

It's working now.  Thanks!
yarn start -- examples/agents/bee.ts
🛠 System The code interpreter tool is enabled. Please ensure that it is running on http://<IP_ADDRESS>:50051
Interactive session has started. To escape, input 'q' and submit.
User 👤 : What's the weather in Tokyo today?
Agent (thought) 🤖 :  The user wants to know the current weather in Tokyo.
Agent (tool_name) 🤖 :  OpenMeteo
Agent (tool_input) 🤖 :  {"location": {"name": "Tokyo", "country": "Japan"}, "start_date": "2024-10-03", "end_date": "2024-10-03", "temperature_unit": "celsius"}
Agent (tool_caption) 🤖 :  Get the current weather forecast for Tokyo, Japan.
Agent (tool_output) 🤖 :  {"latitude":35.7,"longitude":139.6875,"generationtime_ms":0.06794929504394531,"utc_offset_seconds":0,"timezone":"UTC","timezone_abbreviation":"UTC","elevation":40,"current_units":{"time":"iso8601","interval":"seconds","temperature_2m":"°C","rain":"mm","apparent_temperature":"°C"},"current":{"time":"2024-10-03T17:45","interval":900,"temperature_2m":24.8,"rain":0,"apparent_temperature":29.1},"hourly_units":{"time":"iso8601","temperature_2m":"°C","relative_humidity_2m":"%","apparent_temperature":"°C"},"hourly":{"time":["2024-10-02T00:00","2024-10-02T01:00","2024-10-02T02:00","2024-10-02T03:00","2024-10-02T04:00","2024-10-02T05:00","2024-10-02T06:00","2024-10-02T07:00","2024-10-02T08:00","2024-10-02T09:00","2024-10-02T10:00","2024-10-02T11:00","2024-10-02T12:00","2024-10-02T13:00","2024-10-02T14:00","2024-10-02T15:00","2024-10-02T16:00","2024-10-02T17:00","2024-10-02T18:00","2024-10-02T19:00","2024-10-02T20:00","2024-10-02T21:00","2024-10-02T22:00","2024-10-02T23:00"],"temperature_2m":[24.5,26.4,28.4,29.5,30.2,30,29.4,28.5,27,25.8,25,24.4,23.6,23.9,23.4,23.1,23,22.5,22.4,22.2,22.1,21.9,22,22.5],"relative_humidity_2m":[76,68,62,60,56,55,58,62,72,76,80,85,89,87,90,96,95,91,95,92,88,90,92,86],"apparent_temperature":[28,30.4,32.7,34.1,33.7,32.6,32.1,31.5,30.8,29.5,29.1,28.7,28,28.4,27.6,27.6,27.3,25.8,26.3,25.7,25.2,25.2,25.8,25.9]},"daily_units":{"time":"iso8601","apparent_temperature_max":"°C","apparent_temperature_min":"°C","sunrise":"iso8601","sunset":"iso8601"},"daily":{"time":["2024-10-02"],"apparent_temperature_max":[34.1],"apparent_temperature_min":[25.2],"sunrise":["2024-10-01T20:37"],"sunset":["2024-10-02T08:24"]}}
Agent (thought) 🤖 :  I now know the final answer.
Agent (final_answer) 🤖 :  Function Description: The function OpenMeteo provides the current weather forecast for Tokyo, Japan. The output includes the current temperature, humidity, and apparent temperature, as well as the hourly and daily forecasts.
Function Result: The current temperature in Tokyo is 24.8°C, with a relative humidity of 0% and an apparent temperature of 29.1°C. The hourly forecast shows a temperature range of 24.5°C to 30.2°C, with a relative humidity range of 56% to 96%. The daily forecast shows an apparent temperature maximum of 34.1°C and a minimum of 25.2°C, with a sunrise time of 2024-10-01T20:37 and a sunset time of 2024-10-02T08:24.

Note: The function output includes the current time and date in ISO format, as requested.
Agent 🤖 :  Function Description: The function OpenMeteo provides the current weather forecast for Tokyo, Japan. The output includes the current temperature, humidity, and apparent temperature, as well as the hourly and daily forecasts.
Function Result: The current temperature in Tokyo is 24.8°C, with a relative humidity of 0% and an apparent temperature of 29.1°C. The hourly forecast shows a temperature range of 24.5°C to 30.2°C, with a relative humidity range of 56% to 96%. The daily forecast shows an apparent temperature maximum of 34.1°C and a minimum of 25.2°C, with a sunrise time of 2024-10-01T20:37 and a sunset time of 2024-10-02T08:24.

Note: The function output includes the current time and date in ISO format, as requested.
User 👤 : q

Code Level is release 0.0.24
commit<PHONE_NUMBER>2e2138a3e1c2324ae9f9ee04c40add (HEAD -> main, origin/main, origin/HEAD)
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 19:30:23 2024 +0200

    chore: release 0.0.24

commit 693237954d7a35b1e557b5f4f5e88168c7dbae9f
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 19:28:38 2024 +0200

    feat(agent): update line prefix parser fallback and add tests

    Signed-off-by: Tomas Dvorak<EMAIL_ADDRESS>
commit a6e582d6856c288332ab8cf75ca3888617cca8a5
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 19:27:23 2024 +0200

    feat(agent): use fallback only if LLM output is not empty

commit a9dc1a945649210f73c9ca4305cf754f4391f9ef
Author: Tomas Dvorak<EMAIL_ADDRESS>Date:   Thu Oct 3 19:16:52 2024 +0200

    feat(llm): update ollama default parameters

P


Test doesn't run on aws devices farm

I did pull the appium-tests-for-sample-app project,
and generated zip-with-dependencies.zip (i.e. typed mvn clean package -DskipTests=true).
I generated apk for sample-app and checked it worked on my device.
Add the apk to aws-farm, added tests as testng and run. Always same results: setup suite and teardown suite are done, the rest - failed. On the video from device farm I can see that the app didn't start at all. I tried even an empty test and same.
I can't find anything usefull in the logs.
Locally appium works fine. I had a lot of tests to run, but can't make it work in cloud.
I'm searching for the help or for any new idea (I spent the whole day on trying to run it).
Test results:

Hi,
Can you share your failed run url with us, so we can help you debug it.

Did you check your desired capabilities. What may have happened is that they're set for the local execution. We shouldn't need to set these for device farm as it will do that on our behalf if that is the case. Let me know either way when you get the chance.

I used empty capabilities (as here):
DesiredCapabilities capabilities = new DesiredCapabilities();
driver = new AndroidDriver<MobileElement>("http://<IP_ADDRESS>:4723/wd/hub", capabilities);

and once tried with device set capabilities.setCapability("deviceName", "Android");
Is that what you're asking @jamesknowsbest ?

Sorry, @floorra but how can I share a url with you? I doubt you access a link even if I would post it here. Or maybe you meant something else?

@YaroslavHavrylovych  yes, which device are you using? I want to try and reproduce the issue. Also @floorra I assume works for the device farm team or some derivative of. I believe they can use the GUIDs in the URL to look up the logs and see what the issues was.

So device is "amazon fire 2015".
The simplest test link is here.
Thanks for your time.

Okay,
I cloned the and built the sample project using these commands:
git clone https://github.com/awslabs/aws-device-farm-sample-app-for-android.git
   cd aws-device-farm-sample-app-for-android/
   ./gradlew cC

Then I build the sample project here using these commands:
git clone https://github.com/awslabs/aws-device-farm-appium-tests-for-sample-app.git
cd aws-device-farm-appium-tests-for-sample-app/
mvn clean package -DskipTests=true

Then I scheduled a run with appium 1.7.2 and the amazon file 2015

and I can reproduce the issue.

It looks like there is an issue with that device from the logs

Here is my URL
https://us-west-2.console.aws.amazon.com/devicefarm/home?region=us-east-1#/projects/3141c0a7-8f38-4099-a679-00e7a9a5e46c/runs/d1111cb3-9549-4343-96fd-585f068beb95/jobs/00000/suites/00001
I'm running the same test on the google pixel 7.1.2 to see if they work there.

Hi,
This is a known issue only with amazon fire 2015 device. We are working on fix for this issue. Please try other devices. You should be able to run your tests.
Thanks

Hi!
Device farm creating new appium instance for each test case in testng.xml. How can i control it?
I want to run all test classes in sequence without creating new instance


cli: diff: disable cache check by default

Disable cache check by default as it is extremely slow. Also disable hash check for each file during diff by default.
I went with monkeypatching in CLI as I was not sure if there was interest in supporting this in ODB.

Codecov Report
Patch coverage: 12.50% and project coverage change: -0.09 :warning:

Comparison is base (d653410) 58.54% compared to head (76900e1) 58.46%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #348      +/-   ##
==========================================
- Coverage   58.54%   58.46%   -0.09%
==========================================
  Files          52       52
  Lines        3476     3481       +5
  Branches      615      616       +1
==========================================
  Hits         2035     2035
- Misses       1353     1358       +5
  Partials       88       88

Impacted Files
Coverage Δ

src/dvc_data/cli.py
31.65% <12.50%> (-0.45%)
:arrow_down:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Loading

Hi
I am getting this error

I have repeatedly restarted Home assistant though
Logger: homeassistant.setup
Source: custom_components/webrtc/utils.py:74
Integration: WebRTC Camera (documentation, issues)
First occurred: 11:48:26 AM (1 occurrences)
Last logged: 11:48:26 AM
Error during setup of component webrtc
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 235, in _async_setup_component
result = await task
File "/config/custom_components/webrtc/init.py", line 75, in async_setup
utils.register_static_path(hass.http.app, url_path, path)
File "/config/custom_components/webrtc/utils.py", line 74, in register_static_path
app'allow_cors'
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 186, in getitem
return self._state[key]
KeyError: 'allow_cors'

#270


p_att_feats.narrow(2,0, self.multi_head_scale * self.d_model) why? 170 line  in AoAModel.py

This is to split K (Key) and V (Value) for the attention module of the decoder. K and V are both linear transformation of the feature vectors.

This is to split K (Key) and V (Value) for the attention module of the decoder. K and V are both linear transformation of the feature vectors.

The source code is:
att = self.attention(h_att, p_att_feats.narrow(2, 0, self.multi_head_scale * self.d_model), p_att_feats.narrow(2, self.multi_head_scale * self.d_model, self.multi_head_scale * self.d_model), att_masks)
in the third parameter p_att_feats.narrow(2, self.multi_head_scale * self.d_model, self.multi_head_scale * self.d_model), start is equal to length, both are 1024.
Also, I print both p_att_feats.narrow(2, 0, self.multi_head_scale * self.d_model) and p_att_feats.narrow(2, self.multi_head_scale * self.d_model, self.multi_head_scale * self.d_model), their shape both are (batch size, 196, 1024), which is equal to att_feat's shape.
(I set attention shape is 14*14)
So, I confused that how this code did the split operation?  And when start = length in tensor.narrow(), why this could be fine to work?

The length of p_att_feats is 2*self.d_model (not self.d_model) in AoAModel.


opration code info

To enhance transparency for both users and project developers, laying the groundwork for future features such as the blue verification mark.

这个版本现在已经定稿调试了，有pr往v1.1.0 分支发


Add Dockerfile + dotenv token system + some neater code fixes + basic README + gitignore

-Add Dockerfile (if you ever use Docker, which you should and will eventually learn, you will want this to build easier)
-Dotenv system (adds the token to a .env rather than a JSON, which is more secure)
-README (basic readme you can change later on, best to have one)
-Add a .gitignore (This is a VERY important Git file that you can add and let git know when you commit, what not to change or add, good for tokens)
-Add commands to a commands folder (good for organization)
Also, I noticed you have some unfinished commands. I recommend adding these to a seperate branch with a copy of the bot that is the same but with these commands, and leave them out of the main branch. You can still clone both of these branches individually and choose which to commit to.

Also, I noticed you have some unfinished commands. I recommend adding these to a seperate branch with a copy of the bot that is the same but with these commands, and leave them out of the main branch. You can still clone both of these branches individually and choose which to commit to.
A good resource I found is here.  Really helped me when I was learning Git.