Skip to content

v0.13.3

Compare
Choose a tag to compare
@jherland jherland released this 16 Nov 15:23
· 218 commits to main since this release

This release introduces a slight change in how FawltyDeps finds Python environments (used for resolving declared dependencies into provided import names). Specifically the change regards the use of the current Python environment (i.e. the one in which FawltyDeps itself is installed and running):

Since v0.12, we would not use this environment if any other Python environment was found (either via --pyenv or otherwise via searching inside your project). This would still be sufficient in the relatively common case where you (a) run fawltydeps with default settings, and (b) FawltyDeps is installed in the same environment as your project dependencies, and (c) this environment lives outside your project directory (e.g. like Poetry does by default). However, if you add another complicating factor: (d) another virtualenv is found inside your project and this happens to not contain your project dependencies, then FawltyDeps would prefer this environment over the current environment, and dependency resolution would suffer.

We have now changed the rules to always include the current environment in the dependency resolution (but at a lower priority than any other Python environments given with --pyenv or found in your project). The result should be improved dependency resolution in the above corner case, but otherwise the observed behavior should remain unchanged.

Otherwise, in this release, and thanks to @msabramo, we have revamped the pre-commit rules that come with FawltyDeps. These will now give more accurate results when there are untracked files in your tree that would otherwise affect FawltyDeps' calculation of undeclared and unused dependencies.

What's Changed

  • Reintroduce current Python environment as a separate level in our resolver stack by @jherland in #394
  • Separate check-undeclared, check-unused pre-commit hooks by @msabramo in #386
  • Preliminary refactoring before --ignore feature by @jherland in #387

New Contributors

Full Changelog: v0.13.2...v0.13.3

Refer to the project's README.md or fawltydeps --help for more documentation.