Skip to content

Set P3M for the extension gallery#13041

Merged
timtmok merged 8 commits intomainfrom
12875-p3m-gallery
Apr 23, 2026
Merged

Set P3M for the extension gallery#13041
timtmok merged 8 commits intomainfrom
12875-p3m-gallery

Conversation

@timtmok
Copy link
Copy Markdown
Contributor

@timtmok timtmok commented Apr 15, 2026

Address #12875

Updates product.json so that extensions are retrieved from P3M. product.ts updates the trusted domains but this is for dev builds.

The update-extensions.sh script has also been updated to retrieve bootstrapped extensions from P3M. The response is slightly different than OpenVSX so it has been adjusted and uses the URL templates from product.json.

Release Notes

New Features

  • Use P3M for the extension gallery

Bug Fixes

  • N/A

QA Notes

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 15, 2026

E2E Tests 🚀
This PR will run tests tagged with: @:critical

readme  valid tags

@timtmok
Copy link
Copy Markdown
Contributor Author

timtmok commented Apr 15, 2026

@midleman Adding you for the update-extensions.sh changes.

@timtmok
Copy link
Copy Markdown
Contributor Author

timtmok commented Apr 15, 2026

Note that the verified status still points to OpenVSX because that's what P3M returns on the extension query check.

image

Comment thread product.json
Comment on lines +309 to +311
"serviceUrl": "https://p3m.dev/openvsx/latest/vscode/gallery",
"itemUrl": "https://p3m.dev/openvsx/latest/vscode/item",
"resourceUrlTemplate": "https://p3m.dev/openvsx/latest/vscode/asset/{publisher}/{name}/{version}/Microsoft.VisualStudio.Code.WebResources/{path}",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR tests are failing with 404s when using this URL to download built in extensions. I see the same thing when I try with curl, but it matches the P3M docs 🤔

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I fixed up the prelaunch extension updates. It didn't use the same URL template.

@timtmok timtmok requested a review from melissa-barca April 16, 2026 20:07
Comment thread product.json Outdated
},
"publisherDisplayName": "charliermarsh",
"multiPlatformServiceUrl": "https://open-vsx.org/api"
"multiPlatformServiceUrl": "https://p3m.dev/openvsx/latest/api"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"multiPlatformServiceUrl": "https://p3m.dev/openvsx/latest/api"
"multiPlatformServiceUrl": "https://p3m.dev/openvsx/latest/vscode/asset"

If we set this to the asset base url could we leave the current implementations of build/lib/bootstrapExtensions.ts and build/lib/extensions.ts as they are?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From what I tried, it still needs those changes for building the multi-platform download URL. https://p3m.dev/openvsx/latest/vscode/asset/charliermarsh/ruff/darwin-arm64/2026.40.0/file/charliermarsh.ruff-2026.40.0@darwin-arm64.vsix didn't work for me.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let me try one more time. I just realized that Ruff currently doesn't publish a Mac version for 2026.40.0.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried https://p3m.dev/openvsx/latest/vscode/asset/charliermarsh/ruff/darwin-arm64/2026.38.0/file/charliermarsh.ruff-2026.38.0@darwin-arm64.vsix and it is an invalid link. The change to the multiPlatformServiceUrl makes sense though. It won't require the gallery replacement.

midleman
midleman previously approved these changes Apr 17, 2026
Copy link
Copy Markdown
Contributor

@midleman midleman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for updating the script! Tried it out, seems to work great for me. 🎉

@juliasilge
Copy link
Copy Markdown
Contributor

FYI I made some changes in #13097 related to extension checksums.

@timtmok
Copy link
Copy Markdown
Contributor Author

timtmok commented Apr 21, 2026

Looks good for the checksum changes. The changes in update-extensions.sh is for constructing the download URL and that doesn't conflict with the checksum fix.

@timtmok
Copy link
Copy Markdown
Contributor Author

timtmok commented Apr 23, 2026

I've updated the other code path for single platform downloads. It now uses the resource template to get the asset.

@timtmok timtmok requested a review from melissa-barca April 23, 2026 16:01
Copy link
Copy Markdown
Contributor

@melissa-barca melissa-barca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@timtmok timtmok merged commit 3eafb11 into main Apr 23, 2026
39 checks passed
@timtmok timtmok deleted the 12875-p3m-gallery branch April 23, 2026 17:40
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 23, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants