Browse Source

Use generic alias types

This requires at least Python 3.9.
tags/v1.0
JustAnotherArchivist 1 year ago
parent
commit
e3da8c7736
2 changed files with 9 additions and 8 deletions
  1. +5
    -5
      codearchiver/core.py
  2. +4
    -3
      setup.py

+ 5
- 5
codearchiver/core.py View File

@@ -59,10 +59,10 @@ class Result:
id: str id: str
'''A unique ID for this result''' '''A unique ID for this result'''


files: typing.List[str] = dataclasses.field(default_factory = list)
files: list[str] = dataclasses.field(default_factory = list)
'''List of filenames produced by the run''' '''List of filenames produced by the run'''


submoduleResults: typing.List[typing.Tuple['Module', 'Result']] = dataclasses.field(default_factory = list)
submoduleResults: list[tuple['Module', 'Result']] = dataclasses.field(default_factory = list)
'''List of related submodules and their results''' '''List of related submodules and their results'''




@@ -89,9 +89,9 @@ class HttpClient:
url, url,
params = None, params = None,
data = None, data = None,
headers: typing.Optional[typing.Dict[str, str]] = None,
headers: typing.Optional[dict[str, str]] = None,
timeout: int = 10, timeout: int = 10,
responseOkCallback: typing.Optional[typing.Callable[[requests.Response], typing.Tuple[bool, typing.Optional[str]]]] = None,
responseOkCallback: typing.Optional[typing.Callable[[requests.Response], tuple[bool, typing.Optional[str]]]] = None,
) -> requests.Response: ) -> requests.Response:
''' '''
Make an HTTP request Make an HTTP request
@@ -163,7 +163,7 @@ class HttpClient:
class ModuleMeta(type): class ModuleMeta(type):
'''Metaclass of modules. This is used to keep track of which modules exist and selecting them. It also enforces module name restrictions and prevents name collisions.''' '''Metaclass of modules. This is used to keep track of which modules exist and selecting them. It also enforces module name restrictions and prevents name collisions.'''


__modulesByName: typing.Dict[str, typing.Type['Module']] = {}
__modulesByName: dict[str, typing.Type['Module']] = {}


def __new__(cls, *args, **kwargs): def __new__(cls, *args, **kwargs):
class_ = super().__new__(cls, *args, **kwargs) class_ = super().__new__(cls, *args, **kwargs)


+ 4
- 3
setup.py View File

@@ -9,11 +9,12 @@ setuptools.setup(
classifiers = [ classifiers = [
'Development Status :: 3 - Alpha', 'Development Status :: 3 - Alpha',
'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)', 'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
], ],
packages = ['codearchiver', 'codearchiver.modules'], packages = ['codearchiver', 'codearchiver.modules'],
python_requires = '~=3.9',
setup_requires = ['setuptools_scm'], setup_requires = ['setuptools_scm'],
use_scm_version = True, use_scm_version = True,
install_requires = ['requests[socks]'], install_requires = ['requests[socks]'],


Loading…
Cancel
Save