Drop support for Python 3.7

This commit is contained in:
Tobias Gruetzmacher 2024-02-18 17:26:54 +01:00
parent 7b9ca867fb
commit 15423eab21
No known key found for this signature in database
7 changed files with 11 additions and 22 deletions

View file

@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

1
Jenkinsfile vendored
View file

@ -4,7 +4,6 @@ def pys = [
[name: 'Python 3.10', docker: '3.10-bookworm', tox:'py310', main: false], [name: 'Python 3.10', docker: '3.10-bookworm', tox:'py310', main: false],
[name: 'Python 3.9', docker: '3.9-bookworm', tox:'py39', main: false], [name: 'Python 3.9', docker: '3.9-bookworm', tox:'py39', main: false],
[name: 'Python 3.8', docker: '3.8-bookworm', tox:'py38', main: false], [name: 'Python 3.8', docker: '3.8-bookworm', tox:'py38', main: false],
[name: 'Python 3.7', docker: '3.7-bookworm', tox:'py37', main: false],
] ]
properties([ properties([

View file

@ -72,7 +72,7 @@ are old enough to view them.
### Dependencies ### Dependencies
Since dosage is written in [Python](http://www.python.org/), a Python Since dosage is written in [Python](http://www.python.org/), a Python
installation is required: Dosage needs at least Python 3.7. Dosage requires installation is required: Dosage needs at least Python 3.8. Dosage requires
some Python modules from PyPI, so installation with `pip` is recommended. some Python modules from PyPI, so installation with `pip` is recommended.
### Using the Windows binary ### Using the Windows binary

View file

@ -1,7 +1,7 @@
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
# Copyright (C) 2004-2008 Tristan Seligmann and Jonathan Jacobs # SPDX-FileCopyrightText: © 2004 Tristan Seligmann and Jonathan Jacobs
# Copyright (C) 2012-2014 Bastian Kleineidam # SPDX-FileCopyrightText: © 2012 Bastian Kleineidam
# Copyright (C) 2015-2019 Tobias Gruetzmacher # SPDX-FileCopyrightText: © 2015 Tobias Gruetzmacher
""" """
Automated comic downloader. Dosage traverses comic websites in Automated comic downloader. Dosage traverses comic websites in
order to download each strip of the comic. The intended use is for order to download each strip of the comic. The intended use is for
@ -14,14 +14,11 @@ The primary interface is the 'dosage' commandline script.
Comic modules for each comic are located in L{dosagelib.plugins}. Comic modules for each comic are located in L{dosagelib.plugins}.
""" """
try:
from importlib.metadata import version, PackageNotFoundError from importlib.metadata import version, PackageNotFoundError
except ImportError:
from importlib_metadata import version, PackageNotFoundError
from .output import out from .output import out
AppName = u'dosage' AppName = 'dosage'
try: try:
__version__ = version(AppName) # PEP 396 __version__ = version(AppName) # PEP 396
except PackageNotFoundError: except PackageNotFoundError:

View file

@ -4,10 +4,7 @@
# SPDX-FileCopyrightText: © 2015 Tobias Gruetzmacher # SPDX-FileCopyrightText: © 2015 Tobias Gruetzmacher
# SPDX-FileCopyrightText: © 2019 Daniel Ring # SPDX-FileCopyrightText: © 2019 Daniel Ring
from re import compile, escape, MULTILINE from re import compile, escape, MULTILINE
try:
from functools import cached_property from functools import cached_property
except ImportError:
from cached_property import cached_property
from ..scraper import _BasicScraper, _ParserScraper, ParserScraper from ..scraper import _BasicScraper, _ParserScraper, ParserScraper
from ..helpers import indirectStarter, joinPathPartsNamer from ..helpers import indirectStarter, joinPathPartsNamer

View file

@ -17,7 +17,6 @@ classifiers = [
"Programming Language :: Python", "Programming Language :: Python",
"Programming Language :: Python :: 3", "Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.10",
@ -27,15 +26,13 @@ classifiers = [
"Topic :: Multimedia :: Graphics", "Topic :: Multimedia :: Graphics",
] ]
keywords = ["comic", "webcomic", "downloader", "archiver", "crawler"] keywords = ["comic", "webcomic", "downloader", "archiver", "crawler"]
requires-python = ">=3.7" requires-python = ">=3.8"
dependencies = [ dependencies = [
"colorama", "colorama",
"imagesize", "imagesize",
"lxml>=4.0.0", "lxml>=4.0.0",
"platformdirs", "platformdirs",
"requests>=2.0", "requests>=2.0",
"cached_property;python_version<'3.8'",
"importlib_metadata;python_version<'3.8'",
"importlib_resources>=5.0.0;python_version<'3.9'", "importlib_resources>=5.0.0;python_version<'3.9'",
] ]
dynamic = ["version"] dynamic = ["version"]
@ -101,7 +98,7 @@ ignore = [
] ]
noqa-require-code = true noqa-require-code = true
no-accept-encodings = true no-accept-encodings = true
min-version = "3.7" min-version = "3.8"
extend-exclude = [ extend-exclude = [
'.venv', '.venv',
'build', 'build',

View file

@ -1,10 +1,9 @@
[tox] [tox]
envlist = py37, py38, py39, py310, py311, py312, flake8 envlist = py38, py39, py310, py311, py312, flake8
isolated_build = True isolated_build = True
[gh-actions] [gh-actions]
python = python =
3.7: py37
3.8: py38 3.8: py38
3.9: py39 3.9: py39
3.10: py310 3.10: py310