Reuse

Latest version: v3.0.2

Safety actively analyzes 630130 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 7

0.3.1

Fixed

- When using reuse from a child directory using pygit2, correctly find the root.

0.3.0

Changed

- The output of `reuse compile` is now deterministic. The files, copyright lines
and SPDX expressions are sorted alphabetically.

Fixed

- When a GPL license could not be found, the correct `-only` or `-or-later`
extension is now used in the warning message, rather than a bare `GPL-3.0`.
- If you have a license listed as `SPDX-Valid-License: GPL-3.0-or-later`, this
now correctly matches corresponding SPDX identifiers. Still it is recommended
to use `SPDX-Valid-License: GPL-3.0` instead.

0.2.0

Added

- Internationalisation support added. Initial support for:
- English.
- Dutch.
- Esperanto.
- Spanish.

Fixed

- The license list of SPDX 3.0 has deprecated `GPL-3.0` and `GPL-3.0+` et al in
favour of `GPL-3.0-only` and `GPL-3.0-or-later`. The program has been amended
to accommodate sufficiently for those licenses.

Changed

- `Project.reuse_info_of` now extracts, combines and returns information both
from the file itself and from debian/copyright.
- `ReuseInfo` now holds sets instead of lists.
- As a result of this, `ReuseInfo` will not hold duplicates of copyright lines
or SPDX expressions.
- click removed as dependency. Good old argparse from the library is used
instead.

0.1.1

Changed

- The `reuse --help` text has been tidied up a little bit.

Fixed

- Release date in change log fixed.
- The PyPI homepage now gets reStructuredText instead of Markdown.

0.1.0

Added

- Successfully parse old-style C and HTML comments now.
- Added `reuse compile`, which creates an SPDX bill of materials.
- Added `--ignore-missing` to `reuse lint`.
- Allow to specify multiple paths to `reuse lint`.
- `chardet` added as dependency.
- `pygit2` added as soft dependency. reuse remains usable without it, but the
performance with `pygit2` is significantly better. Because `pygit2` has a
non-Python dependency (`libgit2`), it must be installed independently by the
user. In the future, when reuse is packaged natively, this will not be an
issue.

Changed

- Updated to version 2.0 of the REUSE recommendations. The most important change
is that `License-Filename` is no longer used. Instead, the filename is
deducted from `SPDX-License-Identifier`. This change is **NOT** backwards
compatible.
- The conditions for linting have changed. A file is now non-compliant when:
- The license associated with the file could not be found.
- There is no SPDX expression associated with the file.
- There is no copyright notice associated with the file.
- Only read the first 4 KiB (by default) from code files rather than the entire
file when searching for SPDX tags. This speeds up the tool a bit.
- `Project.reuse_info_of` no longer raises an exception. Instead, it returns an
empty `ReuseInfo` object when no reuse information is found.
- Logging is a lot prettier now. Only output entries from the `reuse` module.

Fixed

- `reuse --ignore-debian compile` now works as expected.
- The tool no longer breaks when reading a file that has a non-UTF-8 encoding.
Instead, `chardet` is used to detect the encoding before reading the file. If
a file still has errors during decoding, those errors are silently ignored and
replaced.

0.0.4

Fixed

- Removed dependency on `os.PathLike` so that Python 3.5 is actually supported

Page 6 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.