Skip to content

Poetry2nix -> uv2nix

Latest
Compare
Choose a tag to compare
@TyberiusPrime TyberiusPrime released this 10 Feb 14:55
· 2 commits to main since this release

We have replaced the currently unmaintained poetry2nix
with the newish uv2nix, which is now supported by the
ancient-poetry utility we use to ensure
reproducible lockability.

This brings much faster 'locks', a much better python-package-build system and a python-override collection that's independent of the uv2nix version we're using.

The drawback is that this also means your current 'poetry2nix.*' overrides are no longer valid,
and need to be rewritten with the new overrideAttrs = {key = } style overrides.
Refer to the examples for details.

(Side effect of this is that we have a much cleaner 'leveled' override architecture, which does allow you
to override even anysnake2 internal overrides downstream).

This version also refactors the 'clone_regex' to be 'clones.options.clone_regex', so that we could introduce
'clones.options.jujutsu' - if that's set to true, cloned git repositories will be promoted to jj repositories.

Bug-fixes:

- removed one source of 'flake churn' which lead to the generated nix code 
  differing in the order of statements, but not semantically,
  triggering repeated 'flake lock' on each invocation.
- all dependencies have been updated.