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

Maintenance: Looking for maintainers #1865

Open
adisbladis opened this issue Nov 7, 2024 · 3 comments
Open

Maintenance: Looking for maintainers #1865

adisbladis opened this issue Nov 7, 2024 · 3 comments

Comments

@adisbladis
Copy link
Member

I'm no longer using Poetry or Poetry2nix, and want to step down from poetry2nix maintenance.

Poetry has a number of upcoming large changes, which poetry2nix is unlikely to gain support for:

There are a number of poetry2nix specific challenges long-term:

  • Dependency solving isn't very good
    I started working on that in https://github.com/adisbladis/poetry2nix-v2, but with uv gaining a lock file I don't see the point any more.

  • Nixpkgs Python builders aren't good
    They should be replaced by https://nix-community.github.io/pyproject.nix/build.html.

  • The whole API is misdesigned
    mkPoetry* shouldn't exist. A python2nix tool should generate an overlay to use with environment composition primitives.
    See uv2nix for prior art.
    Having a default choice between sdist or wheel was a mistake. Users should be responsible for making this choice themselves as it shapes your entire user experience.

  • Overrides
    This is my biggest annoyance in regards to maintenance, and was kind of accidental.

    I don't think python2nix tooling should come with overrides that taper over lock file deficiencies.
    Overrides are ephemeral in nature and bit-rot.
    It's better that external projects to take on this role, and let python2nix tooling focus on getting the semantics right.

Alternatives

If you are not already using Poetry & Poetry2nix, do consider uv & uv2nix.

You may also want to reconsider whether you actually need precise locking at all.
pyproject.nix can be used together with a Poetry pyproject.toml without using the lock file metadata, and just use dependencies from nixpkgs.

@l0b0
Copy link
Contributor

l0b0 commented Nov 7, 2024

Thank you very much for your work on poetry2nix and its successors!

@adisbladis adisbladis pinned this issue Nov 7, 2024
@cpcloud
Copy link
Collaborator

cpcloud commented Nov 7, 2024

While I have enjoyed working on and helping maintain poetry2nix, I'm migrating my main motivation for its use to uv2nix, and so will also not be able to do much more here beyond merging the occasional PR.

Thanks for all your work here @adisbladis!

@TyberiusPrime
Copy link
Contributor

TyberiusPrime commented Nov 7, 2024

I'm also migrating my main stack to uv2nix the first chance I get,
because a) uv is so much faster and b) the uv maintainers appear open to 'lock the build systems down as well'.

Also @adisbladis work on uv2nix & pyproject.nix has just been stellar.

As for an override collection, come join the effort at https://github.com/TyberiusPrime/uv2nix_hammer_overrides/ which is an outgrowth of my stalled PR #1742, done better this time around.

edit: "first chance I get' probably means once nixpkgs 24.11 containing a newish uv is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants