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

Handling infinite recursion #13

Open
TyberiusPrime opened this issue Sep 14, 2024 · 0 comments
Open

Handling infinite recursion #13

TyberiusPrime opened this issue Sep 14, 2024 · 0 comments

Comments

@TyberiusPrime
Copy link
Contributor

When python packages depend on each other in a cycle,
we need to break the infinite recursion.

I had though this would work like poetry2nix,

        dark-matter = prev.dark-matter.overridePythonAttrs (
          old: {
            propagatedBuildInputs =
              removePackagesByName
              (builtins.trace (old.propagatedBuildInputs or []) (old.propagatedBuildInputs or []))
              (pkgs.lib.optionals (final ? gb2seq) [final.gb2seq]);
          }
        );

But at that point in the eval, propagatedBuildInputs is still empty, and therefore the recursion remains.

Reproduction repo in https://github.com/TyberiusPrime/20240914_uv2nix_infinite_recursion

Perhaps you can shine some light on how to do this, @adisbladis ?
Thanks!

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

1 participant