Scaffolding complex table indexes

Using 3.1-preview
Is it possible to have a table with index over multiple columns?
So e.g. in code it would look like this
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity()
.HasIndex(p => new { p.FirstName, p.LastName });
}
I appear to have a .mdb database that has something like this defined and scaffolding it is not working properly.
Digging deep into the indexes I have something like this
Table Name | Column Name | Index Name | Oridinal Position
TableA | Col1 | IndexName | 1
TableA | Col3 | IndexName | 2
So the scaffolding is putting an index on each of Col1 and Col3 with the name IndexName. So you end up having 2 indexes on the same table both with the same name. This causes an error when trying to run the program and access data

See https://github.com/bubibubi/EntityFrameworkCore.Jet/issues/55#issuecomment-680160106
Please try again once the PR has been merged.

I can confirm that the complex indexes are dealt with as expected


Second mirror registry with rewrite configuration not working properly

Environmental Info:
K3s Version:
k3s version v1.30.5+k3s1
go version go1.22.6
Node(s) CPU architecture, OS, and Version:
Linux 5.14.0-284.30.1.el9_2.x86_64 https://github.com/k3s-io/k3s/issues/1 SMP PREEMPT_DYNAMIC Fri Aug 25 09:13:12 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux
Cluster Configuration:
1 server, 1 agent
Describe the bug:
I set up two mirror registries with rewrite configuration in registries.yaml  in k3s(both server and agent)
mirrors:
  icr.io:
    endpoint:
      - "https://docker-na-public.artifactory.test.com"
    rewrite:
      "cpopen": "se-next-gen-docker-local/$1"
  cp.icr.io:
    endpoint:
      - "https://docker-na-public.artifactory.test.com"
    rewrite:
      "cp/se-data-center-edge": "se-next-gen-docker-local/$1"
configs:
  docker-na-public.artifactory.test.com:
    auth:
      username: <userid>
      password: <userpwd>

The first mirror registry configuration works well. I can start a pod that needs to pull image from icr.io/cpopen/edge-operator-catalog@sha256:4f9725b23c8560eae25be0a9fac01c74c9d4a9fee8200e31aad9842f7c338433, but actually pull image from mirror registry:
https://docker-na-public.artifactory.test.com/se-next-gen-docker-local/edge-operator-catalog@sha256:4f9725b23c8560eae25be0a9fac01c74c9d4a9fee8200e31aad9842f7c338433 successfully
However, the second mirror registry configuration does not work properly.  Another pod which needs to pull image from  cp.icr.io/cp/se-data-center-edge/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687 can not pull image from mirror registry
https://docker-na-public.artifactory.test.com/se-next-gen-docker-local/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687.
The error shows
Warning  Failed                  3s    kubelet                  Failed to pull image "cp.icr.io/cp/se-data-center-edge/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687": failed to pull and unpack image "cp.icr.io/cp/se-data-center-edge/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687": failed to resolve reference "cp.icr.io/cp/se-data-center-edge/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://docker-na-public.artifactory.test.com/artifactory/api/docker/null/v2/token?scope=repository%3Acp%2Fse-data--center-edge%2Fmini-test%3Apull&service=docker-na-public.artifactory.test.com: 401 Unauthorized

The thing is I could manually pull that image from mirror registry
ctr images pull --user <userid>:<userpwd> docker-na-public.artifactory.test.com/se-next-gen-docker-local/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687

WARN[0000] DEPRECATION: The `configs` property of `[plugins."io.containerd.grpc.v1.cri".registry]` is deprecated since containerd v1.5 and will be removed in containerd v2.1.
Steps To Reproduce:

Installed K3s:

Expected behavior:

Actual behavior:

Additional context / logs:

You're using $1 in your rewrite but do not have a capture group in the regex. What exactly are you trying to do? Please check the docs for examples.

I'm trying to let the pod pull image from the mirror registry docker-na-public.artifactory.test.com/se-next-gen-docker-local/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687  instead of original image definition cp.icr.io/cp/se-data-center-edge/mini-test@sha256:c718d3f996061aef92966a2171713af1cfdbac93cbea7a753107e3d5430c3687
using rewrite part to replace cp/se-data-center-edge to se-next-gen-docker-local
I look at the example here: https://docs.k3s.io/installation/private-registry. And also try to both configuration in rewrite part
 rewrite:
      "cp/se-data-center-edge": "se-next-gen-docker-local/$1"

and
 rewrite:
      "cp/se-data-center-edge/(.*)": "se-next-gen-docker-local/$1"

But I got the same error which seems rewrite part does not effect it.

WARN[0000] DEPRECATION: The configsproperty of[plugins."io.containerd.grpc.v1.cri".registry]is deprecated since containerd v1.5 and will be removed in containerd v2.1. Useconfig_path instead.

K3s v1.30.5 no longer sets plugins."io.containerd.grpc.v1.cri".registry, and DOES use config_path instead:
root@k3s-server-1:~# k3s --version
k3s version v1.30.5+k3s1 (9b586704)
go version go1.22.6

root@k3s-server-1:~# grep -A1 registry /var/lib/rancher/k3s/agent/etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".registry]
  config_path = "/var/lib/rancher/k3s/agent/etc/containerd/certs.d"

The fact that you are getting this error regarding a property that K3s does not set make me suspect that you have provided a custom containerd config.toml.tmpl and either failed to make it an actual template, or have let it drift from what K3s currently requires. For this reason, the registry config from registries.yaml is not being passed through into containerd's configuration.

failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://docker-na-public.artifactory.test.com/artifactory/api/docker/null/v2/token?scope=repository%3Acp%2Fse-data--center-edge%2Fmini-test%3Apull&service=docker-na-public.artifactory.test.com: 401 Unauthorized

https://docker-na-public.artifactory.test.com/artifactory/api/docker/null/v2/token
The null in this URL looks weird. Are you still getting that after fixing the regex?
The message also suggests that there is an extra hypen in your config somewhere... the scope is repository:cp/se-data--center-edge/mini-test:pull which does not match what you said you're trying to pull. Do you perhaps have a typo in your image name? Is it perhaps cp.icr.io/cp/se-data--center-edge/mini-test:latest

I did not use containerd.toml.tmpl, and rewrite part is in the host
[root@qb-reg5-m1 containerd]# ls
certs.d  config.toml
[root@qb-reg5-m1 containerd]# pwd
/var/lib/rancher/k3s/agent/etc/containerd

[root@qb-reg5-m1 containerd]# cat certs.d/cp.icr.io/hosts.toml
# File generated by k3s. DO NOT EDIT.

server = "https://cp.icr.io/v2"
capabilities = ["pull", "resolve", "push"]

[host]
[host."https://docker-na-public.artifactory.test.com/v2"]
  capabilities = ["pull", "resolve"]
  [host."https://docker-na-public.artifactory.test.com/v2".rewrite]
    "cp/se-data-center-edge/(.*)" = "se-next-gen-docker-local/$1"

The message also suggests that there is an extra hyphen coming from somewhere... the scope is repository:cp/se-data--center-edge/mini-test:pull which does not match what you said you're trying to pull. Did you perhaps typo the image in your pod spec as cp.icr.io/cp/se-data--center-edge/mini-test:latest, or add an extra hyphen in your replacement string?

Yes, I still get the same error after fixing the regex.
The interesting thing is the first registry mirror working well.
I could pull image from docker-na-public.artifactory.test.com/se-next-gen-docker-local/edge-operator-catalog@sha256:4f9725b23c8560eae25be0a9fac01c74c9d4a9fee8200e31aad9842f7c338433 instead of original path
icr.io/cpopen/edge-operator-catalog@sha256:4f9725b23c8560eae25be0a9fac01c74c9d4a9fee8200e31aad9842f7c338433

It occurs to me - you've got registries.yaml on BOTH the nodes, right? That is node-specific configuration; it is not global cluster config. You need to configure that on the agent AND the server individually.
Assuming you've don that, You might try doing the following on whatever node the pod is being pulled from:
echo CONTAINERD_LOG_LEVEL=debug >> /etc/sysconfig/k3s && systemctl restart k3s (on a server)
echo CONTAINERD_LOG_LEVEL=debug >> /etc/sysconfig/k3s-agent && systemctl restart k3s-agent (on an agent)
That'll give you more info in the containerd.log

Yes, I put registries.yaml in both server and agent nodes.
Thanks for the suggestion,  I will try to enable debug to see how it looks.

Just on the off chance the replacement is doing something weird, you might try anchoring it?
  rewrite:
    "^cp/se-data-center-edge/(.+)$": "se-next-gen-docker-local/$1"

I have similar problem.
k3s version v1.29.4+k3s1 (94e29e2e)
go version go1.21.9

/etc/rancher/k3s/registries.yaml
mirrors:
  "docker.io":
    endpoint:
      - https://swr.cn-east-3.myhuaweicloud.com
    rewrite:
      "(.*)": "hmirror/$1"
configs:
  swr.cn-east-3.myhuaweicloud.com:
    auth:
      username: xx
      password: yy

install k3s
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_SKIP_SELINUX_RPM=true K3S_KUBECONFIG_MODE="644" INSTALL_K3S_MIRROR=cn K3S_TOKEN=SECRET INSTALL_K3S_VERSION="v1.29.4+k3s1" sh -

I can pull images normally from my registry.
[root@ecs-free-0001 tmp]# crictl images
IMAGE                                        TAG                    IMAGE ID            SIZE
docker.io/rancher/klipper-helm               v0.8.3-build20240228   0929b4140ada6       91.2MB
docker.io/rancher/klipper-lb                 v0.4.7                 edc812b8e25d0       4.78MB
docker.io/rancher/local-path-provisioner     v0.0.26                c54dcef6214cb       17.2MB
docker.io/rancher/mirrored-coredns-coredns   1.10.1                 ead0a4a53df89       16.2MB
docker.io/rancher/mirrored-library-traefik   2.10.7                 ee69e8120b64a       43.2MB
docker.io/rancher/mirrored-metrics-server    v0.7.0                 b9a5a1927366a       19.3MB
docker.io/rancher/mirrored-pause             3.6                    6270bb605e12e       298kB

[root@ecs-free-0001 tmp]# kubectl get po -A
NAMESPACE         NAME                                        READY   STATUS             RESTARTS   AGE
kube-system       local-path-provisioner-6c86858495-m7p9f     1/1     Running            0          15m
kube-system       svclb-traefik-839f5d4c-rkz2c                2/2     Running            0          12m
kube-system       helm-install-traefik-crd-tssm4              0/1     Completed          0          15m
kube-system       helm-install-traefik-frdwz                  0/1     Completed          1          15m
kube-system       coredns-6799fbcd5-9z2gm                     1/1     Running            0          15m
kube-system       traefik-7d5f6474df-kfzgh                    1/1     Running            0          12m
kube-system       metrics-server-54fd9b65b-fd5nn              1/1     Running            0          15m

when I pull one image from my registry , it's OK.
[root@k8s-master ~]# crictl pull swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.8.0
Image is up to date for sha256:c0a9306b27689ddde5429e1333bac7b5ca9dc49cf005918a49518fbebbfd9d8b
[root@k8s-master ~]# crictl images | grep cluster-operator
swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator            2.8.0                                      c0a9306b27689       26MB
[root@k8s-master ~]#

but I can't pull it with rewrite. I don't know why.
[root@ecs-free-0001 tmp]# crictl pull rabbitmqoperator/cluster-operator:2.8.0
E1101 17:31:20.620215   16360 remote_image.go:180] "PullImage from image service failed" err="rpc error: code = Unknown desc = failed to pull and unpack image \"docker.io/rabbitmqoperator/cluster-operator:2.8.0\": failed to resolve reference \"docker.io/rabbitmqoperator/cluster-operator:2.8.0\": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found" image="rabbitmqoperator/cluster-operator:2.8.0"
FATA[0000] pulling image: failed to pull and unpack image "docker.io/rabbitmqoperator/cluster-operator:2.8.0": failed to resolve reference "docker.io/rabbitmqoperator/cluster-operator:2.8.0": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found

Did I make a mistake in my configuration somewhere? But why is it able to normally pull the rancher image during the k3s installation?

@codering this looks like an issue with the registry you're using as a mirror. I don't know why it would be returning a 404 when you're authenticating to use it as a mirror.

@brandond
After modifying regex in rewrite part, I could pull image from both server and agent using 'crictl'
#crictl pull cp.icr.io/cp/se-data--center-edge/mini-test:@sha256:ca9a0906f7810d2a827648960ee2c6a8c9980817474ce30eee546e19d7f78132
Image is up to date for sha256:2f6e40f487db28d0d728d3f7c05248edd7a270a8c72726e9ef311d718c8f2dde

But I don't understand why image pull inside the pod still failed.   Do you have any other suggestions?  Thank you.
  Warning  Failed     3m38s (x4 over 5m10s)  kubelet            Failed to pull image "cp.icr.io/cp/se-data-center-edge/mini-test:@sha256:ca9a0906f7810d2a827648960ee2c6a8c9980817474ce30eee546e19d7f78132": failed to pull and unpack image "cp.icr.io/cp/se-data-center-edge/mini-test:@sha256:ca9a0906f7810d2a827648960ee2c6a8c9980817474ce30eee546e19d7f78132": failed to resolve reference "cp.icr.io/cp/se-data-center-edge/mini-test:@sha256:ca9a0906f7810d2a827648960ee2c6a8c9980817474ce30eee546e19d7f78132": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://docker-na-public.artifactory.swg-devops.com/artifactory/api/docker/null/v2/token?scope=repository%3Acp%2Fse-data-center-edge%2Fmini-test%3Apull&service=docker-na-public.artifactory.swg-devops.com: 401 Unauthorized

One of these has a double hyphen and the other does not. I point this out earlier. Is this intentional?

@codering this looks like an issue with the registry you're using as a mirror. I don't know why it would be returning a 404 when you're authenticating to use it as a mirror. I do see that the auth request has the scope set twice, once for the original image repo, and once with the rewritten name. I don't think I've seen this before, but I suspect this is confusing the auth service. You might turn on containerd debug and trace the requests to see where this is coming from.

@brandond Set containerd debug level to debug. Here are the detail logs. Any ideas on the issue?
crictl pull docker.io/rabbitmqoperator/cluster-operator:2.7.0

time="2024-11-04T09:23:59.282048240+08:00" level=info msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\""
time="2024-11-04T09:23:59.282126759+08:00" level=debug msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\" with snapshotter overlayfs"
time="2024-11-04T09:23:59.283737151+08:00" level=debug msg="loading host directory" dir=/var/lib/rancher/k3s/agent/etc/containerd/certs.d/docker.io
time="2024-11-04T09:23:59.283970296+08:00" level=debug msg=resolving host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:23:59.283997031+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.324497576+08:00" level=debug msg="fetch response received" host=swr.cn-east-3.myhuaweicloud.com response.header.connection=keep-alive response.header.content-length=61 response.header.content-type="application/json;charset=UTF-8" response.header.date="Mon, 04 Nov 2024 01:23:59 GMT" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.server="Web Server" response.header.www-authenticate="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" response.status="401 Unauthorized" url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.324542691+08:00" level=debug msg=Unauthorized header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:23:59.324578114+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.617911572+08:00" level=info msg="trying next host" error="failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:23:59.617949396+08:00" level=debug msg=resolving host=registry-1.docker.io
time="2024-11-04T09:23:59.617966636+08:00" level=debug msg="do request" host=registry-1.docker.io request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://registry-1.docker.io/v2/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-04T09:23:59.829470795+08:00" level=info msg="trying next host" error="failed to do request: Head \"https://registry-1.docker.io/v2/rabbitmqoperator/cluster-operator/manifests/2.7.0\": read tcp <IP_ADDRESS>:59858-><IP_ADDRESS>:443: read: connection reset by peer" host=registry-1.docker.io
time="2024-11-04T09:23:59.830960725+08:00" level=error msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\" failed" error="failed to pull and unpack image \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\": failed to resolve reference \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found"
time="2024-11-04T09:23:59.831067745+08:00" level=info msg="stop pulling image docker.io/rabbitmqoperator/cluster-operator:2.7.0: active requests=0, bytes read=194"

crictl pull swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0

time="2024-11-04T09:40:51.926426596+08:00" level=info msg="PullImage \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\""
time="2024-11-04T09:40:51.926489223+08:00" level=debug msg="PullImage \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\" with snapshotter overlayfs"
time="2024-11-04T09:40:51.927968493+08:00" level=debug msg="loading host directory" dir=/var/lib/rancher/k3s/agent/etc/containerd/certs.d/swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:40:51.928107089+08:00" level=debug msg=resolving host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:40:51.928129911+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-04T09:40:51.955075769+08:00" level=debug msg="fetch response received" host=swr.cn-east-3.myhuaweicloud.com response.header.connection=keep-alive response.header.content-length=61 response.header.content-type="application/json;charset=UTF-8" response.header.date="Mon, 04 Nov 2024 01:40:52 GMT" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.server="Web Server" response.header.www-authenticate="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" response.status="401 Unauthorized" url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-04T09:40:51.955120497+08:00" level=debug msg=Unauthorized header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:40:51.955151765+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-04T09:40:52.458440519+08:00" level=debug msg="fetch response received" host=swr.cn-east-3.myhuaweicloud.com response.header.cache-control="no-cache, no-store, must-revalidate" response.header.connection=keep-alive response.header.content-length=946 response.header.content-type=application/vnd.docker.distribution.manifest.v2+json response.header.date="Mon, 04 Nov 2024 01:40:52 GMT" response.header.docker-content-digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.pragma=no-cache response.header.record-context-id=d91caf1a-e647-405f-9bc3-ed7cac40a09f response.header.server="Web Server" response.header.strict-transport-security="max-age=31536000; includeSubdomains;" response.header.x-content-type-options=nosniff response.header.x-download-options=noopen response.header.x-xss-protection="1; mode=block" response.status="200 OK" url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-04T09:40:52.458494997+08:00" level=debug msg=resolved desc.digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:40:52.458534621+08:00" level=debug msg="loading host directory" dir=/var/lib/rancher/k3s/agent/etc/containerd/certs.d/swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:40:52.458746900+08:00" level=debug msg=fetch digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" mediatype=application/vnd.docker.distribution.manifest.v2+json size=946
time="2024-11-04T09:40:52.464990700+08:00" level=debug msg="do request" digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" mediatype=application/vnd.docker.distribution.manifest.v2+json request.header.accept="application/vnd.docker.distribution.manifest.v2+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=946 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:52.496004396+08:00" level=debug msg="fetch response received" digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" mediatype=application/vnd.docker.distribution.manifest.v2+json response.header.connection=keep-alive response.header.content-length=61 response.header.content-type="application/json;charset=UTF-8" response.header.date="Mon, 04 Nov 2024 01:40:52 GMT" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.server="Web Server" response.header.www-authenticate="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:pull\"" response.status="401 Unauthorized" size=946 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:52.496056098+08:00" level=debug msg=Unauthorized digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:pull\"" mediatype=application/vnd.docker.distribution.manifest.v2+json size=946
time="2024-11-04T09:40:52.496125955+08:00" level=debug msg="do request" digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" mediatype=application/vnd.docker.distribution.manifest.v2+json request.header.accept="application/vnd.docker.distribution.manifest.v2+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=946 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:52.732902088+08:00" level=debug msg="fetch response received" digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" mediatype=application/vnd.docker.distribution.manifest.v2+json response.header.cache-control="no-cache, no-store, must-revalidate" response.header.connection=keep-alive response.header.content-length=946 response.header.content-type=application/vnd.docker.distribution.manifest.v2+json response.header.date="Mon, 04 Nov 2024 01:40:53 GMT" response.header.docker-content-digest="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.pragma=no-cache response.header.record-context-id=a76b6c60-08df-4a8e-99e8-659062d1d4f4 response.header.server="Web Server" response.header.strict-transport-security="max-age=31536000; includeSubdomains;" response.header.x-content-type-options=nosniff response.header.x-download-options=noopen response.header.x-xss-protection="1; mode=block" response.status="200 OK" size=946 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:52.749338863+08:00" level=debug msg=fetch digest="sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd" mediatype=application/vnd.docker.container.image.v1+json size=2169
time="2024-11-04T09:40:52.755289897+08:00" level=debug msg="do request" digest="sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd" mediatype=application/vnd.docker.container.image.v1+json request.header.accept="application/vnd.docker.container.image.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=2169 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd"
time="2024-11-04T09:40:52.937208009+08:00" level=debug msg="fetch response received" digest="sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd" mediatype=application/vnd.docker.container.image.v1+json response.header.accept-ranges=bytes response.header.connection=keep-alive response.header.content-length=2169 response.header.content-type=binary/octet-stream response.header.date="Mon, 04 Nov 2024 01:40:53 GMT" response.header.etag="\"501498a4e7f27eb87471ad6614a88204\"" response.header.last-modified="Mon, 17 Jun 2024 10:23:51 GMT" response.header.server=OBS response.header.x-amz-id-2=32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA response.header.x-amz-request-id=00000192F4D50189B924EB46C4172C71 response.header.x-amz-tagging-count=0 response.header.x-reserved="amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc" response.status="200 OK" size=2169 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd"
time="2024-11-04T09:40:52.948956200+08:00" level=debug msg=fetch digest="sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip size=123555
time="2024-11-04T09:40:52.949006150+08:00" level=debug msg=fetch digest="sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip size=25836762
time="2024-11-04T09:40:52.949027721+08:00" level=debug msg=fetch digest="sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip size=219
time="2024-11-04T09:40:52.955347530+08:00" level=debug msg="do request" digest="sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip request.header.accept="application/vnd.docker.image.rootfs.diff.tar.gzip, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=123555 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f"
time="2024-11-04T09:40:52.963426729+08:00" level=debug msg="do request" digest="sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip request.header.accept="application/vnd.docker.image.rootfs.diff.tar.gzip, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=25836762 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138"
time="2024-11-04T09:40:52.968779188+08:00" level=debug msg="do request" digest="sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip request.header.accept="application/vnd.docker.image.rootfs.diff.tar.gzip, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=GET size=219 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7"
time="2024-11-04T09:40:53.062104025+08:00" level=debug msg="fetch response received" digest="sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip response.header.accept-ranges=bytes response.header.connection=keep-alive response.header.content-length=123555 response.header.content-type=binary/octet-stream response.header.date="Mon, 04 Nov 2024 01:40:53 GMT" response.header.etag="\"52ea2d3679acc6544bb93e694f9ca78b\"" response.header.last-modified="Mon, 17 Jun 2024 10:23:04 GMT" response.header.server=OBS response.header.x-amz-id-2=32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA response.header.x-amz-request-id=00000192F4D50213B924EB46C4172C73 response.header.x-amz-tagging-count=0 response.header.x-reserved="amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc" response.status="200 OK" size=123555 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f"
time="2024-11-04T09:40:53.194398712+08:00" level=debug msg="fetch response received" digest="sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip response.header.accept-ranges=bytes response.header.connection=keep-alive response.header.content-length=25836762 response.header.content-type=binary/octet-stream response.header.date="Mon, 04 Nov 2024 01:40:53 GMT" response.header.etag="\"718af2a39601292680b52d232986eddc\"" response.header.last-modified="Mon, 17 Jun 2024 10:23:47 GMT" response.header.server=OBS response.header.x-amz-id-2=32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA response.header.x-amz-request-id=00000192F4D50275B664641F9D9F8BBF response.header.x-amz-tagging-count=0 response.header.x-reserved="amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc" response.status="200 OK" size=25836762 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138"
time="2024-11-04T09:40:53.834965790+08:00" level=debug msg="diff applied" d=312.014418ms digest="sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138" media=application/vnd.docker.image.rootfs.diff.tar.gzip size=25836762
time="2024-11-04T09:40:53.841669479+08:00" level=debug msg="layer unpacked" duration=898.965785ms layer="sha256:315d362218bb7f6cb1d3ad08799c92a30e7dc43e48a1fc8cee05c38e247a9138"
time="2024-11-04T09:40:54.206225497+08:00" level=debug msg="fetch response received" digest="sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7" mediatype=application/vnd.docker.image.rootfs.diff.tar.gzip response.header.accept-ranges=bytes response.header.connection=keep-alive response.header.content-length=219 response.header.content-type=binary/octet-stream response.header.date="Mon, 04 Nov 2024 01:40:54 GMT" response.header.etag="\"99e2a9f018cd5e0a7912c811ab1112cf\"" response.header.last-modified="Mon, 17 Jun 2024 10:23:05 GMT" response.header.server=OBS response.header.x-amz-id-2=32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA response.header.x-amz-request-id=00000192F4D5027AB16588C7EC5058ED response.header.x-amz-tagging-count=0 response.header.x-reserved="amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc" response.status="200 OK" size=219 url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/blobs/sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7"
time="2024-11-04T09:40:54.213011589+08:00" level=debug msg="diff applied" d="908.773µs" digest="sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7" media=application/vnd.docker.image.rootfs.diff.tar.gzip size=219
time="2024-11-04T09:40:54.217570977+08:00" level=debug msg="layer unpacked" duration=375.869091ms layer="sha256:ed3710ae7c65e8f0f4ef30639ff831de697979201507848469a341c1a1e9e1d7"
time="2024-11-04T09:40:54.223826732+08:00" level=debug msg="diff applied" d=1.954618ms digest="sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f" media=application/vnd.docker.image.rootfs.diff.tar.gzip size=123555
time="2024-11-04T09:40:54.228790020+08:00" level=debug msg="layer unpacked" duration=11.18742ms layer="sha256:f64c8f418cb03a7c30ffe585d63beddccadbae2468a802f6c59ad713e15d307f"
time="2024-11-04T09:40:54.230122120+08:00" level=debug msg="image unpacked" chainID="sha256:da5de361912d14caf254878f4dfc0ac2e97c87b83ef452fa591aa2c99155213a" config="sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd" duration=1.28756063s
time="2024-11-04T09:40:54.230158721+08:00" level=debug msg="create image" name="swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0" target="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:54.231445140+08:00" level=debug msg="Received containerd event timestamp - 2024-11-04 01:40:54.231343703 +0000 UTC, namespace - \"k8s.io\", topic - \"/images/create\""
time="2024-11-04T09:40:54.231525688+08:00" level=info msg="ImageCreate event name:\"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\" labels:{key:\"io.cri-containerd.image\" value:\"managed\"}"
time="2024-11-04T09:40:54.232429041+08:00" level=info msg="stop pulling image swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0: active requests=0, bytes read=25973122"
time="2024-11-04T09:40:54.232490307+08:00" level=debug msg="create image" name="sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd" target="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:54.233877091+08:00" level=debug msg="Received containerd event timestamp - 2024-11-04 01:40:54.233710466 +0000 UTC, namespace - \"k8s.io\", topic - \"/images/create\""
time="2024-11-04T09:40:54.233931868+08:00" level=info msg="ImageCreate event name:\"sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd\" labels:{key:\"io.cri-containerd.image\" value:\"managed\"}"
time="2024-11-04T09:40:54.234142279+08:00" level=debug msg="create image" name="swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0" target="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:54.234602279+08:00" level=debug msg="create image" name="swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator@sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c" target="sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c"
time="2024-11-04T09:40:54.236086579+08:00" level=debug msg="Received containerd event timestamp - 2024-11-04 01:40:54.235934993 +0000 UTC, namespace - \"k8s.io\", topic - \"/images/create\""
time="2024-11-04T09:40:54.236127103+08:00" level=info msg="ImageCreate event name:\"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator@sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c\" labels:{key:\"io.cri-containerd.image\" value:\"managed\"}"
time="2024-11-04T09:40:54.236487865+08:00" level=info msg="Pulled image \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\" with image id \"sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd\", repo tag \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\", repo digest \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator@sha256:7628e022b4159342a8c4056228023e7030875a131675cae73248dea86875d68c\", size \"25963651\" in 2.310026116s"
time="2024-11-04T09:40:54.236517667+08:00" level=info msg="PullImage \"swr.cn-east-3.myhuaweicloud.com/hmirror/rabbitmqoperator/cluster-operator:2.7.0\" returns image reference \"sha256:2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd\""

time="2024-11-04T09:23:59.283997031+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.324497576+08:00" level=debug msg="fetch response received" host=swr.cn-east-3.myhuaweicloud.com response.header.connection=keep-alive response.header.content-length=61 response.header.content-type="application/json;charset=UTF-8" response.header.date="Mon, 04 Nov 2024 01:23:59 GMT" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.server="Web Server" response.header.www-authenticate="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" response.status="401 Unauthorized" url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.324542691+08:00" level=debug msg=Unauthorized header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-04T09:23:59.324578114+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.15-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-04T09:23:59.617911572+08:00" level=info msg="trying next host" error="failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found" host=swr.cn-east-3.myhuaweicloud.com

msg=Unauthorized header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" host=swr.cn-east-3.myhuaweicloud.com
unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found"

It looks like containerd is failing to modify the repository name in the second scope. I'm not sure why that'd be, but I do note that you're using v1.7.15-k3s1 which we haven't shipped since May of 2024. Please try a newer release of K3s, and let us know if the issue persists.

@brandond  same error in  newer version (v1.29.10+k3s1)
time="2024-11-05T09:56:23.718495322+08:00" level=info msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\""
time="2024-11-05T09:56:23.718550765+08:00" level=debug msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\" with snapshotter overlayfs"
time="2024-11-05T09:56:23.721729505+08:00" level=debug msg="loading host directory" dir=/var/lib/rancher/k3s/agent/etc/containerd/certs.d/docker.io
time="2024-11-05T09:56:23.721921417+08:00" level=debug msg=resolving host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-05T09:56:23.721945017+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.22-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-05T09:56:23.754841177+08:00" level=debug msg="fetch response received" host=swr.cn-east-3.myhuaweicloud.com response.header.connection=keep-alive response.header.content-length=61 response.header.content-type="application/json;charset=UTF-8" response.header.date="Tue, 05 Nov 2024 01:56:24 GMT" response.header.forserver=swr response.header.keep-alive="timeout=300" response.header.server="Web Server" response.header.www-authenticate="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" response.status="401 Unauthorized" url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-05T09:56:23.754880209+08:00" level=debug msg=Unauthorized header="Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-05T09:56:23.754922509+08:00" level=debug msg="do request" host=swr.cn-east-3.myhuaweicloud.com request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.22-k3s1 request.method=HEAD url="https://swr.cn-east-3.myhuaweicloud.com/v2/hmirror/rabbitmqoperator/cluster-operator/manifests/2.7.0?ns=docker.io"
time="2024-11-05T09:56:24.024202297+08:00" level=info msg="trying next host" error="failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found" host=swr.cn-east-3.myhuaweicloud.com
time="2024-11-05T09:56:24.024248431+08:00" level=debug msg=resolving host=registry-1.docker.io
time="2024-11-05T09:56:24.024269825+08:00" level=debug msg="do request" host=registry-1.docker.io request.header.accept="application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, */*" request.header.user-agent=containerd/v1.7.22-k3s1 request.method=HEAD url="https://registry-1.docker.io/v2/rabbitmqoperator/cluster-operator/manifests/2.7.0"
time="2024-11-05T09:56:24.262991073+08:00" level=info msg="trying next host" error="failed to do request: Head \"https://registry-1.docker.io/v2/rabbitmqoperator/cluster-operator/manifests/2.7.0\": read tcp <IP_ADDRESS>:47928-><IP_ADDRESS>:443: read: connection reset by peer" host=registry-1.docker.io
time="2024-11-05T09:56:24.264423988+08:00" level=error msg="PullImage \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\" failed" error="failed to pull and unpack image \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\": failed to resolve reference \"docker.io/rabbitmqoperator/cluster-operator:2.7.0\": failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found"
time="2024-11-05T09:56:24.264497137+08:00" level=info msg="stop pulling image docker.io/rabbitmqoperator/cluster-operator:2.7.0: active requests=0, bytes read=194"

I'm not sure why you have two scopes there, but I can see if I can reproduce this internally and figure out if this is a containerd bug, or what.

The issue here is that there are two scopes in the auth request. One of them comes from the Unauthorized response:

Bearer realm=\"https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/\",service=\"dockyard\",scope=\"repository:hmirror/rabbitmqoperator/cluster-operator:\"

The other is generated internally by containerd based on the repository in the image being pulled, but unfortunately this is not properly rewritten, The registry auth provider returns a 404 for the bearer token request because it does not recognize the repository referred to by the unmodified scope:

https://swr.cn-east-3.myhuaweicloud.com/swr/auth/v2/registry/auth/?scope=repository%3Ahmirror%2Frabbitmqoperator%2Fcluster-operator%3A&scope=repository%3Arabbitmqoperator%2Fcluster-operator%3Apull&service=dockyard: 404 Not Found

I believe I have addressed this in https://github.com/brandond/containerd/commit/c18a4212c76eed6dc52d94c5f48fc6598e140712

Validated using commit id from release-1.31 branch
Environment Details
Infrastructure
Cloud EC2 instance
Node(s) CPU architecture, OS, and Version:
Ubuntu 22.04
Cluster Configuration:
Single node
Steps followed:

Create an artifactory repository is of type local.
Pull an example image
Tag and push the image to the artifactory
Install rke2 using registries.yaml as below
Deploy a workload using the above image.
Verify the pod is up and running and pulling the image from the mirror registry

registries.yaml
cat registries.yaml
mirrors:
  registry.example.com:
    endpoint:
      - "https://trialartifactory.jfrog.io"
    rewrite:
      "^rancher/(.*)$": "testartifactory/$1"
configs:
  trialartifactory.jfrog.io:
    auth:
      username: "username"
      password: "password"

pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: busybox
  namespace: default
spec:
  containers:
  - image: registry.example.com/rancher/busybox
    command:
      - sleep
      - "3600"
    imagePullPolicy: IfNotPresent
    name: busybox
  restartPolicy: Always

k3s -v
k3s version v1.31.3+k3s-6e6af988 (6e6af988)

$ kubectl get pods
NAME      READY   STATUS    RESTARTS   AGE
busybox   1/1     Running   0          21s

$ kubectl describe pod
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  15s   default-scheduler  Successfully assigned default/busybox to ip-172-31-1-109
  Normal  Pulling    15s   kubelet            Pulling image "registry.example.com/rancher/busybox"
  Normal  Pulled     13s   kubelet            Successfully pulled image "registry.example.com/rancher/busybox" in 2.695s (2.695s including waiting). Image size: 2224057 bytes.
  Normal  Created    13s   kubelet            Created container busybox
  Normal  Started    13s   kubelet            Started container busybox

Validated using commit id from release-1.30 branch
ubuntu@ip-172-31-1-109:~$ k3s -v
k3s version v1.30.7-rc2+k3s1 (00f90180)
go version go1.22.8
ubuntu@ip-172-31-1-109:~$ kubectl get pod
NAME      READY   STATUS    RESTARTS   AGE
busybox   1/1     Running   0          18s
ubuntu@ip-172-31-1-109:~$ kubectl describe pod
...
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  20s   default-scheduler  Successfully assigned default/busybox to ip-172-31-1-109
  Normal  Pulling    19s   kubelet            Pulling image "registry.example.com/rancher/busybox"
  Normal  Pulled     16s   kubelet            Successfully pulled image "registry.example.com/rancher/busybox" in 3.223s (3.223s including waiting). Image size: 2224057 bytes.
  Normal  Created    16s   kubelet            Created container busybox
  Normal  Started    16s   kubelet            Started container busybox

Validated using commit id from release-1.29 branch
ubuntu@ip-172-31-1-109:~$ k3s -v
k3s version v1.29.11-rc2+k3s1 (666b590a)
go version go1.22.8
ubuntu@ip-172-31-1-109:~$ kubectl get pod
NAME      READY   STATUS    RESTARTS   AGE
busybox   1/1     Running   0          8s
ubuntu@ip-172-31-1-109:~$ kubectl describe pod
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  13s   default-scheduler  Successfully assigned default/busybox to ip-172-31-1-109
  Normal  Pulling    12s   kubelet            Pulling image "registry.example.com/rancher/busybox"
  Normal  Pulled     9s    kubelet            Successfully pulled image "registry.example.com/rancher/busybox" in 3.479s (3.479s including waiting)
  Normal  Created    9s    kubelet            Created container busybox
  Normal  Started    9s    kubelet            Started container busybox


Missing note regarding serverless sql permission inheritance

https://docs.microsoft.com/en-us/azure/synapse-analytics/security/synapse-workspace-understand-what-role-you-need#tasks-and-required-roles
Task (I want to...)	Role (I need to be...)	Synapse RBAC permission/action
Run a SQL script on a serverless SQL pool	SQL permissions on the pool (granted automatically to a Synapse Administrator)	none
The SQL permissions on a serverless pool seem only to be granted automatically to Users & Groups that are Synapse administrator. It does not seem to work for Service Principals that are Synapse Administrator. I feel like this deserves a note at various places throughout the docs where this is implied to work for everything.

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

ID: cee8bd88-9e50-8192-60c0-70d40e36ca75
Version Independent ID: a75ec158-91e6-fbd9-006d-3cbd6a404561
Content: Understand the roles required to perform common tasks in Synapse - Azure Synapse Analytics
Content Source: articles/synapse-analytics/security/synapse-workspace-understand-what-role-you-need.md
Service: synapse-analytics
Sub-service: security
GitHub Login: @meenalsri
Microsoft Alias: mesrivas

Thanks for the feedback and bringing this to our notice . At this time we are reviewing the feedback and will update the document as appropriate .

#please-close


Edit pull request #304

I added med_pivot to quick_template.cpp in sorting algorithms.

[x] Read the contribution guidelines
[ ] Added unit tests (or unit tests have already been added)
[ ] Updated the Contents

This change is already reflected in #304, so no need to open a new pull request for it. Note that when you open a PR from your branch (AymanAzzam:master), any new commit on that branch will automatically be added to the PR.

thanks alxmjo. sorry for that, it's my first day to use pull requests.

No apology necessary. Just saving you some work. :-)


Add uniformity analysis to the compiler

Some developers are experiencing unexpected performance issues when they accidently access an array with non-uniform index.
The compiler can help analyze the code for potential performance issues linked with this and issue a performance warning for such cases. There should also be a way to allow the developer to silence the warning by clarifying their intend in code.
This can be implementing by propagating a __uniform tag in a data flow pass, much like how we handle differentiability.
The user can always clarify a use site with a __treat_as_uniform(x) wrapper to silence any warnings.

Moving back into Q1 per our chat in 3/5 bug scrub

Done in #3704.


Bug:ValueError: images do not match

It's really a great extension, but when I use the "ebsynth utility" script, I get a "Value Error: images do not match" error. Has anyone encountered this error before, and is there a solution?

@gastoncao
Thanks for the report.
I have tested running it with the "ebsynth utility" at the same time and did not encounter any errors.
If you could send me a detailed description of the error (Traceback), I may be able to determine the cause.
Also, the "images do not match" error is generally caused by the dimensions (width and height) of the image. This error may be able to be avoided by changing the dimensions of the images (video) you are using to a value divisible by 8, such as 512, 768, 1024, etc.

Thanks for your answer. The dimensions of the image was 720x1280, and there will be no errors when processing single images, so I don't think it's its problem.
The following is the backend error code, hoping to provide you with more accurate information
*** Error running postprocess: D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\face_editor_extension.py
Traceback (most recent call last):
File "D:\stable-diffusion-webui\modules\scripts.py", line 651, in postprocess
script.postprocess(p, processed, *script_args)
File "D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\face_editor_extension.py", line 53, in postprocess
ImageProcessor(WorkflowManager.get(option.workflow)).proc_images(o, res, option)
File "D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\use_cases\image_processor.py", line 62, in proc_images
proc = self.proc_image(p, option, image, res.infotexts[i], (res.width, res.height))
File "D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\use_cases\image_processor.py", line 176, in proc_image
proc_image = self.workflow.process(jobs, face, p, option)
File "D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\use_cases\workflow_manager.py", line 162, in process
image = face_processor.process(face, p, **params)
File "D:\stable-diffusion-webui\extensions\sd-face-editor\scripts\inferencers\img2img_face_processor.py", line 41, in process
proc = process_images(p)
File "D:\stable-diffusion-webui\modules\processing.py", line 732, in process_images
res = process_images_inner(p)
File "D:\stable-diffusion-webui\extensions\sd-webui-controlnet\scripts\batch_hijack.py", line 42, in processing_process_images_hijack
return getattr(processing, '__controlnet_original_process_images_inner')(p, *args, **kwargs)
File "D:\stable-diffusion-webui\modules\processing.py", line 803, in process_images_inner
p.init(p.all_prompts, p.all_seeds, p.all_subseeds)
File "D:\stable-diffusion-webui\modules\processing.py", line 1455, in init
image_masked.paste(image.convert("RGBA").convert("RGBa"), mask=ImageOps.invert(self.mask_for_overlay.convert('L')))
File "D:\stable-diffusion-webui\venv\lib\site-packages\PIL\Image.py", line 1732, in paste
self.im.paste(im, box, mask.im)
ValueError: images do not match

thank you very much indeed!

Thanks for the report.
I have investigated the conditions under which the "images do not match" error occurs when using the "ebsynth utility" and found that this error occurs when the dimensions of the images in the video_mask folder differs from the dimensions of the images in the video_key folder. In this case, the same error occurs even if Face Editor is disabled. If this is the case for you, then it is not a problem with the Face Editor, but with the "ebsynth utility".
If the above does not apply to you, could you please provide more detailed information on the operating procedures and settings of ebsynth, ControlNet, and Face Editor at the time the error occurred? If I can reproduce the same error in my environment based on that information, We will have a better chance of solving this problem.


Explore Locality Preserving Projection for scatterpoints

See post by Jake VanderPlas:
http://nbviewer.jupyter.org/github/jakevdp/lpproj/blob/master/Example.ipynb

Jake is on fire these days regarding unsupervised learning methods!
http://nbviewer.jupyter.org/github/jakevdp/wpca/blob/master/WPCA-Example.ipynb


Change dnd status and post remind tomorrow to next morning

Summary
This PR changes the timers in the dnd timer and post reminder modals to use "next day 8 am" instead of "24hrs from now" when selecting Tomorrow as the option since that would be a more common use case for these types if timers (i.e. don't bug me with notifications until my next workday starts or send me the reminder at the beginning of my next work day).
Not sure if we actually need release notes for this but added some just in case.
Screenshots

before
after

Release Note
Changed the time for tomorrow in the dnd timer and post reminder to refer to the next day 8 am instead of 24hrs from the time of activation.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.

another side note, but that's more for the webapp team I guess is we should consider moving the "calculations" for the tomorrow field somewhere central in case we refer to this again in the future as this is probably something that could be easily reused :)

@calebroseland added all the changes you requested and also regenerated the snapshot.

Sorry @svelle, I forgot to notice the need for minute-zeroing—we'll probably want that. Otherwise looks good to go!

done! and also updated the snapshots again

Hello there! Could you please open the PR in the mattermost-server as part of the monorepo? I will be closing this PR for now. Thank you very much for your understanding and cooperation in this matter.


chore: migrate to latest node version

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 97.22%. Comparing base (9543cd5) to head (03937aa).

Additional details and impacted files
@@           Coverage Diff           @@
##             next      #37   +/-   ##
=======================================
  Coverage   97.22%   97.22%
=======================================
  Files           2        2
  Lines          72       72
  Branches        7        7
=======================================
  Hits           70       70
  Misses          2        2

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


Chore: Minor script refactor.

Notes:

Unwind unnecessary window alias
Abstract script append logic to function.

Should minorly enhance compression.
/cc @exogen @aisapatino

LGTM! :+1:


refactor decorator into a dataclass

Maybe it's a bit unnecessary, but I think that by converting the decorator into a class it will be easier to extend the functionality and keep it simpler. Also, we gain autocompletion on our IDEs.
Also, I've separated each validation in it's own method

This is so nice, thank you!
I think people use this with 3.7. What do you think about replacing the use of the walrus operator?


Documentation on CLI constants like CRAFT_APP_PATH

Maybe i'm missing something, but how can i set the CRAFT_APP_PATH constant?
I'm installing craft through composer, so the default location is different.
The schematic CLI suggests that it can be set in the following line:
defined('CRAFT_APP_PATH') || define('CRAFT_APP_PATH', CRAFT_BASE_PATH.'app/');

Unfortunately you can't at this time, CRAFT_APP_PATH is a constant which needs to be set in the php script. You'd have to write a wrapper to set the constant before running schematic.
We'll work on making CRAFT_BASE_PATH into an environment variable.

Fixed in 3.2.0


Generic solution to integral numbers being signed

Threshold operation gets tripped up by this.
Since high values are negative.

Finished first working solution with unit test and used it threshold operation.
Described https://github.com/sami-badawi/shapelogic-scala/wiki/Priority-of-Implicit-Scope


Command line arguments

add command line arguments for faster use.
example:
python snipe.py name_to_snipe

btw I did this in #6, so you can probably close it :)

Yup! Closing now.


add ttf-label support.

Maybe I shoul check code from the stb-font first.
we have partially to support render an single text, but not a string.
we need finish this feature.

first version supported by wenq1, coool


Incorrect unit test paths in side panel when using both -s and -t parameters

Type: Bug
Behaviour
Expected vs. Actual
Expected: During unit test discovery with parameters -s and -t, all tests are found. The path to every file is correct, and all tests are available to run from the side panel. The Go to test button works properly.
Actual: During unit test discovery, all tests are found and able to run, but the paths to all tests are incorrect. In every path, there is an additional folder that doesn't exist.
Steps to reproduce:

Create the project with the following file hierarchy:

├── app
│   ├── src
│   │   ├── __init__.py
│   │   └── main.py
│   └── tests
│       ├── __init__.py
│       └── unit
│           ├── __init__.py
│           └── test_main.py
└── docs

Add the following code to the files main.py and test_main.py.

File main.py:
class Main:
    pass

File main.py:
import unittest

from src.main import Main

class TestMain(unittest.TestCase):
    def test_main(self):
        Main()

Configure .vscode/settings.json

{
    "python.testing.unittestArgs": [
        "-v",
        "-s",
        "./app/tests",
        "-p",
        "test_*.py",
        "-t",
        "./app",
    ],
    "python.testing.unittestEnabled": true,
}

Look at the side panel. It will look like:

├── tests
│   ├── tests
│   │   ├── unit
│   │   │   ├── test_main.py

As you see there are 2 folders tests in the side panel hierarchy, but in fact, there is only one folder named test. If you try to run the test test_main.py, it will run okay. However, if you try to press the Go to the test button, you will get an error: The editor could not be opened because the file was not found.

Meanwhile, the console unit discovery command with exact the same settings works properly:

python -m unittest discover -v -s ./app/tests -p test_*.py -t ./app
Ran 1 test in 0.000s
OK

Diagnostic data

Python version (& distribution if applicable, e.g. Anaconda): 3.11.2
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Venv
Value of the python.languageServer setting: Default

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

2023-05-18 12:23:36.915 [info] > ./.venv/bin/python ~/.vscode-server/extensions/ms-python.python-2023.8.0/pythonFiles/testing_tools/unittest_discovery.py ./app/tests test_*.py ./app
2023-05-18 12:23:36.915 [info] cwd: .

User Settings

languageServer: "Pylance"

testing
• unittestArgs: [
        "-v",
        "-s",
        "./app/tests",
        "-p",
        "test_*.py",
        "-t",
        "./app",
    ]
• unittestEnabled: true

Extension version: 2023.8.0
VS Code version: Code 1.78.2 (b3e4e68a0bc097f0ae7907b217c1119af9e03435, 2023-05-10T14:39:26.248Z)
OS version: Windows_NT x64 10.0.22621
Modes:
Sandboxed: No
Remote OS version: Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2
Remote OS version: Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

System Info

Item
Value

CPUs
AMD Ryzen 7 6800H with Radeon Graphics          (16 x 3194)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
13.69GB (1.29GB free)

Process Argv
--crash-reporter-id 66d79bf3-db91-4df3-a9cb-2b8b3d209253

Screen Reader
no

VM
0%

Item
Value

Remote
WSL: Ubuntu

OS
Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

CPUs
AMD Ryzen 7 6800H with Radeon Graphics (16 x 3193)

Memory (System)
6.62GB (3.10GB free)

VM
0%

Item
Value

Remote
WSL: Ubuntu

OS
Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

CPUs
AMD Ryzen 7 6800H with Radeon Graphics (16 x 3193)

Memory (System)
6.62GB (3.10GB free)

VM
0%

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vslsvsres303:30308271
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdf:30486550
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
vscccc:30610679
2e4cg342:30602488
pyind779:30671433
f6dab269:30613381
pythonsymbol12:30671437
showlangstatbar:30737416
azdwalk:30721579
pythonms35:30701012
pythonfmttext:30731395
pythoncmv:30739700
fixhidewlkth:30730051
hidesbindicator:30730055
pythongtdpath:30739704

Hi! Yes, I am definitely able to replicate this. We are working on a rewrite of how testing works in vscode and I just tested and it is a problem in our future infrastructure too. Thank you for catching this!
The problem occurs because the arg -s ./app/tests/ which makes the root node of the test search tests. The path to the actual test is something like /tests/unit/test_actual.py when it is discovered by unittest. This path is split and for each folder a test node is created to be displayed [tests, unit, test_actual]. This created the double tests node since it is both the root and in the test path.
Another example is changing it to -s ./app/tests/unit/. When this is run, it layers even worse:

@karthiknadig which is the best way to display tests in the case that the test directory path is not the root of the workspace?
A. generate up to the root of the workspace so the test UI would be
workspace/app/tests/unit/test_actual.py
B. generate up to the directory path as displayed in the test args
unit/test_actual.py if -s ./app/tests/unit/
Thanks!

A. is what i would prefer. Thin a case where there are multiple test directories

Are there minimal repro steps to replicate this?


dataset wavefile format - WARNING: Audio type not supported

Number of files to be synthesized: 60000
WARNING: Audio type not supported
Traceback (most recent call last):
File "noisyspeech_synthesizer_singleprocess.py", line 351, in
main_body()
File "noisyspeech_synthesizer_singleprocess.py", line 323, in main_body
noise_source_files, noise_clipped_files, noise_low_activity_files = main_gen(params)
File "noisyspeech_synthesizer_singleprocess.py", line 155, in main_gen
gen_audio(True, params, clean_index)
File "noisyspeech_synthesizer_singleprocess.py", line 119, in gen_audio
build_audio(is_clean, params, index, audio_samples_length)
File "noisyspeech_synthesizer_singleprocess.py", line 69, in build_audio
input_audio, fs_input = audioread(source_files[idx])
File "/home/stuart/sagar/DNS-Challenge/audiolib.py", line 45, in audioread
if len(audio.shape) == 1:  # mono
UnboundLocalError: local variable 'audio' referenced before assignment
the wav files are in audio x-wav format. Seems they dont have header. Do we have to reformat this or downloading failure?
Any support is appreciated
Thanks in advance

Hey @raikarsagar did you resolve this somehow?

Hey @raikarsagar did you resolve this somehow?

issue was resolved after downloading the audio files properly, git lfs has to be used

issue was resolved after downloading the audio files properly, git lfs has to be used


Adds Django 3.0 support

Hi, this PR adds Django 3.0 support. from django.contrib.staticfiles.templatetags.staticfiles import static has changed it location in Django 3.0 to from django.templatetags.static import static. This PR supports both Django 2.x and 3.x

Thanks for this PR! Will aim to look at it next week. Any idea why tests are failing on it?

This is flake 8 wasn't happy about a whitespace character, fixed!


vex.close()/vex.closeAll() fires as cancel

Hi, this is my current situation:
The page shows the vex modal and informs the user about the remote changes.
"Ok": keeps the changes, updates the local cache.
"Cancel": overrides the remote changes with my local cache.
If changes increase but user doesn't click the "ok/cancel" button the dialog box must be closed and the new one have to be showed with the new changes.
I tried the vex.close() function but the "cancel" callback fires, causing trouble.
I think that is not the correct way to close the dialog, is it?
How i have to proceed?
I use vex version 2.3.4

Hello, in the latest versions of vex there is one callback, callback, which indicates if the dialog was OK'd or cancelled. Please upgrade and thank you for using vex!


Show Address on Service Card

Show address of the service on service cards in all services page.

Address information was added to Service card.


add Coast Community College District domain

@rebserra I am sorry, the domain cccd.edu is blacklisted because the school allows to register an email address there even if you are not a student of the school. If you are the student of this school, please apply with official document (OFFICIAL DOCUMENT tab at https://www.jetbrains.com/shop/eform/students).


postgres: doc: Fix markup for attribute name and path

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

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

If you look at the current rendered markup, it looks broken. The anker is not rendered correctly in the snippet I changed.

Hm, I have to double check this later on.

Yep, for me this does not render:

Firefox on NixOS stable.

I just look at it here: https://github.com/NixOS/nixpkgs/blob/aa629d9877cdeac2638223c8e75936657a590647/nixos/modules/services/databases/postgresql.md#L4


Add Neon provider

Description
Hello, Pulumi team! This PR adds the Neon provider package to the Pulumi Registry. The provider will enable users to provision Neon resources, e.g., project, database, branch etc. It's the initial release which only supports minimal functionality to provision the project resource.
Adding a new package?
If this pull request adds a new package:

[x] The package's schema URL in this PR is correct.
[x] The package metadata file, if present, contains:

[x] a supported category (Database).
[x] a valid plugin download URL. See Publish Your Package.
[x] a description that explains what the package does.
[x] a valid logo URL that points to a PNG whose dimensions conform to the others in this repo (e.g., 100x100).

[x] The package repo contains an Overview doc (/docs/_index.md) that includes:

[x] a brief explanation of what the package is and what it does.
[x] at least one representative example in all supported languages.
[x] a front-matter property for the layout set to package.

[x] The package repo contains an Installation and Configuration doc (/docs/installation-configuration.md) that includes:

[ ] links to SDKs in all supported languages.
[x] a copyable command for installing the resource plugin if necessary.
[x] an example of configuring the provider with pulumi config set.
[x] an example of configuring the provider with environment variables.

[ ] The repository has:

[ ] a version tag prefixed with v that corresponds with a valid GitHub release and published package SDKs

[ ] A CODEOWNER has reviewed the PR.
[ ] A member of the @pulumi/docs team has reviewed all documentation.

Thanks for your contribution @kislerdm! A couple notes/questions:

Is this an official effort of Neon? and if so who will be the primary maintainer contact? I noted a reference to them sponsoring the terraform provider.
We do require SDKs to be published in all the language package managers (npm, pypi, nuget) and working examples documented for each before we can publish to our registry.

Hi @kislerdm, thank you for opening this pull request!
Adding to @mjeffryes - please ensure you have both an installation-configuration.md as well as an _index.md file in your docs/ folder, at least until https://github.com/pulumi/registry/issues/6191 is implemented.
Please let us know if you need any assistance. 🙇♀

@mjeffryes @guineveresaenger Hello! Thank you for your prompt replies.

Is this an official effort of Neon? and if so who will be the primary maintainer contact?

It's the community-driven provider with me as the main contact person.
I'm the author and core maintainer of the Neon terraform provider. Many Neon users and terraform community members indicated strong interest in Pulumi provider as well, so here we are 😀

We do require SDKs to be published in all the language package managers (npm, pypi, nuget) and working examples documented for each before we can publish to our registry.

Would it be possible for initial release to include SDKs only for the following technologies  typescript, python, go? The motivation: to cover the technologies with the most demand to acquire first feedback. Thanks for understanding!

please ensure you have both an installation-configuration.md as well as an _index.md file in your docs/ folder, at least until #6191 is implemented.

@guineveresaenger could you please advise: is it OK for both pages to have identical content? I noticed that it's the case for some providers, e.g., aivan. The motivation: get the initial release publish ASAP without overthinking basic documentation to gain adoption momentum and collect feedback.
Thank you for your help!

@kislerdm - we really truly just check for existence of each page, so either a placeholder or identical content is absolutely fine. 👍 Just don't want your docs to fail. :)
I notice that you've implemented a Pulumi native provider. Just in case you weren't aware, if a terraform provider already exists, it is also possible to "bridge" the existing terraform provider into a Pulumi provider using the Pulumi Terraform Bridge.
You'd want to look at https://github.com/pulumi/pulumi-tf-provider-boilerplate for the expected repo structure.
That way you get two providers but need to write features to only one of them.

@guineveresaenger thank you for the reply!

we really truly just check for existence of each page, so either a placeholder or identical content is absolutely fine. 👍 Just don't want your docs to fail. :)

Cool, I'll add the missing page identically to the "_index.md" then for now.

I notice that you've implemented a Pulumi native provider. Just in case you weren't aware, if a terraform provider already exists, it is also possible to "bridge"...

I made the decision to develop a native provider to avoid avoidable design complexity and decouple Pulumi provider from terraform to enable community for independent development. Would you recommend building Pulumi provider as a proxy to terraform provider instead? Could you maybe share pro/cons from your experience? Thanks!

@kislerdm

I'm the author and core maintainer of the Neon terraform provider. Many Neon users and terraform community members indicated strong interest in Pulumi provider as well, so here we are 😀

That's great to hear!

Would it be possible for initial release to include SDKs only for the following technologies: typescript, python, go? The motivation: to cover the technologies with the most demand to acquire first feedback. Thanks for understanding!

Pulumi users will absolutely be able to use this provider without dotnet support, we just won't be able to list it in our registry until packages are available in all our core languages. (We realize this is a bit of a pain as a provider author; we're trying to figure out how we can make it less of a burden.)

Pulumi users will absolutely be able to use this provider without dotnet support, we just won't be able to list it in our registry until packages are available in all our core languages.

@mjeffryes thanks for clarification! I'll add the SDKs for missing languages and update the PR checklist once it's done.

@mjeffryes Unfortunately, there seem to be a blocker for dotnet, see the issue. I suspect that other provider developers may face it as well.

@kislerdm @mjeffryes unfortunately when .NET SDK generator picks names for SDK elements it may occasionally conflict (as is the case with pulumi/pulumi#17826 indeed). This is highly unfortunate indeed, but a comprehensive fix for this is very expensive. As the team maintaining providers we are able to work around these issues by customizing the names picked for SDK elements by hand to avoid the conflict. I've sketched out some notes in the attached issue.
Do you think a workaround can also be applicable to the neon provider or the specific details of Neon make it harder than what we have in 1826? If you could provide a few more specifics and a repro we could take a look 🙏

I think this is very reasonable, Provider is indeed one of those essentially reserved keywords in Pulumi, so if you have a namespace called "provider" it makes sense to rename it to something else. Hope this works out end to end!


Results on MPII test dataset

Hi, thanks for your great work!
We would cite your paper, could you give me the result of your model on MPII test dataset?

Hi,
We do not submit the results of the MPII test set to the author of MPII dataset, so we don't have the performance on the MPII test set.
You can use the pre-trained model to generated the results on the MPII test set and submit them to the author of the MPII dataset to obtain the performance.


Fix README.md (Getting started commands)

Hello,
Thanks for the project!
I tried to run locally, and had to make those changes to have it running on Ubuntu 22.04.
I thought I'll make a PR to fix the getting started instructions.

Hey! Thanks for contributing. Indeed i forgot to add /api/ to the path. Thanks for spotting it!
But docker-compose and docker compose are not the same command (super confusing I know) and docker-compose is actually going to be deprecated soon.
If you revert this specific change I'll merge the PR. Thanks!

Oh didn't know the diff between compose v1 and v2, thanks for the link :) (I guess i'm still using v1 locally)
Cool, i'll revert docker compose without the dash.

Thanks for contributing !


Projects: Add projects to team index

Summary
Users will be able to add projects to their teams page to allow for quick access. This aligns with the current workflow of adding a project for quick access to repositories.

Intended Outcome
Users will be able to curate the set of projects that should be associated with a team.
By enabling projects to be referenced from the team page, users can easily find and review the full set of projects that may be important for their team.
By adding the project to the team's quick access page, it will also automatically add the team to the project with read permissions (if they don't already have read permissions), thereby ensuring all teammates have basic permissions needed to access relevant projects.
How will it work?
To add a quick access to the projects, users will navigate to their team's page and then to the Projects tab. From there, they'll select Add project, search for the appropriate project, and select it to add it to the Quick Access list.
By adding a project in this view, we will also automatically add read permissions for the team to access the project. Because adding a project updates permissions, only users with Admin permissions will be able to add a project to the team's quick access page.

🚢 This has shipped to dotcom: https://github.blog/changelog/2022-09-27-the-new-github-issues-september-27th-update/. Leaving open to track the GHES release.

This went out with GHES 3.9. Closing as complete.


Unwanted paths in console

Issue Type: Feature Request
When using integrated console, VS Code shows unwanted paths in the console that is so irritating. Every time when I want to see only output I have to scroll lot.
VS Code version: Code 1.59.1 (3866c3553be8b268c8a7f8c0482c0c0177aa8bfa, 2021-08-19T11:56:46.957Z)
OS version: Windows_NT x64 10.0.19043
Restricted Mode: No

/gifPlease

With new update now the issue is resolve.


Add a License

This would provide certainty for developers who want to use the software in their projects. I personally use Apache-2.0 for all my projects. MIT, BSD-3-Clause, or GPL-3 are other common choices. Here's a table of their tradeoffs: https://choosealicense.com/appendix/

Thanks for mentioning this, now this repo behind Apahce-2.0 License


DataGrid : feature to allow cell to render a RenderFragment

Description
This PR adds the option to use RenderFragment to format a property cell using PropertyColumn.
Before DataGrid didn't allow user to use it because it was render as string so the result was Microsoft.AspNetCore.Components.RenderFragment.
How Has This Been Tested?
There is a new unit test DataGridPropertyColumn_ShouldRenderFragment checking the RenderFragment is display.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] The PR is submitted to the correct branch (dev).
[x] My code follows the code style of this project.
[x] I've added relevant tests.

Does anyone review this ?

I am not sure this is necessary, since you can already customise the individual cells with you own components by using the CellTemplate.

Waiting author's feedback on why can't he use CellTemplate and a snippet on trymudblazor that demonstrated his issue with it.

@ScarletKuro @tjscience In my case, i need to add business rules on my columns and I don't want to do it on each grid with custom template. It would be too complicated to maintain. I want to make it generic using PropertyColumn. One of the rules is to limit the size of the text to display so i did the code below but it's not rendering well
protected override object? CellContent(T item)
	{
		var value = PropertyFunc(item);

		return value switch
		{
			string stringValue => stringValue.Length > MaxCharactersToDisplay ? CreateEllipsis(stringValue) : value,
			_                  => value
		};
	}

	private RenderFragment CreateEllipsis(string value)
	{
		return builder =>
		{
			builder.OpenComponent<MudTooltip>(0);
			builder.AddAttribute(1, nameof(MudTooltip.Text), value);
			builder.AddContent(2, $"{value[..MaxCharactersToDisplay]} [...]");
			builder.CloseComponent();
		};
	}

@ScarletKuro @tjscience @dennisrahmen In my case, i need to add business rules on my columns and i don't want to do it on each grid with custom template. It would be too complicated to maintain. I want to make it generic for all my grids using a custom PropertyColumn.

I haven't personally tested this, but have you considered inheriting from Column and dynamically assigning a custom CellTemplate within the OnInitialized{Async} method in the code-behind, integrating it with your specific business logic? Here's a pseudocode representation:
public class MyCustomPropertyColumn<T, TProperty> : Column<T, TProperty>
{
    protected override void OnInitialized()
    {
        CellTemplate = builder =>
        {
            // Custom rendering logic here
            // ...
        };
    }
}

Theoretically, the DataGrid should recognize that the RenderFragment is not null and invoke it.

I tried to create a custom column with CellTemplate but the order of defined columns is not respected

I don't think you are suppose to make column as a wrapped of PropertyColumn component, it won't be registered correctly in the datagrid, therefore I would suggest trying on what I have described above by inheriting the Colum / PropertyColumn and assign the CellTemplate.

I haven't personally tested this, but have you considered inheriting from Column and dynamically assigning a custom CellTemplate within the OnInitialized{Async} method in the code-behind, integrating it with your specific business logic? Here's a pseudocode representation:
public class MyCustomPropertyColumn<T, TProperty> : Column<T, TProperty>
{
    protected override void OnInitialized()
    {
        CellTemplate = builder =>
        {
            // Custom rendering logic here
            // ...
        };
    }
}

I tried your suggestion but it's not working aswell, may be i missed something, but the column is not rendered.
https://try.mudblazor.com/snippet/wYcnYsGSzPeNnCex

I tried and it worked for me: https://try.mudblazor.com/snippet/mYwHECmyflVjSGFT tho it's a super simple example and I used html tags, but I believe it should work with an builder as well, I will look your code and comment later.

I tried and it worked for me: https://try.mudblazor.com/snippet/mYwHECmyflVjSGFT tho it's a super simple example and I used html tags, but I believe it should work with an builder as well, I will look your code and comment later.

This also works: https://github.com/MudBlazor/MudBlazor/pull/7292#issuecomment-1691787181
but please, be careful with this. You need to use the correct magic __builder for it in order to be rendered (https://github.com/dotnet/aspnetcore/issues/37907), my above example is simper because it doesn't require the builder but you can do that only in .razor files: https://learn.microsoft.com/en-us/aspnet/core/blazor/performance?view=aspnetcore-7.0#define-reusable-renderfragments-in-code

https://try.mudblazor.com/snippet/cYGRuWGSpvikRArL

With your example: https://try.mudblazor.com/snippet/wEQnEimIzSYGKcVJ
I'm actually not sure if using the "builder" instead of "__builder2" will work correctly in all cases.
Also, please notice that MudText doesn't have any Text property, and your line builder.AddAttribute(1, nameof(MudTooltip.Text), cellValue); will never do anything.

I tried and it worked for me: https://try.mudblazor.com/snippet/mYwHECmyflVjSGFT tho it's a super simple example and I used html tags, but I believe it should work with an builder as well, I will look your code and comment later.

This also works: https://try.mudblazor.com/snippet/cYmxuCcoTdvmzUbJ But please, be careful with this. You need to use the correct magic __builder for it in order to be rendered (dotnet/aspnetcore#37907), my above example is simper because it doesn't require the builder but you can do that only in .razor files: https://learn.microsoft.com/en-us/aspnet/core/blazor/performance?view=aspnetcore-7.0#define-reusable-renderfragments-in-code


Show URL in scraper output

Only for Python scrapers for a moment.
Multiple Downloading could be present in the output of the scraper,
so capture them as a list in the parser.
Closes: https://github.com/openZH/covid_19/issues/169

Because I messed up branches, please only merge after https://github.com/openZH/covid_19/pull/190
Will try better next time to not include changes from other branches.
Thanks.


feat: Add connection properties to event timer

What does this change?
Adds information about a client's connection (bandwidth estimate and effective type) to the EventTimer object.
The feature relies on  Navigator.connection which is not yet supported by Firefox, Safari, or Internet Explorer.
Why?
To supplement the performance data already being collected by EventTimer.

@mxdvl Is there somewhere where we'll need to use a new EventTimer. getProperties method immediately or do you think we should implement it in anticipation of needing it later?
For the moment can we get away with accessing the attributes like window.guardian.commercialTimer.properties.downlink  ?


404 error on page of successful deployment React Build

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting questions.
[X] I have removed any sensitive information from my code snippets and submission.

App Id
https://us-east-2.console.aws.amazon.com/amplify/home?region=us-east-2#/d19pco3rnva3k6
AWS Region
us-east-2
Amplify Hosting feature
Deployments
Question
I am struggling to understand why the application works on the local server instance and then suddenly has a 404 error on deployment. The build settings have been set to "build" directory as stated in other forums (https://github.com/aws-amplify/amplify-hosting/issues/3430) . Is there something I need to do in our build to get the front and back end to work congruently for Amplify to understand?

Hey @Geckogiggles 👋 , thanks for reaching out to us!
It looks like you've mentioned a couple of Amplify app id's in this thread:

d19pco3rnva3k6
d1ojzztvjy3ply

This issue seems to be occurring for the Amplify app d1ojzztvjy3ply because we are unable to detect the index.html file within your deploy folder i.e. the baseDirectory within the amplify.yml file.
You will need to set the baseDirectory: build within the amplify.yml file and then redeploy your app.

@Geckogiggles 👋🏽 you have a typo in your build settings.
According to the screenshot, baseDirectory is misspelled. You have baseDirector: build set. Please replace that with baseDirectory: build and redeploy your app.


Pull in 'schema move' object store fix

The object store also now contains some updates for compatibility with the Java binding, but as far as I can tell those don't affect the user-facing functionality of the Cocoa binding in any way.

🤦♂


ask

I have 6 minutes to replenish energy but here it is still 10 minutes

It's timeout 10 minutes it waiting for recharge, it's constant.
You can change yourself in code


Add support for Chocolatey

Closes #20380
TODO:

~[x] Generate msi files for scala (issue: #20378) (Will be done in another PR, but we should already know the format of the URL)~
[x] Change the worflow to automatically publish to Chocolatey on each stable release (publish-chocolatey.yml)
[x] Add icon (logo.ico) file

[test_chocolatey]

@hamzaremmal Should this PR be backported to LTS 3.3.5?

@prolativ Would be good to have it yes. If the backport is hard to do, I can open a PR that targets LTS 3.3x

@hamzaremmal How should I adapt the backport for LTS?
Is this only about replacing 3.6.0 (and 3.6.0-local?) with 3.5.5? Or anything else?

At this point direct backport is not possible - we'd need to adjust it to pre-3.5 building of artifacts. It's assuming usage of universal packager. Also Scala 3.3 LTS also would not have a native runners.
I'm moving it to the back of backport queue and would handle if we'd have a spare time


Multiple running SparkContexts detected in the same JVM!

I am migrating from Spark 1.3.0 to Spark 2.1.1
Earlier I was able to create SparkContext on spark 1.3.0  in Java using the following:
SparkConf conf = new SparkConf().setAppName(dsp.getAppName()).setMaster("local").set("spark.driver.allowMultipleContexts", "true");
JavaSparkContext java_sc = new JavaSparkContext(conf);
However I get error "Multiple running SparkContexts detected in the same JVM!" and " org.apache.spark.SparkException: Failed to get broadcast_0_piece0 of broadcast_0"
Can someone help me out?

we can't use multiple context


fix(google): amogus

🔧 What does this fix? 🔧
when the imposter is sus
🗒 Checklist 🗒

[x] I have read and followed Catppuccin's contributing guidelines.
[x] I have updated the version appropriately in the ==UserStyle== header of the catppuccin.user.css file.

@isabelroses


[JAWS] Keybinding entry in actions page should read out key chord

Windows Terminal version
1.16.2642
Windows build number
No response
Other Software
JAWS
Steps to reproduce

Open terminal
Open settings UI > actions
tab to "close pane"

Expected Behavior
JAWS should read "close pane, ctrl+w"
Actual Behavior
JAWS reads "close pane"

This is a regression from 1.15.2713

This page didn't change between 1.15 and 1.16...!
% git diff origin/release-1.15:src/cascadia/TerminalSettingsEditor/Actions.xaml origin/release-1.16:src/cascadia/TerminalSettingsEditor/Actions.xaml
<no output>
% git diff origin/release-1.15:src/cascadia/TerminalSettingsEditor/Actions.cpp origin/release-1.16:src/cascadia/TerminalSettingsEditor/Actions.cpp
<no output>

Found out that this issue repros in the WinUI 2 and WinUI 3 gallery. This is either a bug on WinUI or JAWS. Closing as such.

To make things even more confusing, the Terminal bug repros on JAWS 2022, but not on JAWS 2023. But the WinUI gallery bug repros regardless.


Validation Error When Placing Order with Zero Quantity

Summary: When placing an order by category in the Procurement module, reducing the quantity of an item to zero does not prevent the "Place Order" button from being clickable. Upon clicking, the system attempts to process an item with zero quantity, resulting in a validation error.
Steps to Reproduce:

Go to the Procurement section.

Select Order by Category.

Choose more than one item from the same category.

In the review order screen, reduce the quantity of one of the items to zero.

Click on Place Order.

Observe the validation error.

Expected Result: Items with zero quantity should be automatically removed from the order, and the system should not attempt to place the order with zero quantity items.
Actual Result: The "Place Order" button remains clickable, and when clicked, the system sends an item with zero quantity, causing a validation error.
Attachments:
Screenshot of the review order screen showing the zero-quantity item.
https://github.com/user-attachments/assets/bcc5f39c-3d27-4fce-9b02-4390ebb4927b
Environment:
Module: Procurement (Order by Category)
Browser: chrome
Severity: Low