Skip to content

Infinite loop when resolving deps (normalization problem) #5474

@karlb

Description

@karlb

Issue

When running poetry update, the Resolving dependencies... step is stuck in what seems to be an infinite loop. It runs for a long time (>1000s) until I am force to kill it, because it starts to use excessive amounts of memory (>8GB).

The problem only happens when dependencies are involved where the declared dependency name differs from the PyPI package name in ways allowed by the package name normalization. In the gist, the problematic dependencies are zope-interface (zope.interface on PyPI) and zope-event (zope.event on PyPI). These are transitive dependencies of the "bug" project included via the raiden dependency.

This seems to be related to #3365 and #3200 and a potential duplicate of these. However, the case is slightly different, since the problematic dependencies are not declared in the package managed by poetry, but in a dependency (which is not created using poetry). Due to this, I don't see a way to work around this by changing the pyproject.toml as done in #3132 (comment).

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugSomething isn't working as expected

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions