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

Consider replacing Poetry with uv #4049

Open
ammar92 opened this issue Jan 28, 2025 · 3 comments
Open

Consider replacing Poetry with uv #4049

ammar92 opened this issue Jan 28, 2025 · 3 comments
Assignees

Comments

@ammar92
Copy link
Contributor

ammar92 commented Jan 28, 2025

We should consider replacing poetry with uv for dependency management.

Pro's of Poetry

  • Faster than pip
  • Easy CLI

Pro's of uv:

  • Faster than Poetry
  • Replaces a bunch of tools
    • pipx: Install and run Python applications in isolated environments
    • pyenv: You just configure your project to require a certain Python version the right Python version is installed, the virtual environment gets created, and the dependencies get installed very fast
  • Improved dependency resolution
    • While Poetry does a great job at this, uv is even better when dealing with multiple interdependencies
  • A cleaner pyproject.toml file that adheres to standards-compliant sections

Cons of uv:

  • Slightly more complex CLI than Poetry
  • Relatively new, but rapidly gaining popularity and is considered stable
  • No direct support yet from Dependabot, although this shouldn't be a big deal since we're always outputting requirements.txt formats that can be scanned
@ammar92 ammar92 added this to KAT Jan 28, 2025
@github-project-automation github-project-automation bot moved this to Incoming features / Need assessment in KAT Jan 28, 2025
@ammar92 ammar92 moved this from Incoming features / Need assessment to To be discussed in KAT Jan 28, 2025
@Donnype
Copy link
Contributor

Donnype commented Jan 28, 2025

Is it easy to do a quick benchmark of build-times? Might make the speedup argument a bit clearer, as I think this could be one of the most impactful changes.

@ammar92
Copy link
Contributor Author

ammar92 commented Jan 30, 2025

Notes from the discussion meeting:

  • Positive feedback on using uv
  • If we wish to replace Poetry, we should do so a few releases later

As of today, PyCharm also has official support for using uv. It also still works with older versions of the IDE, you just have to point to the right virtual environment that uv has created for your project

@ammar92
Copy link
Contributor Author

ammar92 commented Jan 30, 2025

Is it easy to do a quick benchmark of build-times? Might make the speedup argument a bit clearer, as I think this could be one of the most impactful changes.

I can run a comparison soon, but based on my experience installing (Python) dependencies accounts for most of the build time. We should definitely see a noticeable improvement there

@madelondohmen madelondohmen moved this from To be discussed to Approved features / Need refinement in KAT Feb 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Approved features / Need refinement
Development

No branches or pull requests

2 participants