Skip to content

Commit

Permalink
docs(changelog): add 0.21.0 release notes (#907)
Browse files Browse the repository at this point in the history
* docs(changelog): add 0.21.0 release notes

* docs(changelog): update release date

* docs(changelog): update release date
  • Loading branch information
mkniewallner authored Nov 8, 2024
1 parent 975ee16 commit 3557308
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 1 deletion.
61 changes: 61 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,65 @@
# Changelog

## 0.21.0 - 2024-11-08

### Breaking changes

#### Ignore files handling

Unless [`--exclude`](https://deptry.com/usage/#exclude) is used, _deptry_ excludes files found in common ignore
files (`.gitignore`, `.ignore`, `$HOME/.config/git/ignore`. ...), by using [`ignore`](https://crates.io/crates/ignore)
Rust crate. The default behaviour has been changed, so that now:

- git-related ignore rules (`.gitignore`, `$HOME/.config/git/ignore`, ...) are only used if _deptry_ is run inside a git
repository
- `.gitignore` files that are in parent directories of the git repository from where deptry is run are not
used (previously, _deptry_ would traverse parent directories up to the root system)

If you were using `.gitignore` files for non-git repositories, you might want to switch to `.ignore` files, or use
[`--extend-exclude`](https://deptry.com/usage/#extend-exclude).

#### Requirements files parsing

_deptry_ now uses [`requirements-parser`](https://pypi.org/project/requirements-parser/) to parse dependencies from
requirements files, meaning that it can now extract nested requirements files referenced in other requirements files
without having to explicitly configure it in _deptry_.

For instance, if you have:

```python
# requirements.txt
-r cli-requirements.txt
httpx==0.27.2
```

```python
# cli-requirements.txt
click==8.1.7
```

With the default configuration, when parsing `requirements.txt`, both `httpx` and `click` will now be listed as
dependencies by _deptry_, while previously, only `httpx` was, unless _deptry_ was instructed about
`cli-requirements.txt` by using [`--requirements-files`](https://deptry.com/usage/#requirements-files). This new
behaviour also impacts development requirements files, that can be overridden by
using [`--requirements-files-dev`](https://deptry.com/usage/#requirements-files-dev).

#### Python 3.8 support dropped

Support for Python 3.8 has been dropped, as it has reached its end of life.

### Features

* _deptry_ now detects development dependencies from `[dependency-groups]` section, introduced
by [PEP 735](https://peps.python.org/pep-0735/) ([#892](https://github.com/fpgmaas/deptry/pull/892))
* _deptry_ now supports `setuptools` dynamic dependencies set in `[tool.setuptools.dynamic]` section,
see https://deptry.com/supported-dependency-managers/#setuptools for more
details ([#894](https://github.com/fpgmaas/deptry/pull/894), [#724](https://github.com/fpgmaas/deptry/pull/724))
* Drop support for Python 3.8 ([#874](https://github.com/fpgmaas/deptry/pull/874))
* Improve ignore handling ([#908](https://github.com/fpgmaas/deptry/pull/908))
* Parse requirements files with `requirements-parser`, adding support for parsing nested requirements
files referenced with `-r <requirement_file>` ([#913](https://github.com/fpgmaas/deptry/pull/913))


## 0.20.0 - 2024-08-27

### Breaking changes
Expand All @@ -24,6 +84,7 @@ Those flags have now been removed. If you relied on them, you should now use, re
* Remove deprecated `--requirements-txt`/`--requirements-txt-dev`
flags ([#819](https://github.com/fpgmaas/deptry/pull/819))


## 0.19.1 - 2024-08-10

### Features
Expand Down
2 changes: 1 addition & 1 deletion docs/supported-dependency-managers.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ extensions, but also from package managers that do not (or used to not) support
## PEP 621

_deptry_ fully supports [PEP 621 standard](https://packaging.python.org/en/latest/specifications/pyproject-toml/), and
use the presence of a `[project]` section in `pyproject.toml` to determine that the project uses PEP 621.
uses the presence of a `[project]` section in `pyproject.toml` to determine that the project uses PEP 621.

By default, _deptry_ extracts, from `pyproject.toml`:

Expand Down

0 comments on commit 3557308

Please sign in to comment.