Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/python-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: [ '3.6', '3.7', '3.8', '3.9', 'pypy3' ]
python_version: [ '3.6', '3.7', '3.8', '3.9', '3.10-dev', 'pypy3' ]
os: [windows-latest, ubuntu-latest] #, macos-latest]
include:
- os: windows-latest
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
v6.2.0
=======

* fix #608: resolve tomli dependency issue by making it a hard dependency
as all intended/supported install options use pip/wheel this is only a feature release
* ensure python 3.10 works

v6.1.1
=======

Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,5 @@ include tox.ini
include *.rst
include LICENSE
include *.toml
include mypy.ini
recursive-include testing *.bash
3 changes: 1 addition & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,8 @@ built step by specifying it as one of the build requirements.

# pyproject.toml
[build-system]
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.0"]
requires = ["setuptools>=45", "wheel", "setuptools_scm>=6.2"]

Note that the ``toml`` extra must be supplied.

That will be sufficient to require ``setuptools_scm`` for projects
that support PEP 518 (`pip <https://pypi.org/project/pip>`_ and
Expand Down
5 changes: 4 additions & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ classifiers =
packages = find:
install_requires =
setuptools>=45
tomli~=1.0
tomli>=1.0
python_requires = >=3.6
package_dir =
=src
Expand Down Expand Up @@ -67,3 +67,6 @@ setuptools_scm.version_scheme =
release-branch-semver = setuptools_scm.version:release_branch_semver_version
no-guess-dev = setuptools_scm.version:no_guess_dev_version
calver-by-date = setuptools_scm.version:calver_by_date

[option.extras_require]
toml = # empty
6 changes: 5 additions & 1 deletion src/setuptools_scm/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,11 @@ def require_command(name):
else:

def iter_entry_points(group: str, name: Optional[str] = None):
eps = entry_points()[group]
all_eps = entry_points()
if hasattr(all_eps, "select"):
eps = all_eps.select(group=group)
else:
eps = all_eps[group]
if name is None:
return iter(eps)
return (ep for ep in eps if ep.name == name)
3 changes: 3 additions & 0 deletions testing/test_setuptools_support.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,9 @@ def check(packagedir, expected_version, **env):
)


@pytest.mark.skipif(
sys.version_info[:2] >= (3, 10), reason="old setuptools wont work on python 3.10"
)
def test_distlib_setuptools_works(get_setuptools_packagedir):
packagedir = get_setuptools_packagedir("45.0.0")
check(packagedir, "45.0.0")
5 changes: 3 additions & 2 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ skip_install=
test: False
deps=
pytest
setuptools >= 42
setuptools >= 45
tomli
commands=
test: pytest []
selfcheck: python setup.py --version
Expand All @@ -43,7 +44,7 @@ deps=
flake8
mccabe
commands =
flake8 src/setuptools_scm/ testing/ setup.py --exclude=src/setuptools_scm/win_py31_compat.py
flake8 src/setuptools_scm/ testing/ setup.py

[testenv:check_readme]
skip_install=True
Expand Down