diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ccb2afcaa..c7c16bc2a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.7, 3.8] + python-version: ['3.8', '3.9', '3.10', '3.11'] steps: - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # 3.1.0 - name: Download distribution artifact diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 395f064b6..bb194c6d8 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.7, 3.8] + python-version: ['3.8', '3.9', '3.10', '3.11'] name: Python ${{ matrix.python-version }} steps: diff --git a/README.md b/README.md index 541026631..97043d0ca 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ Run 'perceval --help' to get information about a specific backend. ## Requirements - * Python >= 3.7 + * Python >= 3.8 * Poetry >= 1.2 * git * build-essential diff --git a/poetry.lock b/poetry.lock index 714bde9dc..a8050eb27 100644 --- a/poetry.lock +++ b/poetry.lock @@ -469,7 +469,6 @@ files = [ ] [package.dependencies] -importlib-metadata = {version = "<4.3", markers = "python_version < \"3.8\""} mccabe = ">=0.6.0,<0.7.0" pycodestyle = ">=2.8.0,<2.9.0" pyflakes = ">=2.4.0,<2.5.0" @@ -542,22 +541,28 @@ files = [ [[package]] name = "importlib-metadata" -version = "4.2.0" +version = "6.6.0" description = "Read metadata from Python packages" +<<<<<<< HEAD optional = false python-versions = ">=3.6" +======= +category = "main" +optional = true +python-versions = ">=3.7" +>>>>>>> 7743d4a (Drop Python 3.7 support) files = [ - {file = "importlib_metadata-4.2.0-py3-none-any.whl", hash = "sha256:057e92c15bc8d9e8109738a48db0ccb31b4d9d5cfbee5a8670879a30be66304b"}, - {file = "importlib_metadata-4.2.0.tar.gz", hash = "sha256:b7e52a1f8dec14a75ea73e0891f3060099ca1d8e6a462a4dff11c3e119ea1b31"}, + {file = "importlib_metadata-6.6.0-py3-none-any.whl", hash = "sha256:43dd286a2cd8995d5eaef7fee2066340423b818ed3fd70adf0bad5f1fac53fed"}, + {file = "importlib_metadata-6.6.0.tar.gz", hash = "sha256:92501cdf9cc66ebd3e612f1b4f0c0765dfa42f0fa38ffb319b6bd84dd675d705"}, ] [package.dependencies] -typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""} zipp = ">=0.5" [package.extras] -docs = ["jaraco.packaging (>=8.2)", "rst.linker (>=1.9)", "sphinx"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pep517", "pyfakefs", "pytest (>=4.6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy"] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] [[package]] name = "jinja2" @@ -589,7 +594,6 @@ files = [ [package.dependencies] attrs = ">=19,<22" -typing-extensions = {version = ">=3.7.4", markers = "python_version < \"3.8\""} [package.extras] code-style = ["pre-commit (==2.6)"] @@ -887,6 +891,7 @@ socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] +<<<<<<< HEAD name = "setuptools" version = "68.0.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" @@ -903,6 +908,8 @@ testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[l testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] +======= +>>>>>>> 7743d4a (Drop Python 3.7 support) name = "sgmllib3k" version = "1.0.0" description = "Py3k port of sgmllib." @@ -947,13 +954,13 @@ files = [ [[package]] name = "sphinx" -version = "4.3.2" +version = "4.5.0" description = "Python documentation generator" optional = true python-versions = ">=3.6" files = [ - {file = "Sphinx-4.3.2-py3-none-any.whl", hash = "sha256:6a11ea5dd0bdb197f9c2abc2e0ce73e01340464feaece525e64036546d24c851"}, - {file = "Sphinx-4.3.2.tar.gz", hash = "sha256:0a8836751a68306b3fe97ecbe44db786f8479c3bf4b80e3a7f5c838657b4698c"}, + {file = "Sphinx-4.5.0-py3-none-any.whl", hash = "sha256:ebf612653238bcc8f4359627a9b7ce44ede6fdd75d9d30f68255c7383d3a6226"}, + {file = "Sphinx-4.5.0.tar.gz", hash = "sha256:7bf8ca9637a4ee15af412d1a1d9689fec70523a68ca9bb9127c2f3eeb344e2e6"}, ] [package.dependencies] @@ -962,11 +969,11 @@ babel = ">=1.3" colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} docutils = ">=0.14,<0.18" imagesize = "*" +importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} Jinja2 = ">=2.3" packaging = "*" Pygments = ">=2.0" requests = ">=2.5.0" -setuptools = "*" snowballstemmer = ">=1.1" sphinxcontrib-applehelp = "*" sphinxcontrib-devhelp = "*" @@ -977,18 +984,24 @@ sphinxcontrib-serializinghtml = ">=1.1.5" [package.extras] docs = ["sphinxcontrib-websupport"] -lint = ["docutils-stubs", "flake8 (>=3.5.0)", "isort", "mypy (>=0.920)", "types-pkg-resources", "types-requests", "types-typed-ast"] +lint = ["docutils-stubs", "flake8 (>=3.5.0)", "isort", "mypy (>=0.931)", "types-requests", "types-typed-ast"] test = ["cython", "html5lib", "pytest", "pytest-cov", "typed-ast"] [[package]] name = "sphinxcontrib-applehelp" +<<<<<<< HEAD version = "1.0.2" description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books" +======= +version = "1.0.4" +description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +category = "main" +>>>>>>> 7743d4a (Drop Python 3.7 support) optional = true -python-versions = ">=3.5" +python-versions = ">=3.8" files = [ - {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"}, - {file = "sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a"}, + {file = "sphinxcontrib-applehelp-1.0.4.tar.gz", hash = "sha256:828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e"}, + {file = "sphinxcontrib_applehelp-1.0.4-py3-none-any.whl", hash = "sha256:29d341f67fb0f6f586b23ad80e072c8e6ad0b48417db2bde114a4c9746feb228"}, ] [package.extras] @@ -1012,13 +1025,13 @@ test = ["pytest"] [[package]] name = "sphinxcontrib-htmlhelp" -version = "2.0.0" +version = "2.0.1" description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" optional = true -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "sphinxcontrib-htmlhelp-2.0.0.tar.gz", hash = "sha256:f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2"}, - {file = "sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl", hash = "sha256:d412243dfb797ae3ec2b59eca0e52dac12e75a241bf0e4eb861e450d06c6ed07"}, + {file = "sphinxcontrib-htmlhelp-2.0.1.tar.gz", hash = "sha256:0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff"}, + {file = "sphinxcontrib_htmlhelp-2.0.1-py3-none-any.whl", hash = "sha256:c38cb46dccf316c79de6e5515e1770414b797162b23cd3d06e67020e1d2a6903"}, ] [package.extras] @@ -1070,6 +1083,7 @@ lint = ["docutils-stubs", "flake8", "mypy"] test = ["pytest"] [[package]] +<<<<<<< HEAD name = "typing-extensions" version = "4.7.1" description = "Backported and Experimental Type Hints for Python 3.7+" @@ -1081,6 +1095,8 @@ files = [ ] [[package]] +======= +>>>>>>> 7743d4a (Drop Python 3.7 support) name = "urllib3" version = "1.26.16" description = "HTTP library with thread-safe connection pooling, file post, and more." @@ -1100,7 +1116,12 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] name = "zipp" version = "3.15.0" description = "Backport of pathlib-compatible object wrapper for zip files" +<<<<<<< HEAD optional = false +======= +category = "main" +optional = true +>>>>>>> 7743d4a (Drop Python 3.7 support) python-versions = ">=3.7" files = [ {file = "zipp-3.15.0-py3-none-any.whl", hash = "sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556"}, @@ -1116,5 +1137,10 @@ docs = ["furo", "myst-parser"] [metadata] lock-version = "2.0" +<<<<<<< HEAD python-versions = "^3.7" content-hash = "8938787ca685692ad83232788c1240dba0c13b4f2ca894614d0988312de0aab8" +======= +python-versions = "^3.8" +content-hash = "5c3829739aee60c9bee7e86f93e79f146f8e44652a8bb2eccb81e4d2194cd903" +>>>>>>> 7743d4a (Drop Python 3.7 support) diff --git a/pyproject.toml b/pyproject.toml index 9454a427e..11d650591 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -44,7 +44,7 @@ classifiers = [ perceval = 'perceval.perceval:main' [tool.poetry.dependencies] -python = "^3.7" +python = "^3.8" python-dateutil = "^2.6.0" requests = "^2.7.0" diff --git a/releases/unreleased/drop-python-37-support.yml b/releases/unreleased/drop-python-37-support.yml new file mode 100644 index 000000000..983f6d5ba --- /dev/null +++ b/releases/unreleased/drop-python-37-support.yml @@ -0,0 +1,9 @@ +--- +title: Drop Python 3.7 support +category: removed +author: Jose Javier Merchante +issue: null +notes: > + Python 3.7 reaches the end of life in June 2023. This means it + won't receive new updates or patches to fix security issues. + Therefore, this package only works with Python >= 3.8 from now on.