Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Containers panel does not work anymore in v1.23.0 #3724

Closed
raphael-beck opened this issue Nov 29, 2022 · 31 comments · Fixed by #3743 or #3764
Closed

Containers panel does not work anymore in v1.23.0 #3724

raphael-beck opened this issue Nov 29, 2022 · 31 comments · Fixed by #3743 or #3764

Comments

@raphael-beck
Copy link

OS: Ubuntu 20

Repro steps:

Launch VS with extension v1.23.0

image

Expect:
Previous containers listed in panels

Actual:
Error displayed Error: Template parsing error::1:194:executing "" at <.State>: can't evaluate field State in type *formatter.containerContext

More Info:
I've uninstalled the extension multiple times then install the previous version (1.22.2) from VSIX and it works.

@bwateratmsft
Copy link
Contributor

@raphael-beck Can you share the output of the docker info command? I suspect you have an older version of Docker that lacks the the State property on containers (and the --format argument for docker context ls).

@bwateratmsft
Copy link
Contributor

To update Docker Engine you can follow these instructions, or alternatively install Docker Desktop for Linux.

@raphael-beck
Copy link
Author

raphael-beck commented Nov 29, 2022

@bwateratmsft here the output of the command

$ docker info
Containers: 6
Running: 0
Paused: 0
Stopped: 6
Images: 556
Server Version: 20.10.12
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: XXXX
Swarm: inactive
Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
Default Runtime: runc
Init Binary: docker-init
containerd version:
runc version:
init version:
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 5.15.0-53-generic
Operating System: Ubuntu 20.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 31.06GiB
Name: XXXXX
ID: XXXX
Docker Root Dir: /home/USER/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

@bwateratmsft
Copy link
Contributor

Sorry, I picked the wrong command. Can you share the output from docker version?

@raphael-beck
Copy link
Author

raphael-beck commented Nov 29, 2022

Sure, you could find below the output

$ docker version
Client:
Version: 18.06.3-ce
API version: 1.38
Go version: go1.10.4
Git commit: d7080c1
Built: Wed Feb 20 02:24:22 2019
OS/Arch: linux/amd64
Experimental: false

Server:
Engine:
Version: 20.10.12
API version: 1.41 (minimum version 1.12)
Go version: go1.16.2
Git commit: 20.10.12-0ubuntu2 20.04.1
Built: Thu Feb 10 15:03:35 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.5.9-0ubuntu1 20.04.5
GitCommit:
runc:
Version: 1.1.0-0ubuntu1 20.04.2
GitCommit:
docker-init:
Version: 0.19.0
GitCommit:

@bwateratmsft
Copy link
Contributor

Yeah, looks like that is relatively old. If possible I would update Docker Engine or use Docker Desktop for Linux. We're going to see if we can make the code a little more resilient to the missing field.

@raphael-beck
Copy link
Author

Indeed it is an old version but some IT policy of my company requires to have this version. In the meantime, having the code more resilient seems a great idea thank you.
Meanwhile, I use the version 1.22.2 of the extension which works perfectly.

@brainz80
Copy link

brainz80 commented Nov 29, 2022

I'm having the same issue with 1.23.

Here's my docker version:

Client:
 Cloud integration: v1.0.29
 Version:           20.10.21
 API version:       1.41
 Go version:        go1.18.7
 Git commit:        baeda1f
 Built:             Tue Oct 25 18:08:16 2022
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Desktop 4.14.1 (91661)
 Engine:
  Version:          20.10.21
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.7
  Git commit:       3056208
  Built:            Tue Oct 25 18:00:19 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.9
  GitCommit:        1c90a442489720eec95342e1789ee8a5e1b9536f
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Rolling back to 1.22.2 worked for me too

@bwateratmsft
Copy link
Contributor

@brainz80 is the error the same, or something different?

@brainz80
Copy link

My error is:

Failed to set up event listener: Unexpected token W in JSON at position 0

@bwateratmsft
Copy link
Contributor

Ok, that's something different. I opened #3725 for it.

@bwateratmsft bwateratmsft modified the milestones: 1.23.1, 1.24.0 Nov 29, 2022
@apastel
Copy link

apastel commented Nov 30, 2022

I'm having the same issue after updating to v1.23.0 of the Docker extension:

Failed to connect. Is Docker running?
Error: Template parsing error: template::1:194: executing "" at <.State>: can't evaluate field State in type *formatter.containerContext

It only works if I roll back to v1.22.2 of the extension. Before that I also tried uninstalling/re-installing the extension and uninstalling/re-installing Docker Engine with the latest available version on Ubuntu 20.04.

My docker version output after re-installing the latest Docker Engine available from repository for Ubuntu 20.04:

$ docker version
Client: Docker Engine - Community
 Version:           19.03.12
 API version:       1.40
 Go version:        go1.13.10
 Git commit:        48a66213fe
 Built:             Mon Jun 22 15:42:53 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          20.10.21
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.7
  Git commit:       3056208
  Built:            Tue Oct 25 18:00:04 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.10
  GitCommit:        770bd0108c32f3fb5c73ae1264f7e503fe7b2661
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

@xiphoid24
Copy link

I am in the situation as @raphael-beck. Our company policies prevent us from updating to a newer version of docker desktop.
Hopefully this can be fixed. For now we will just stay on the extension version 1.22.2.

docker version

Client: Docker Engine - Community
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46d9d
 Built:             Wed Sep 16 17:00:27 2020
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.13
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46d9d
  Built:            Wed Sep 16 17:07:04 2020
  OS/Arch:          linux/amd64
  Experimental:     true
 containerd:
  Version:          v1.3.7
  GitCommit:        8fba4e9a7d01810a393d5d25a3621dc101981175
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

@shashanksriva
Copy link

Issue is not fixed in 1.23.1 . Please check
image

@bwateratmsft
Copy link
Contributor

That is expected, we are working on that fix separately because it is significantly more complicated.

@bwateratmsft
Copy link
Contributor

A fix for this has been released in Docker extension version 1.23.2.

@shashanksriva
Copy link

image

Still unable to see the containers in containers panel. I even restarted the VS code.

@bwateratmsft
Copy link
Contributor

@shashanksriva can you share the output of this command? docker container ls --no-trunc --all --format "{{ json . }}"

@shashanksriva
Copy link

shashanksriva commented Dec 12, 2022

@bwateratmsft My apologies cannot share that as it is on a client server.
Docker version that we have is: [~]$ docker --version
Docker version 19.03.5, build 633a0ea
Hope this helps.

I can still access containers with an older version(1.22.2) of extension though.

@bwateratmsft
Copy link
Contributor

bwateratmsft commented Dec 12, 2022

Are you able to update Docker on that server? That version is over three years old at this point. There are likely important security fixes missing.

@danegsta we could try installing that version and seeing what's missing in the JSON. If I had to guess, the State field isn't present in the JSON and may be tripping up the parsing. I wonder if we can make it optional or try to guess it from other available information.

@shashanksriva
Copy link

That would be up to the larger team. I can surely discuss that. Thank you for the pointer.

@apastel
Copy link

apastel commented Dec 12, 2022

After updating to v1.23.2 of the extension, I have the same issue as @shashanksriva :

Failed to connect. Is Docker running?
Error: Invalid container JSON.

docker -v shows Docker version 19.03.12, build 48a66213fe. This is the latest stable release available from the download.docker.com repo on Ubuntu focal.

@bwateratmsft
Copy link
Contributor

Ugh. I'm shocked Docker is leaving versions that out-of-date on an LTS Ubuntu release. I'm going to reopen this issue, since it seems likely that the only change in 1.23.2 is that the error message is different.

@BIAOXYZ
Copy link

BIAOXYZ commented Dec 13, 2022

Just met with the same issue yesterday and wait for a fix in the next release 😄

@brainz80
Copy link

Still getting Error: Invalid image name with latest 1.23.2 update. Docker version 20.10.21, build baeda1f.

Here's the output from docker container ls --no-trunc --all --format "{{ json . }}"

{"Command":"\"/docker-entrypoint.sh nginx -g 'daemon off;'\"","CreatedAt":"2022-12-07 17:39:45 +0200 EET","ID":"3be5b97fadf8ffad76e8155a72472083f88e9b62c402de2b758d6318771d7fe1","Image":"nuc:5000/aso-app-nginx","Labels":"com.docker.compose.container-number=1,desktop.docker.io/binds/0/SourceKind=hostFile,maintainer=NGINX Docker Maintainers \u003cdocker-maint@nginx.com\u003e,com.docker.compose.config-hash=d2959e71a587cc137a3b4275e8c5e6e5a5bf791f982947f9d3ebd131ecd29ecf,com.docker.compose.image=sha256:18dda35dc05e89cf962a477f80a96a070642c598e9d3b5afd5aa31b050e20ce3,com.docker.compose.oneoff=False,com.docker.compose.depends_on=aso-app-php:service_started,com.docker.compose.service=aso-app-nginx,com.docker.compose.project=development,com.docker.compose.project.config_files=D:\\Projects\\Docker\\nettix\\aso-app\\development\\docker-compose.yml,com.docker.compose.project.working_dir=D:\\Projects\\Docker\\nettix\\aso-app\\development,com.docker.compose.version=2.13.0,desktop.docker.io/binds/0/Source=D:\\Projects\\Docker\\nettix\\aso-app\\src,desktop.docker.io/binds/0/Target=/var/www/html","LocalVolumes":"0","Mounts":"/run/desktop/mnt/host/d/Projects/Docker/nettix/aso-app/src","Names":"aso-app-nginx","Networks":"development_default","Ports":"0.0.0.0:80-\u003e80/tcp","RunningFor":"5 days ago","Size":"1.09kB (virtual 259MB)","State":"running","Status":"Up 3 minutes"}
{"Command":"\"/usr/local/bin/start-up\"","CreatedAt":"2022-12-07 17:39:44 +0200 EET","ID":"76ef51f36cf96c064688f534999c4f11dfb878ee9c7045d8794d4523a9eaf165","Image":"nuc:5000/aso-xdebug:8.1","Labels":"com.docker.compose.oneoff=False,com.docker.compose.project.config_files=D:\\Projects\\Docker\\nettix\\aso-app\\development\\docker-compose.yml,com.docker.compose.version=2.13.0,desktop.docker.io/binds/0/SourceKind=hostFile,desktop.docker.io/binds/0/Target=/root/.aws,desktop.docker.io/binds/1/Source=D:\\Projects\\Docker\\nettix\\aso-app\\development\\docker\\aso-xdebug\\zzz-xxdebug.ini,desktop.docker.io/binds/1/SourceKind=hostFile,com.docker.compose.container-number=1,com.docker.compose.image=sha256:c9d5d03380da510de4a33cc4e7cb09dc7f8808ba2e942c33430a5b2411d557a9,com.docker.compose.project=development,com.docker.compose.project.working_dir=D:\\Projects\\Docker\\nettix\\aso-app\\development,desktop.docker.io/binds/2/Source=D:\\Projects\\Docker\\nettix\\aso-app\\logs\\xdebug,desktop.docker.io/binds/3/SourceKind=hostFile,com.docker.compose.config-hash=431dca13f6c174a19593a6eff27196756f079eecde2eacc7264e81fac4ef5189,com.docker.compose.depends_on=,desktop.docker.io/binds/0/Source=C:\\Users\\Mats\\.aws,desktop.docker.io/binds/2/Target=/logs/xdebug,desktop.docker.io/binds/3/Source=D:\\Projects\\Docker\\nettix\\aso-app\\src,desktop.docker.io/binds/3/Target=/var/www/html,com.docker.compose.service=aso-app-php,desktop.docker.io/binds/1/Target=/usr/local/etc/php/conf.d/zzz-xxdebug.ini,desktop.docker.io/binds/2/SourceKind=hostFile","LocalVolumes":"0","Mounts":"/run/desktop/mnt/host/d/Projects/Docker/nettix/aso-app/src,/run/desktop/mnt/host/d/Projects/Docker/nettix/aso-app/logs/xdebug,/run/desktop/mnt/host/c/Users/Mats/.aws,/run/desktop/mnt/host/d/Projects/Docker/nettix/aso-app/development/docker/aso-xdebug/zzz-xxdebug.ini","Names":"aso-xdebug","Networks":"development_default","Ports":"9000/tcp","RunningFor":"5 days ago","Size":"2.78MB (virtual 1.31GB)","State":"running","Status":"Up 3 minutes"}
{"Command":"\"/bin/sh -c 'echo Container started\\ntrap \\\"exit 0\\\" 15\\n\\nexec \\\"$@\\\"\\nwhile sleep 1 \u0026 wait $!; do :; done' -\"","CreatedAt":"2022-11-21 10:43:51 +0200 EET","ID":"6526d5cc47c726ee547d182997b32f4d098d7f7874516a9d38febeb2c713ef4e","Image":"vsc-vue-numeric-6168f5b295daf20260258fab913a7c0c","Labels":"devcontainer.local_folder=d:\\Projects\\GitHub\\vue-numeric,com.visualstudio.code.devcontainers.id=javascript-node,com.visualstudio.code.devcontainers.source=https://github.com/microsoft/vscode-dev-containers/,com.visualstudio.code.devcontainers.variant=12-buster,desktop.docker.io/mounts/0/Target=/workspaces/vue-numeric,devcontainer.metadata={\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\",\"pflannery.vscode-versionlens\",\"eamodio.gitlens\",\"mhutchie.git-graph\"],\"settings\":{}}},\"remoteUser\":\"node\"},version=0.203.4,com.visualstudio.code.devcontainers.release=v0.224.0,com.visualstudio.code.devcontainers.timestamp=Fri, 25 Feb 2022 10:41:45 GMT,desktop.docker.io/mounts/0/Source=d:\\Projects\\GitHub\\vue-numeric,desktop.docker.io/mounts/0/SourceKind=hostFile","LocalVolumes":"1","Mounts":"vscode,/run/desktop/mnt/host/d/Projects/GitHub/vue-numeric","Names":"vsc-vue-numeric-6168f5b295daf20260258fab913a7c0c","Networks":"bridge","Ports":"","RunningFor":"3 weeks ago","Size":"383MB (virtual 1.4GB)","State":"exited","Status":"Exited (0) 12 days ago"}
{"Command":"\"/bin/sh -c 'echo Container started\\ntrap \\\"exit 0\\\" 15\\n\\nexec \\\"$@\\\"\\nwhile sleep 1 \u0026 wait $!; do :; done' -\"","CreatedAt":"2022-11-16 11:10:27 +0200 EET","ID":"48d1abe1a90b24bec2ae3560b88689a8baca7ca7000b16bff7eff71ab39a0492","Image":"vsc-frequent-cron-static-3b5be349a954df20fc65dca7cca78fc7","Labels":"desktop.docker.io/mounts/0/Source=d:\\Projects\\GitHub\\frequent-cron-static,dev.containers.source=https://github.com/devcontainers/images,devcontainer.local_folder=d:\\Projects\\GitHub\\frequent-cron-static,dev.containers.timestamp=Wed, 26 Oct 2022 17:37:40 GMT,dev.containers.variant=bullseye,devcontainer.metadata=[ {\"id\":\"ghcr.io/devcontainers/features/common-utils:1\"}, {\"id\":\"ghcr.io/devcontainers/features/git:1\"}, {\"remoteUser\":\"vscode\"}, {\"customizations\":{\"vscode\":{\"extensions\":[\"eamodio.gitlens\",\"mhutchie.git-graph\",\"codezombiech.gitignore\"],\"settings\":{}}},\"remoteUser\":\"vscode\"} ],version=0.202.16,desktop.docker.io/mounts/0/SourceKind=hostFile,desktop.docker.io/mounts/0/Target=/workspaces/frequent-cron-static,dev.containers.id=base-debian,dev.containers.release=v0.2.20","LocalVolumes":"1","Mounts":"vscode,/run/desktop/mnt/host/d/Projects/GitHub/frequent-cron-static","Names":"vsc-frequent-cron-static-3b5be349a954df20fc65dca7cca78fc7","Networks":"bridge","Ports":"","RunningFor":"3 weeks ago","Size":"14.8MB (virtual 1.35GB)","State":"exited","Status":"Exited (0) 3 weeks ago"}
{"Command":"\"/bin/sh -c 'echo Container started\\ntrap \\\"exit 0\\\" 15\\n\\nexec \\\"$@\\\"\\nwhile sleep 1 \u0026 wait $!; do :; done' -\"","CreatedAt":"2022-11-16 09:50:45 +0200 EET","ID":"828057a2a235f60d6af1ddd22aeb5380d4e1a4976e466990cccbaedc557a3a2c","Image":"vsc-aso-leads-744d61626279691bb9844e9a8bec786b","Labels":"dev.containers.release=v0.2.20,dev.containers.source=https://github.com/devcontainers/images,devcontainer.metadata=[ {\"id\":\"ghcr.io/devcontainers/features/common-utils:1\"}, {\"id\":\"ghcr.io/devcontainers/features/node:1\",\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\"]}}}, {\"id\":\"ghcr.io/devcontainers/features/git:1\"}, {\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\"]}},\"remoteUser\":\"node\"}, {\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\",\"eamodio.gitlens\",\"mhutchie.git-graph\",\"pflannery.vscode-versionlens\"],\"settings\":{}}},\"remoteUser\":\"node\"} ],desktop.docker.io/mounts/0/SourceKind=hostFile,desktop.docker.io/mounts/0/Target=/workspaces/aso-leads,dev.containers.id=javascript-node,devcontainer.local_folder=d:\\Projects\\Docker\\nettix\\aso-leads,version=0.204.9,desktop.docker.io/mounts/0/Source=d:\\Projects\\Docker\\nettix\\aso-leads,dev.containers.timestamp=Wed, 26 Oct 2022 17:53:38 GMT,dev.containers.variant=16-bullseye","LocalVolumes":"1","Mounts":"vscode,/run/desktop/mnt/host/d/Projects/Docker/nettix/aso-leads","Names":"vsc-aso-leads-744d61626279691bb9844e9a8bec786b","Networks":"bridge","Ports":"","RunningFor":"3 weeks ago","Size":"163MB (virtual 1.41GB)","State":"exited","Status":"Exited (0) 3 weeks ago"}
{"Command":"\"/bin/sh -c 'echo Container started\\ntrap \\\"exit 0\\\" 15\\n\\nexec \\\"$@\\\"\\nwhile sleep 1 \u0026 wait $!; do :; done' -\"","CreatedAt":"2022-11-14 10:57:48 +0200 EET","ID":"33ca202fdeaaf8661b598738bd92392cdc96b05e0974c1ffa488d25cebedf59f","Image":"vsc-express-less-middleware-11f24802101985f9b54b044b62757fb7","Labels":"dev.containers.timestamp=Wed, 26 Oct 2022 17:53:38 GMT,dev.containers.variant=16-bullseye,devcontainer.local_folder=d:\\Projects\\GitHub\\express-less-middleware,desktop.docker.io/mounts/0/Source=d:\\Projects\\GitHub\\express-less-middleware,dev.containers.id=javascript-node,dev.containers.release=v0.2.20,devcontainer.metadata=[ {\"id\":\"ghcr.io/devcontainers/features/common-utils:1\"}, {\"id\":\"ghcr.io/devcontainers/features/node:1\",\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\"]}}}, {\"id\":\"ghcr.io/devcontainers/features/git:1\"}, {\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\"]}},\"remoteUser\":\"node\"}, {\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\",\"eamodio.gitlens\",\"mhutchie.git-graph\",\"pflannery.vscode-versionlens\"]}},\"remoteUser\":\"node\"} ],version=0.204.9,desktop.docker.io/mounts/0/SourceKind=hostFile,desktop.docker.io/mounts/0/Target=/workspaces/express-less-middleware,dev.containers.source=https://github.com/devcontainers/images","LocalVolumes":"1","Mounts":"vscode,/run/desktop/mnt/host/d/Projects/GitHub/express-less-middleware","Names":"vsc-express-less-middleware-11f24802101985f9b54b044b62757fb7","Networks":"bridge","Ports":"","RunningFor":"4 weeks ago","Size":"128MB (virtual 1.35GB)","State":"exited","Status":"Exited (0) 11 days ago"}

@bwateratmsft
Copy link
Contributor

@brainz80 we plan to fix that issue (#3752) in 1.23.3.

@danegsta
Copy link
Contributor

We've released a fix to better support older Docker engine/CLI versions in 1.23.3.

@andrewcrook
Copy link

andrewcrook commented Dec 24, 2022

@danegsta

1.23.3 didn't work with Podman (macOS 13.1) using it's Docker compatible interface.

Error: Invalid container JSON

I rolled back the VS extension to 1.22.2 and it works without issue.

image

I can open a new issue if you like, however, I wondered if it was related to the support of older Docker engine/CLI versions?

 > podman version 
Client:       Podman Engine
Version:      4.3.1
API Version:  4.3.1
Go Version:   go1.18.8
Built:        Wed Nov  9 20:43:58 2022
OS/Arch:      darwin/arm64

Server:       Podman Engine
Version:      4.3.1
API Version:  4.3.1
Go Version:   go1.19.2
Built:        Fri Nov 11 15:00:31 2022
OS/Arch:      linux/arm64

@bwateratmsft
Copy link
Contributor

@andrewcrook Podman's CLI is different enough from Docker's CLI that it no longer works, since we changed in 1.23.* to use the CLI exclusively instead of a mix of the CLI and the HTTP API. We're working on something for the Podman CLI, but in the meantime, you're best off downgrading to version 1.22.2 of the Docker extension via the command "Extensions: Install specific version of extension...".

@andrewcrook
Copy link

andrewcrook commented Jan 3, 2023

@andrewcrook. We're working on something for the Podman CLI

That’s good news thank you
I didn't want to have to fork the project at 1.22.2 for an exclusive Podman version of the plugin.

Would it make sense to possibly have a more generic OCI container plugin in the future?

@microsoft microsoft locked and limited conversation to collaborators Jan 27, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
10 participants