What's Changed
This release introduces a significant change to the command-line flags and configuration options to make use of the error codes introduced in release 0.10.0.
| Code | Issue |
|---|---|
| DEP001 | Missing dependency |
| DEP002 | Unused/obsolete dependency |
| DEP003 | Transitive dependency |
| DEP004 | Misplaced development dependency |
Features
- Replaced --skip-unused, --skip-obsolete, --skip-missing, --skip-misplaced-dev flags: We have replaced the currently existing flags with the more generalized
--ignoreflag. Now, instead of skipping types of checks, you can specify the exact error codes to ignore using the--ignoreflag (e.g.,deptry . --ignore "DEP001,DEP002"to ignore checking for missing and unused dependencies).
The changes are also reflected in pyproject.toml. For example,
[tool.deptry]
skip_missing = true
skip_unused = trueis superseded by
[tool.deptry]
ignore = ["DEP001", "DEP002"]- Replaced --ignore-unused, --ignore-obsolete, --ignore-missing, --ignore-misplaced-dev flags: Previously, specific checks for spefific dependencies/modules could be ingored using the
--ignore-<code>flags. We are replacing these flags with the more generalized--per-rule-ignoresflag. This flag allows you to specify dependencies that should be ignored for specific error codes, offering granular control over which errors are ignored for which dependencies. For instance,deptry . --per-rule-ignores DEP001=matplotlib,DEP002=pandas|numpymeansDEP001will be ignored formatplotlib, whileDEP002will be ignored for bothpandasandnumpy.
The changes are also reflected in pyproject.toml. For example,
[tool.deptry]
ignore_missing = ["matplotlib"]
ignore_unused = ["pandas", "numpy"]is superseded by
[tool.deptry.per_rule_ignores]
DEP001 = ["matplotlib"]
DEP002 = ["pandas", "numpy"]Please note that while the legacy arguments are still functional as of Deptry 0.12.0, we do plan to remove them in a future 1.0.0 release.
- Consider all groups for dev dependencies (#392)
Bug Fixes
- Handle
SyntaxErrorraised byast.parse(#426)