Skip to content

Jupyter extension: Pre-release set to latest version #569

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

Closed
benz0li opened this issue Mar 28, 2022 · 8 comments
Closed

Jupyter extension: Pre-release set to latest version #569

benz0li opened this issue Mar 28, 2022 · 8 comments
Assignees
Labels
bug Something isn't working extension Regarding an extension

Comments

@benz0li
Copy link

benz0li commented Mar 28, 2022

https://open-vsx.org/extension/ms-toolsai/jupyter/2022.3.1000752054 should not have been published as https://open-vsx.org/extension/ms-toolsai/jupyter/latest [for now at least].


In comparison:

ESLint
https://open-vsx.org/extension/dbaeumer/vscode-eslint/latest is https://open-vsx.org/extension/dbaeumer/vscode-eslint/2.2.2.
👉 v2.2.3 (pre-release) has been out since mid January but is not published on Open VSX.

Python
https://open-vsx.org/extension/ms-python/python/latest is https://open-vsx.org/extension/ms-python/python/2022.2.1924087327
👉 2022.3.n{10} (pre-release) has been out for some time but is not published on Open VSX.

@filiptronicek In my opinion publishing of ESLint and Python extension is handled correctly, but not for Jupyter extension.


Does 9fe3cf4 work correctly for ms-toolsai.jupyter?

@benz0li
Copy link
Author

benz0li commented Mar 28, 2022

See eclipse/openvsx#436 for previous discussion.

@filiptronicek filiptronicek self-assigned this Mar 28, 2022
@filiptronicek filiptronicek added the extension Regarding an extension label Mar 28, 2022
@filiptronicek
Copy link
Member

Hi @benz0li 👋!

So, about the two extensions (and probably many more): we don't do pre-releases here in the repo, yet. I think it is an interesting idea to explore in the near future, but for now we always publish the latest stable version of extensions and the introduction of double publishing / one for each channel - stable and prerelease would add a quite large amount of complexity, which probably means it would not work a lot of the time.

Still a thing worth considering. Thanks for bringing it to our attention.

@benz0li
Copy link
Author

benz0li commented Mar 28, 2022

[...] but for now we always publish the latest stable version of extensions [...]

Thanks for your prompt reply. I'm not asking about publishing pre-releases.

https://open-vsx.org/extension/ms-toolsai/jupyter/2022.3.1000752054 is not the latest stable version but a pre-release.
ℹ️ https://open-vsx.org/extension/ms-toolsai/jupyter/2022.2.1010641114 is the latest stable version.

@benz0li
Copy link
Author

benz0li commented Mar 28, 2022

@filiptronicek I'm wondering why version 2022.3.1000752054 has been published as latest.

@filiptronicek
Copy link
Member

@filiptronicek I'm wondering why version 2022.3.1000752054 has been published as latest.

Oh, sorry for the misunderstanding, I see what you mean. This is a problem with the publishing script, which published it on the 14th of March, because it couldn't change to a release tag, so it started guessing. It took the first commit around the time of the Microsoft release looking for whatever it could find, after that, it just published what it could, this being the 2022.3.1000752054 version.

I will try to patch this behavior, but it is a bit trickier with these extensions where semver is not used. Thanks for reporting this, I am currently investigating it.

@filiptronicek filiptronicek added the bug Something isn't working label Mar 28, 2022
@filiptronicek
Copy link
Member

filiptronicek commented Mar 28, 2022

This is going to be tricky to solve, since as @benz0li stated, 2022.2.1010641114 is the latest stable version of the extension and this version never appeared in the source code of https://github.com/microsoft/vscode-jupyter, the version in package.json is updated ~ once a month. In addition to that, the source code can be the only data source, because although they do publish releases, the last one was in February.

We could somehow leverage the fact that Jupyter publishes a built extension package on every commit [1], but that would require us to:

  1. Fetch all workflow runs for the repository in some timeframe relative to the release to the Microsoft Marketplace
  2. Check every workflow one by one, downloading the vsix file, unarchiving it, checking the version, only stopping when no more are available or the desired version was reached.
  3. Publish the found .vsix / fail the resolve step

@benz0li
Copy link
Author

benz0li commented Mar 29, 2022

For the time being, I will simply pin the version of this extension.

@filiptronicek Thanks for your detailed feedback. Versioning and publishing on Microsoft's side is utterly obscure.

@benz0li
Copy link
Author

benz0li commented May 4, 2022

Your current mechanism for publishing releases of ms-toolsai.jupyter seems fine.

I'm going to pin the versions for ms-toolsai.jupyter and ms-python.python when installing these extensions.
ℹ️ This is required as long as coder/code-server#5031 remains unresolved.

@benz0li benz0li closed this as completed May 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working extension Regarding an extension
Projects
None yet
Development

No branches or pull requests

2 participants