From ff86e386d0647578261326028a5520cf264e0b60 Mon Sep 17 00:00:00 2001 From: ekneg54 Date: Mon, 2 Oct 2023 13:18:59 +0000 Subject: [PATCH] add support python 3.12 and drop support python 3.9 --- .devcontainer/devcontainer.json | 4 +- .github/workflows/ci.yml | 10 +- .github/workflows/main.yml | 6 +- .../publish-latest-dev-release-to-pypi.yml | 4 +- .github/workflows/publish-release-to-pypi.yml | 4 +- .readthedocs.yaml | 2 +- .vscode/settings.json | 7 +- Dockerfile | 2 +- README.md | 14 +- doc/source/getting_started.rst | 2 +- pyproject.toml | 2 +- requirements.in | 2 +- requirements.txt | 165 ++++----- requirements_dev.txt | 322 +++++++++--------- setup.py | 4 +- versioneer.py | 9 +- 16 files changed, 282 insertions(+), 277 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 2898c57cb..08df8e873 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -9,7 +9,7 @@ // Update 'VARIANT' to pick a Python version: 3, 3.10, 3.9, 3.8, 3.7, 3.6 // Append -bullseye or -buster to pin to an OS version. // Use -bullseye variants on local on arm64/Apple Silicon. - "VARIANT": "3.11", + "VARIANT": "3.12", // Options "NODE_VERSION": "none" } @@ -40,4 +40,4 @@ // "postCreateCommand": "pip3 install --user -r requirements.txt", // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. "remoteUser": "vscode" -} +} \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index efa6a4aff..9a90f0d5e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: - python-version: ["3.9"] + python-version: ["3.10"] steps: - uses: actions/checkout@v3 @@ -56,7 +56,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v3 @@ -88,7 +88,7 @@ jobs: strategy: matrix: - python-version: ["3.9"] + python-version: ["3.10"] steps: - uses: actions/checkout@v3 @@ -117,7 +117,7 @@ jobs: strategy: matrix: - python-version: ["3.9"] + python-version: ["3.10"] steps: - uses: actions/checkout@v3 @@ -165,7 +165,7 @@ jobs: containerbuild: strategy: matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11", "3."] runs-on: ubuntu-latest steps: diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 87828b172..a2fdabec0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: - python-version: ["3.9"] + python-version: ["3.10"] steps: - uses: actions/checkout@v3 @@ -54,7 +54,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v3 @@ -86,7 +86,7 @@ jobs: strategy: matrix: - python-version: ["3.9"] + python-version: ["3.10"] steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/publish-latest-dev-release-to-pypi.yml b/.github/workflows/publish-latest-dev-release-to-pypi.yml index 5e9fac4cc..c80893953 100644 --- a/.github/workflows/publish-latest-dev-release-to-pypi.yml +++ b/.github/workflows/publish-latest-dev-release-to-pypi.yml @@ -17,7 +17,7 @@ jobs: - name: Initialize Python uses: actions/setup-python@v1 with: - python-version: 3.9 + python-version: 3.10 - name: Install dependencies run: | @@ -39,7 +39,7 @@ jobs: containerbuild: strategy: matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11", "3.12"] runs-on: ubuntu-latest steps: diff --git a/.github/workflows/publish-release-to-pypi.yml b/.github/workflows/publish-release-to-pypi.yml index 07882de4e..c63ae75ff 100644 --- a/.github/workflows/publish-release-to-pypi.yml +++ b/.github/workflows/publish-release-to-pypi.yml @@ -16,7 +16,7 @@ jobs: - name: Initialize Python uses: actions/setup-python@v1 with: - python-version: 3.9 + python-version: 3.10 cache: "pip" - name: Install dependencies @@ -36,7 +36,7 @@ jobs: containerbuild: strategy: matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11", "3.12"] runs-on: ubuntu-latest steps: diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 2daba0585..b9163f614 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -11,7 +11,7 @@ build: apt_packages: - "pandoc" tools: - python: "3.9" + python: "3.10" # You can also specify other tool versions: # nodejs: "16" # rust: "1.55" diff --git a/.vscode/settings.json b/.vscode/settings.json index b3111587e..a109cc13c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,7 +2,7 @@ "python.testing.pytestEnabled": true, "python.testing.unittestEnabled": false, "python.linting.enabled": true, - "python.formatting.provider": "black", + "python.formatting.provider": "none", "python.analysis.importFormat": "absolute", "editor.formatOnSave": true, "python.linting.pylintEnabled": true, @@ -26,5 +26,8 @@ "**/*.pyc": true, "**/.profile": true }, - "python.analysis.typeCheckingMode": "off" + "python.analysis.typeCheckingMode": "off", + "[python]": { + "editor.defaultFormatter": "ms-python.black-formatter" + } } \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 75fe27929..1ee257724 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -ARG PYTHON_VERSION=3.9 +ARG PYTHON_VERSION=3.10 FROM python:${PYTHON_VERSION}-bullseye as build ARG LOGPREP_VERSION=latest diff --git a/README.md b/README.md index 4fe3390d5..d26602ee8 100644 --- a/README.md +++ b/README.md @@ -236,7 +236,7 @@ Details about the rule language and how to write rules for the processors can be ### Installation -Python should be present on the system, currently supported are the versions 3.9 - 3.11. +Python should be present on the system, currently supported are the versions 3.10 - 3.12. To install Logprep you have following options: @@ -283,16 +283,16 @@ Those can be executed via: `tox -e [name of the test environment]`. For Example: ``` -tox -e py39-all +tox -e py310-all ``` This runs all tests, calculates the test coverage and evaluates the code quality for the python -3.9 version. +3.10 version. Multiple environments can be tested within one call: ``` -tox -e py39-all -e py310-all -e py311-all +tox -e py310-all -e py311-all -e py312-all ``` If you want to run them in parallel attach the option `-p`. @@ -308,7 +308,7 @@ tox -av In case the requirements change, the test environments must be rebuilt with the parameter `-r`: ``` -tox -e py39 -e py310 -e py311 -r +tox -e py310 -e py311 -e py312 -r ``` ### Semgrep @@ -322,7 +322,7 @@ pip install semgrep Afterwards you can just call the tox environment with for example ``` -tox -e py39-semgrep +tox -e py310-semgrep ``` ### Running Logprep @@ -461,7 +461,7 @@ Building the documentation is done by executing the following command from withi the project root directory: ``` -tox -e py39-docs +tox -e py310-docs ``` A HTML documentation can be then found in `doc/_build/html/index.html`. diff --git a/doc/source/getting_started.rst b/doc/source/getting_started.rst index d17a60b59..5f5a63afe 100644 --- a/doc/source/getting_started.rst +++ b/doc/source/getting_started.rst @@ -5,7 +5,7 @@ Getting Started Installation ============ -Python should be present on the system. Currently, Python 3.9 - 3.11 are supported. +Python should be present on the system. Currently, Python 3.10 - 3.12 are supported. To install Logprep you have following options: **1. Option:** Installation via PyPI: diff --git a/pyproject.toml b/pyproject.toml index 99ee5f2d2..f437c0e08 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.black] line-length = 100 -target-version = ['py39', 'py310', 'py311'] +target-version = ['py310', 'py311', 'py312] [tool.isort] profile = "black" diff --git a/requirements.in b/requirements.in index 4e937c97e..c47e96519 100644 --- a/requirements.in +++ b/requirements.in @@ -10,7 +10,7 @@ hyperscan>=0.4.0; sys_platform == 'linux' and platform_machine == 'x86_64' jsonref luqum mysql-connector-python -numpy>=1.24.1 +numpy>=1.26.0 opensearch-py prometheus_client protobuf>=3.20.2 diff --git a/requirements.txt b/requirements.txt index 1f1a8a4bb..791fcf510 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,67 +1,69 @@ # -# This file is autogenerated by pip-compile with Python 3.9 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile --resolver=backtracking requirements.in +# pip-compile ./requirements.in # -aiohttp==3.8.4 +aiohttp==3.8.5 # via geoip2 aiosignal==1.3.1 # via aiohttp -anyio==3.7.0 - # via starlette -async-timeout==4.0.2 +annotated-types==0.5.0 + # via pydantic +anyio==3.7.1 + # via + # fastapi + # starlette +async-timeout==4.0.3 # via aiohttp attrs==23.1.0 # via - # -r requirements.in + # -r ./requirements.in # aiohttp -boto3==1.26.146 - # via -r requirements.in -botocore==1.29.146 +boto3==1.28.57 + # via -r ./requirements.in +botocore==1.31.57 # via # boto3 # s3transfer -certifi==2023.5.7 +certifi==2023.7.22 # via - # -r requirements.in + # -r ./requirements.in # elasticsearch # opensearch-py # requests -charset-normalizer==3.1.0 +charset-normalizer==3.3.0 # via # aiohttp # requests ciso8601==2.3.0 - # via -r requirements.in -click==8.1.3 + # via -r ./requirements.in +click==8.1.7 # via uvicorn colorama==0.4.6 - # via -r requirements.in -confluent-kafka==2.1.1 - # via -r requirements.in -deepdiff==6.3.0 - # via -r requirements.in + # via -r ./requirements.in +confluent-kafka==2.2.0 + # via -r ./requirements.in +deepdiff==6.5.0 + # via -r ./requirements.in elasticsearch==7.17.9 - # via -r requirements.in -exceptiongroup==1.1.1 - # via anyio -fastapi==0.96.0 - # via -r requirements.in -filelock==3.12.0 + # via -r ./requirements.in +fastapi==0.103.2 + # via -r ./requirements.in +filelock==3.12.4 # via # tldextract # urlextract -frozenlist==1.3.3 +frozenlist==1.4.0 # via # aiohttp # aiosignal geoip2==4.7.0 - # via -r requirements.in + # via -r ./requirements.in h11==0.14.0 # via uvicorn hyperscan==0.4.0 ; sys_platform == "linux" and platform_machine == "x86_64" - # via -r requirements.in + # via -r ./requirements.in idna==3.4 # via # anyio @@ -73,83 +75,83 @@ jmespath==1.0.1 # via # boto3 # botocore -joblib==1.2.0 +joblib==1.3.2 # via - # -r requirements.in + # -r ./requirements.in # scikit-learn jsonref==1.1.0 - # via -r requirements.in + # via -r ./requirements.in luqum==0.13.0 - # via -r requirements.in -maxminddb==2.3.0 + # via -r ./requirements.in +maxminddb==2.4.0 # via geoip2 -msgspec==0.15.1 - # via -r requirements.in +msgspec==0.18.2 + # via -r ./requirements.in multidict==6.0.4 # via # aiohttp # yarl -mysql-connector-python==8.0.33 - # via -r requirements.in -numpy==1.24.3 +mysql-connector-python==8.1.0 + # via -r ./requirements.in +numpy==1.26.0 # via - # -r requirements.in + # -r ./requirements.in # scikit-learn # scipy -opensearch-py==2.2.0 - # via -r requirements.in +opensearch-py==2.3.1 + # via -r ./requirements.in ordered-set==4.1.0 # via deepdiff -platformdirs==3.5.1 +platformdirs==3.10.0 # via urlextract ply==3.11 # via luqum -prometheus-client==0.17.0 - # via -r requirements.in -protobuf==3.20.3 +prometheus-client==0.17.1 + # via -r ./requirements.in +protobuf==4.21.12 # via - # -r requirements.in + # -r ./requirements.in # mysql-connector-python -pycryptodome==3.18.0 - # via -r requirements.in -pydantic==1.10.8 +pycryptodome==3.19.0 + # via -r ./requirements.in +pydantic==2.4.2 # via fastapi +pydantic-core==2.10.1 + # via pydantic pygrok==1.0.0 - # via -r requirements.in -pyparsing==3.0.9 - # via -r requirements.in + # via -r ./requirements.in +pyparsing==3.1.1 + # via -r ./requirements.in python-dateutil==2.8.2 # via # botocore # opensearch-py -pytz==2023.3 - # via -r requirements.in -pyyaml==6.0 - # via -r requirements.in -regex==2023.6.3 +pytz==2023.3.post1 + # via -r ./requirements.in +pyyaml==6.0.1 + # via -r ./requirements.in +regex==2023.8.8 # via pygrok requests==2.31.0 # via - # -r requirements.in + # -r ./requirements.in # geoip2 # opensearch-py # requests-file # tldextract requests-file==1.5.1 # via tldextract -ruamel-yaml==0.17.31 - # via -r requirements.in -ruamel-yaml-clib==0.2.7 - # via ruamel-yaml -s3transfer==0.6.1 +ruamel-yaml==0.17.33 + # via -r ./requirements.in +s3transfer==0.7.0 # via boto3 -schedule==1.2.0 - # via -r requirements.in -scikit-learn==1.2.2 - # via -r requirements.in -scipy==1.10.1 +schedule==1.2.1 + # via -r ./requirements.in +scikit-learn==1.3.1 + # via -r ./requirements.in +scipy==1.11.3 # via - # -r requirements.in + # -r ./requirements.in # scikit-learn six==1.16.0 # via @@ -160,27 +162,28 @@ sniffio==1.3.0 # via anyio starlette==0.27.0 # via fastapi -threadpoolctl==3.1.0 +threadpoolctl==3.2.0 # via scikit-learn -tldextract==3.4.4 - # via -r requirements.in -typing-extensions==4.6.3 +tldextract==3.6.0 + # via -r ./requirements.in +typing-extensions==4.8.0 # via + # fastapi # pydantic - # starlette -uritools==4.0.1 + # pydantic-core +uritools==4.0.2 # via urlextract urlextract==1.8.0 - # via -r requirements.in + # via -r ./requirements.in urllib3==1.26.16 # via # botocore # elasticsearch # opensearch-py # requests -uvicorn==0.22.0 - # via -r requirements.in -wheel==0.40.0 - # via -r requirements.in +uvicorn==0.23.2 + # via -r ./requirements.in +wheel==0.41.2 + # via -r ./requirements.in yarl==1.9.2 # via aiohttp diff --git a/requirements_dev.txt b/requirements_dev.txt index ec250de75..0acbc6d5e 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -1,128 +1,129 @@ # -# This file is autogenerated by pip-compile with Python 3.9 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile --resolver=backtracking requirements_dev.in +# pip-compile ./requirements_dev.in # -aiohttp==3.8.4 +aiohttp==3.8.5 # via - # -r requirements.txt + # -r ./requirements.txt # geoip2 aiosignal==1.3.1 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp -anyio==3.7.0 +annotated-types==0.5.0 # via - # -r requirements.txt + # -r ./requirements.txt + # pydantic +anyio==3.7.1 + # via + # -r ./requirements.txt + # fastapi # httpcore # starlette -astroid==2.15.5 +astroid==2.15.8 # via pylint -async-timeout==4.0.2 +async-timeout==4.0.3 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp attrs==23.1.0 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp # glom # jsonschema + # referencing # semgrep -black==23.3.0 - # via -r requirements_dev.in +black==23.9.1 + # via -r ./requirements_dev.in boltons==21.0.0 # via # face # glom # semgrep -boto3==1.26.146 - # via -r requirements.txt -botocore==1.29.146 +boto3==1.28.57 + # via -r ./requirements.txt +botocore==1.31.57 # via - # -r requirements.txt + # -r ./requirements.txt # boto3 # s3transfer -bracex==2.3.post1 +bracex==2.4 # via wcmatch -certifi==2023.5.7 +certifi==2023.7.22 # via - # -r requirements.txt + # -r ./requirements.txt # elasticsearch # httpcore # httpx # opensearch-py # requests -charset-normalizer==3.1.0 +charset-normalizer==3.3.0 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp # requests ciso8601==2.3.0 - # via -r requirements.txt -click==8.1.3 + # via -r ./requirements.txt +click==8.1.7 # via - # -r requirements.txt + # -r ./requirements.txt # black # click-option-group # semgrep # uvicorn -click-option-group==0.5.5 +click-option-group==0.5.6 # via semgrep colorama==0.4.6 # via - # -r requirements.txt + # -r ./requirements.txt # semgrep -confluent-kafka==2.1.1 - # via -r requirements.txt -coverage[toml]==7.2.7 +confluent-kafka==2.2.0 + # via -r ./requirements.txt +coverage[toml]==7.3.1 # via pytest-cov -deepdiff==6.3.0 - # via -r requirements.txt +deepdiff==6.5.0 + # via -r ./requirements.txt defusedxml==0.7.1 # via semgrep -dill==0.3.6 +dill==0.3.7 # via pylint elasticsearch==7.17.9 - # via -r requirements.txt -exceptiongroup==1.1.1 - # via - # -r requirements.txt - # anyio - # pytest + # via -r ./requirements.txt face==22.0.0 # via glom -fastapi==0.96.0 - # via -r requirements.txt -filelock==3.12.0 +fastapi==0.103.2 + # via -r ./requirements.txt +filelock==3.12.4 # via - # -r requirements.txt + # -r ./requirements.txt # tldextract # urlextract -frozenlist==1.3.3 +frozenlist==1.4.0 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp # aiosignal geoip2==4.7.0 - # via -r requirements.txt + # via -r ./requirements.txt glom==22.1.0 # via semgrep h11==0.14.0 # via - # -r requirements.txt + # -r ./requirements.txt # httpcore # uvicorn -httpcore==0.17.2 +httpcore==0.18.0 # via httpx -httpx==0.24.1 - # via -r requirements_dev.in +httpx==0.25.0 + # via -r ./requirements_dev.in hyperscan==0.4.0 ; sys_platform == "linux" and platform_machine == "x86_64" - # via -r requirements.txt + # via -r ./requirements.txt idna==3.4 # via - # -r requirements.txt + # -r ./requirements.txt # anyio # httpx # requests @@ -133,130 +134,138 @@ iniconfig==2.0.0 # via pytest isort==5.12.0 # via - # -r requirements_dev.in + # -r ./requirements_dev.in # pylint jinja2==3.1.2 - # via -r requirements_dev.in + # via -r ./requirements_dev.in jmespath==1.0.1 # via - # -r requirements.txt + # -r ./requirements.txt # boto3 # botocore -joblib==1.2.0 +joblib==1.3.2 # via - # -r requirements.txt + # -r ./requirements.txt # scikit-learn jsonref==1.1.0 - # via -r requirements.txt -jsonschema==4.17.3 + # via -r ./requirements.txt +jsonschema==4.19.1 # via semgrep +jsonschema-specifications==2023.7.1 + # via jsonschema lazy-object-proxy==1.9.0 # via astroid luqum==0.13.0 - # via -r requirements.txt -markdown-it-py==2.2.0 + # via -r ./requirements.txt +markdown-it-py==3.0.0 # via rich markupsafe==2.1.3 # via jinja2 -maxminddb==2.3.0 +maxminddb==2.4.0 # via - # -r requirements.txt + # -r ./requirements.txt # geoip2 mccabe==0.7.0 # via pylint mdurl==0.1.2 # via markdown-it-py -msgspec==0.15.1 - # via -r requirements.txt +msgspec==0.18.2 + # via -r ./requirements.txt multidict==6.0.4 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp # yarl mypy-extensions==1.0.0 # via black -mysql-connector-python==8.0.33 - # via -r requirements.txt -numpy==1.24.3 +mysql-connector-python==8.1.0 + # via -r ./requirements.txt +numpy==1.26.0 # via - # -r requirements.txt + # -r ./requirements.txt # scikit-learn # scipy -opensearch-py==2.2.0 - # via -r requirements.txt +opensearch-py==2.3.1 + # via -r ./requirements.txt ordered-set==4.1.0 # via - # -r requirements.txt + # -r ./requirements.txt # deepdiff -packaging==23.1 +packaging==23.2 # via # black # pytest # semgrep -pathspec==0.11.1 +pathspec==0.11.2 # via black -peewee==3.16.2 +peewee==3.16.3 # via semgrep -platformdirs==3.5.1 +platformdirs==3.10.0 # via - # -r requirements.txt + # -r ./requirements.txt # black # pylint # urlextract -pluggy==1.0.0 +pluggy==1.3.0 # via pytest ply==3.11 # via - # -r requirements.txt + # -r ./requirements.txt # luqum -prometheus-client==0.17.0 - # via -r requirements.txt -protobuf==3.20.3 +prometheus-client==0.17.1 + # via -r ./requirements.txt +protobuf==4.21.12 # via - # -r requirements.txt + # -r ./requirements.txt # mysql-connector-python -pycryptodome==3.18.0 - # via -r requirements.txt -pydantic==1.10.8 +pycryptodome==3.19.0 + # via -r ./requirements.txt +pydantic==2.4.2 # via - # -r requirements.txt + # -r ./requirements.txt # fastapi -pygments==2.15.1 +pydantic-core==2.10.1 + # via + # -r ./requirements.txt + # pydantic +pygments==2.16.1 # via rich pygrok==1.0.0 - # via -r requirements.txt -pylint==2.17.4 - # via -r requirements_dev.in -pyparsing==3.0.9 - # via -r requirements.txt -pyrsistent==0.19.3 - # via jsonschema -pytest==7.3.1 - # via - # -r requirements_dev.in + # via -r ./requirements.txt +pylint==2.17.7 + # via -r ./requirements_dev.in +pyparsing==3.1.1 + # via -r ./requirements.txt +pytest==7.4.2 + # via + # -r ./requirements_dev.in # pytest-cov pytest-cov==4.1.0 - # via -r requirements_dev.in + # via -r ./requirements_dev.in python-dateutil==2.8.2 # via - # -r requirements.txt + # -r ./requirements.txt # botocore # opensearch-py python-lsp-jsonrpc==1.0.0 # via semgrep -pytz==2023.3 - # via -r requirements.txt -pyyaml==6.0 +pytz==2023.3.post1 + # via -r ./requirements.txt +pyyaml==6.0.1 # via - # -r requirements.txt + # -r ./requirements.txt # responses -regex==2023.6.3 +referencing==0.30.2 + # via + # jsonschema + # jsonschema-specifications +regex==2023.8.8 # via - # -r requirements.txt + # -r ./requirements.txt # pygrok requests==2.31.0 # via - # -r requirements.txt + # -r ./requirements.txt # geoip2 # opensearch-py # requests-file @@ -265,102 +274,95 @@ requests==2.31.0 # tldextract requests-file==1.5.1 # via - # -r requirements.txt + # -r ./requirements.txt # tldextract -responses==0.23.1 - # via -r requirements_dev.in -rich==13.4.1 +responses==0.23.3 + # via -r ./requirements_dev.in +rich==13.6.0 # via semgrep -ruamel-yaml==0.17.31 +rpds-py==0.10.3 # via - # -r requirements.txt - # semgrep -ruamel-yaml-clib==0.2.7 + # jsonschema + # referencing +ruamel-yaml==0.17.33 # via - # -r requirements.txt - # ruamel-yaml -s3transfer==0.6.1 + # -r ./requirements.txt + # semgrep +s3transfer==0.7.0 # via - # -r requirements.txt + # -r ./requirements.txt # boto3 -schedule==1.2.0 - # via -r requirements.txt -scikit-learn==1.2.2 - # via -r requirements.txt -scipy==1.10.1 +schedule==1.2.1 + # via -r ./requirements.txt +scikit-learn==1.3.1 + # via -r ./requirements.txt +scipy==1.11.3 # via - # -r requirements.txt + # -r ./requirements.txt # scikit-learn -semgrep==1.24.1 - # via -r requirements_dev.in +semgrep==1.42.0 + # via -r ./requirements_dev.in six==1.16.0 # via - # -r requirements.txt + # -r ./requirements.txt # opensearch-py # python-dateutil # requests-file sniffio==1.3.0 # via - # -r requirements.txt + # -r ./requirements.txt # anyio # httpcore # httpx starlette==0.27.0 # via - # -r requirements.txt + # -r ./requirements.txt # fastapi -threadpoolctl==3.1.0 +threadpoolctl==3.2.0 # via - # -r requirements.txt + # -r ./requirements.txt # scikit-learn -tldextract==3.4.4 - # via -r requirements.txt +tldextract==3.6.0 + # via -r ./requirements.txt tomli==2.0.1 - # via - # black - # coverage - # pylint - # pytest - # semgrep -tomlkit==0.11.8 + # via semgrep +tomlkit==0.12.1 # via pylint -types-pyyaml==6.0.12.10 +types-pyyaml==6.0.12.12 # via responses -typing-extensions==4.6.3 +typing-extensions==4.8.0 # via - # -r requirements.txt - # astroid - # black + # -r ./requirements.txt + # fastapi # pydantic - # pylint + # pydantic-core # semgrep - # starlette -ujson==5.7.0 +ujson==5.8.0 # via python-lsp-jsonrpc -uritools==4.0.1 +uritools==4.0.2 # via - # -r requirements.txt + # -r ./requirements.txt # urlextract urlextract==1.8.0 - # via -r requirements.txt + # via -r ./requirements.txt urllib3==1.26.16 # via - # -r requirements.txt + # -r ./requirements.txt # botocore # elasticsearch # opensearch-py # requests # responses # semgrep -uvicorn==0.22.0 - # via -r requirements.txt -wcmatch==8.4.1 +uvicorn==0.23.2 + # via -r ./requirements.txt +wcmatch==8.5 # via semgrep -wheel==0.40.0 - # via -r requirements.txt +wheel==0.41.2 + # via -r ./requirements.txt wrapt==1.15.0 # via astroid yarl==1.9.2 # via - # -r requirements.txt + # -r ./requirements.txt # aiohttp diff --git a/setup.py b/setup.py index 13abf93c4..8f23f59ec 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ # pylint: disable=missing-module-docstring from pathlib import Path -from setuptools import setup, find_packages +from setuptools import find_packages, setup import versioneer @@ -36,7 +36,7 @@ packages=find_packages(), include_package_data=True, install_requires=["setuptools"] + requirements, - python_requires=">=3.9", + python_requires=">=3.10", entry_points={ "console_scripts": [ "logprep = logprep.run_logprep:main", diff --git a/versioneer.py b/versioneer.py index 5715279ab..ecd8897f4 100644 --- a/versioneer.py +++ b/versioneer.py @@ -281,13 +281,13 @@ import configparser import errno +import functools import json import os import re import subprocess import sys from typing import Callable, Dict -import functools class VersioneerConfig: @@ -1798,11 +1798,8 @@ def get_cmdclass(cmdclass=None): cmds = {} if cmdclass is None else cmdclass.copy() - # we add "version" to both distutils and setuptools - try: - from setuptools import Command - except ImportError: - from distutils.core import Command + from setuptools import Command + class cmd_version(Command): description = "report generated version string"