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

Remove uv's project generator #12

Closed
InSyncWithFoo opened this issue Sep 28, 2024 · 2 comments
Closed

Remove uv's project generator #12

InSyncWithFoo opened this issue Sep 28, 2024 · 2 comments
Assignees
Labels
upstream Blocked by upstream issues

Comments

@InSyncWithFoo
Copy link
Owner

InSyncWithFoo commented Sep 28, 2024

The generator was a reimplementation of the now-deprecated newProject module. That module's replacement, newProjectWizard is, however, not what we need: It does provide a much better interface for framework plugins, but not project and package manager ones (I'm sure RyeCharm is currently the only one in this second category).

newProjectWizard makes use of sdk.add.v2, which has recently been made internal. The Marketplace team won't even approve a plugin using internal APIs, so if I were to reimplement newProjectWizard, I would also have to copy the entire sdk.add.v2 over.

All of these modules (as well as other related ones) are changing at a very fast pace. To be clear, this is very welcoming news: it means future plugin developers won't have to go through what I went through. On the other hand, these changes mean an unofficial fork would take a lot of efforts to maintain.

Why would I reimplement such legacy code, you ask? It's because there aren't any official APIs. I have requested that the Custom environment subpanel be extendable from third-party plugins. Please vote for the issue to show your support.

(For reference, currently this subpanel allows choosing from a list of Virtualenv, Conda, Pipenv and Poetry, all hardcoded.)

In the mean time, the generator is but a burden. I have decided that it's best to just remove it.

@InSyncWithFoo InSyncWithFoo self-assigned this Sep 28, 2024
@InSyncWithFoo InSyncWithFoo added the upstream Blocked by upstream issues label Sep 28, 2024
@InSyncWithFoo
Copy link
Owner Author

The aforementioned issue was closed. One good news, one bad news:

  • Good news: JetBrains are on their way to support uv natively.
  • Bad news: No information about what, when or how. The issue was also rejected.

This probably means I should be removing most of the SDK parts as well.

@InSyncWithFoo
Copy link
Owner Author

InSyncWithFoo commented Oct 3, 2024

uv will be supported as an environment type. This means, on 2025.1 at the earliest (~3 months until EAP, 5 or 6 months until stable), we will have a proper generator.

uv's generator should stay for now. It will be removed as soon as a version natively supporting uv is released, or newProject is removed, whichever comes first.

The new logic might break old environments, but so be it.

@InSyncWithFoo InSyncWithFoo closed this as not planned Won't fix, can't repro, duplicate, stale Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
upstream Blocked by upstream issues
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant