소스 검색

Use generic alias types

This requires at least Python 3.9.
tags/v1.0
JustAnotherArchivist 1 년 전
부모
커밋
e3da8c7736
2개의 변경된 파일9개의 추가작업 그리고 8개의 파일을 삭제
  1. +5
    -5
      codearchiver/core.py
  2. +4
    -3
      setup.py

+ 5
- 5
codearchiver/core.py 파일 보기

@@ -59,10 +59,10 @@ class Result:
id: str
'''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'''

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'''


@@ -89,9 +89,9 @@ class HttpClient:
url,
params = None,
data = None,
headers: typing.Optional[typing.Dict[str, str]] = None,
headers: typing.Optional[dict[str, str]] = None,
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:
'''
Make an HTTP request
@@ -163,7 +163,7 @@ class HttpClient:
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.'''

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

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


+ 4
- 3
setup.py 파일 보기

@@ -9,11 +9,12 @@ setuptools.setup(
classifiers = [
'Development Status :: 3 - Alpha',
'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'],
python_requires = '~=3.9',
setup_requires = ['setuptools_scm'],
use_scm_version = True,
install_requires = ['requests[socks]'],


불러오는 중...
취소
저장