Skip to content

Commit 5ca5220

Browse files
authored
Merge pull request #310 from bluetech/rm-python35
Remove support for Python 3.5, add Python 3.9, move metadata from setup.py to setup.cfg, mark as Mature
2 parents 2d01777 + 8cea267 commit 5ca5220

File tree

7 files changed

+64
-66
lines changed

7 files changed

+64
-66
lines changed

.github/workflows/main.yml

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,15 @@ jobs:
1919
fail-fast: false
2020
matrix:
2121
name: [
22-
"windows-py35",
2322
"windows-py36",
24-
"windows-py37",
23+
"windows-py39",
2524
"windows-pypy3",
2625

27-
"ubuntu-py35",
2826
"ubuntu-py36",
2927
"ubuntu-py36-pytestmain",
3028
"ubuntu-py37",
3129
"ubuntu-py38",
30+
"ubuntu-py39",
3231
"ubuntu-pypy3",
3332
"ubuntu-benchmark",
3433

@@ -37,27 +36,18 @@ jobs:
3736
]
3837

3938
include:
40-
- name: "windows-py35"
41-
python: "3.5"
42-
os: windows-latest
43-
tox_env: "py35"
4439
- name: "windows-py36"
4540
python: "3.6"
4641
os: windows-latest
4742
tox_env: "py36"
48-
- name: "windows-py37"
49-
python: "3.7"
43+
- name: "windows-py39"
44+
python: "3.9"
5045
os: windows-latest
51-
tox_env: "py37"
46+
tox_env: "py39"
5247
- name: "windows-pypy3"
5348
python: "pypy3"
5449
os: windows-latest
5550
tox_env: "pypy3"
56-
- name: "ubuntu-py35"
57-
python: "3.5"
58-
os: ubuntu-latest
59-
tox_env: "py35"
60-
use_coverage: true
6151
- name: "ubuntu-py36"
6252
python: "3.6"
6353
os: ubuntu-latest
@@ -78,6 +68,11 @@ jobs:
7868
os: ubuntu-latest
7969
tox_env: "py38"
8070
use_coverage: true
71+
- name: "ubuntu-py39"
72+
python: "3.9"
73+
os: ubuntu-latest
74+
tox_env: "py39"
75+
use_coverage: true
8176
- name: "ubuntu-pypy3"
8277
python: "pypy3"
8378
os: ubuntu-latest

changelog/308.removal.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Remove official support for Python 3.5.

changelog/309.feature.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add official support for Python 3.9.

pyproject.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ requires = [
55
"wheel",
66
]
77

8+
[tool.setuptools_scm]
9+
write_to = "src/pluggy/_version.py"
10+
811
[tool.towncrier]
912
package = "pluggy"
1013
package_dir = "src/pluggy"

setup.cfg

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,50 @@
22
universal=1
33

44
[metadata]
5-
license_file=LICENSE
5+
name = pluggy
6+
description = plugin and hook calling mechanisms for python
7+
long_description = file: README.rst
8+
long_description_content_type = text/x-rst
9+
license = MIT
10+
platforms = unix, linux, osx, win32
11+
author = Holger Krekel
12+
author_email = [email protected]
13+
url = https://github.com/pytest-dev/pluggy
14+
classifiers =
15+
Development Status :: 6 - Mature
16+
Intended Audience :: Developers
17+
License :: OSI Approved :: MIT License
18+
Operating System :: POSIX
19+
Operating System :: Microsoft :: Windows
20+
Operating System :: MacOS :: MacOS X
21+
Topic :: Software Development :: Testing
22+
Topic :: Software Development :: Libraries
23+
Topic :: Utilities
24+
Programming Language :: Python :: Implementation :: CPython
25+
Programming Language :: Python :: Implementation :: PyPy
26+
Programming Language :: Python :: 3
27+
Programming Language :: Python :: 3 :: Only
28+
Programming Language :: Python :: 3.6
29+
Programming Language :: Python :: 3.7
30+
Programming Language :: Python :: 3.8
31+
Programming Language :: Python :: 3.9
32+
33+
[options]
34+
packages =
35+
pluggy
36+
install_requires =
37+
importlib-metadata>=0.12;python_version<"3.8"
38+
python_requires = >=3.6
39+
package_dir =
40+
=src
41+
setup_requires =
42+
setuptools-scm
43+
[options.extras_require]
44+
dev =
45+
pre-commit
46+
tox
47+
testing =
48+
pytest
649

750
[devpi:upload]
851
formats=sdist.tgz,bdist_wheel

setup.py

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,5 @@
11
from setuptools import setup
22

3-
classifiers = [
4-
"Development Status :: 4 - Beta",
5-
"Intended Audience :: Developers",
6-
"License :: OSI Approved :: MIT License",
7-
"Operating System :: POSIX",
8-
"Operating System :: Microsoft :: Windows",
9-
"Operating System :: MacOS :: MacOS X",
10-
"Topic :: Software Development :: Testing",
11-
"Topic :: Software Development :: Libraries",
12-
"Topic :: Utilities",
13-
"Programming Language :: Python :: Implementation :: CPython",
14-
"Programming Language :: Python :: Implementation :: PyPy",
15-
"Programming Language :: Python :: 3 :: Only",
16-
] + [("Programming Language :: Python :: %s" % x) for x in "3 3.5 3.6 3.7 3.8".split()]
17-
18-
with open("README.rst", "rb") as fd:
19-
long_description = fd.read().decode("utf-8")
20-
21-
with open("CHANGELOG.rst", "rb") as fd:
22-
long_description += "\n\n" + fd.read().decode("utf-8")
23-
24-
EXTRAS_REQUIRE = {
25-
"dev": ["pre-commit", "tox"],
26-
"testing": ["pytest"],
27-
}
28-
29-
30-
def main():
31-
setup(
32-
name="pluggy",
33-
description="plugin and hook calling mechanisms for python",
34-
long_description=long_description,
35-
use_scm_version={"write_to": "src/pluggy/_version.py"},
36-
setup_requires=["setuptools-scm"],
37-
license="MIT license",
38-
platforms=["unix", "linux", "osx", "win32"],
39-
author="Holger Krekel",
40-
author_email="[email protected]",
41-
url="https://github.com/pytest-dev/pluggy",
42-
python_requires=">=3.5",
43-
install_requires=['importlib-metadata>=0.12;python_version<"3.8"'],
44-
extras_require=EXTRAS_REQUIRE,
45-
classifiers=classifiers,
46-
packages=["pluggy"],
47-
package_dir={"": "src"},
48-
)
49-
503

514
if __name__ == "__main__":
52-
main()
5+
setup()

tox.ini

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[tox]
2-
envlist=linting,docs,py{35,36,37,38,py3},py{36,37}-pytest{master}
2+
envlist=linting,docs,py{36,37,38,39,py3},py{36,37}-pytest{main}
33

44
[testenv]
55
commands=
@@ -18,7 +18,9 @@ deps=
1818
commands=pytest {posargs:testing/benchmark.py}
1919
deps=
2020
pytest
21-
pytest-benchmark
21+
# Once pytest lifts its pluggy<1.0 constraint, the pytest-benchmark
22+
# constraint can be removed.
23+
pytest-benchmark==3.1.1
2224

2325
[testenv:linting]
2426
skip_install = true

0 commit comments

Comments
 (0)