Setuptools-scm

Latest version: v8.0.4

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

Scan your dependencies

Page 1 of 16

8.0.4

Changed

- introduce scriv for changelog management
- reconfigure local build backend to use an attribute instead of star imports from setuptools
- introduce ruff as a linter
- ensure the setuptools version keyword correctly load pyproject.toml configuration
- add build and wheel to the test requirements for regression testing
- move internal toml handling to own module

Fixed

- fix 925: allow `write_to` to be an absolute path when it's a subdirectory of the root
- fix 932: ensure type annotations in version file don't cause linter issues
- fix 930: temporary restore `DEFAULT_VERSION_SCHEME` and `DEFAULT_LOCAL_SCHEME` on the `setuptools_scm` package

8.0.3

bugfix

- fix 918 for good - remove external importlib-metadata to avoid source only loop
- fix 926: ensure mypy on python3.8 works with the version file

8.0.2

bugfix

- fix 919: restore legacy version-file behaviour for external callers + add Deprecation warning
- fix 918: use packaging from setuptools for self-build
- fix 914: ignore the deprecated git archival plugin as its integrated now
- fix 912: ensure mypy safety of the version template + regression test
- fix 913: use 240s timeout instead of 20 for `git unshallow`
to account for large repos or slow connections

8.0.1

bugfix

- update version file template to work on older python versions by using type comments
- ensure tag regex from setup.py is parsed into regex

8.0.0

breaking

- remove legacy version parser api - config arg always required
- turn Configuration into a dataclass
- require configuration to always pass into helpers
- hide file-finders implementation in private module
- renamed setuptools_scm.hacks to setuptools_scm.fallbacks and drop support for pip-egg-info
- remove trace function and use logging instead
- unify `distance=None` and `distance=0` they should mean the same andwhere hiding dirty states that are now explicitly dirty
- depend on later importlib for the full selectable api
- move setuptools integration code to private sub-package
- use normalized dist names for the `SETUPTOOLS_SCM_PRETEND_VERSION_FOR_${DIST_NAME}` env var
- drop support for python 3.7
- introduce `version_file` as replacement for `write_to`

features

- created a directory for the vcs-versioning package and added it to pypi
- git: expect main as possible default branch
- drop version_from_scm helper
- trim down exposed public api
- no longer self-call twice in setuptools
- add support for version schemes by import
- chores

- migrate own metadata to pyproject.toml
- consolidate version schemes
- stricter tag typing
- pre-compiled regex
- move helpers to private modules

- support passing log levels to SETUPTOOLS_SCM_DEBUG
- support using rich.logging as console log handler if installed
- fix 527: type annotation in default version template
- fix 549: use fallbacks when scm search raises CommandNotFoundError

bugfixes

- fix 883: use HeadersParser to ensure only mime metadata in headers is used
- fix 884: parse calver dates from versions with the v prefix
- don't use a C locale without UTF-8 support, when running commands.

7.1.0

- 748: use `tomllib` from stdlib
- fix 762: handle non-ascii in setup.cfg
- 752: implement fallback file finders for archives
- 765: removed coding header in python template
- declared Python 3.11 support
- fix 759: update .git_archival.txt templates match git-describe invocation
- fix 772: fix handling of .git-archival.txt from tagged commit

Page 1 of 16

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.