From cc89792670029f277513e90082d1b4295c5e381c Mon Sep 17 00:00:00 2001 From: Nikita Turchaninov Date: Fri, 3 Nov 2023 11:58:07 +0300 Subject: [PATCH 1/2] Drop python 3.7 support --- .github/workflows/lint-branch.yaml | 2 +- .github/workflows/release.yaml | 2 +- Dockerfile | 4 +- poetry.lock | 165 ++++++++++------------------- pyproject.toml | 4 +- 5 files changed, 64 insertions(+), 113 deletions(-) diff --git a/.github/workflows/lint-branch.yaml b/.github/workflows/lint-branch.yaml index 4063d1b..2b81b90 100644 --- a/.github/workflows/lint-branch.yaml +++ b/.github/workflows/lint-branch.yaml @@ -6,7 +6,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: [ '3.7' ] + python-version: [ '3.8', '3.9', '3.10', '3.11' ] os: [ ubuntu-latest ] runs-on: ${{ matrix.os }} timeout-minutes: 5 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index fd505cf..c9976c8 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -9,7 +9,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: [ '3.7' ] + python-version: [ '3.8', '3.9', '3.10', '3.11' ] os: [ ubuntu-latest ] runs-on: ${{ matrix.os }} steps: diff --git a/Dockerfile b/Dockerfile index d20723f..2681998 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.12-slim-buster +FROM python:3.8.18-slim-bookworm ARG PIP_INDEX_URL @@ -15,7 +15,7 @@ RUN pip3 install poetry==1.1.12 WORKDIR /cybsi_cloud_sdk # dependencies for poetry install -COPY poetry.lock pyproject.toml ./ +COPY poetry.lock pyproject.toml README.md ./ COPY ./cybsi/__version__.py ./cybsi/py.typed ./cybsi/ RUN poetry install diff --git a/poetry.lock b/poetry.lock index e75ed28..12643a6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -19,22 +19,21 @@ python-versions = ">=3.6" [[package]] name = "anyio" -version = "3.7.1" +version = "4.0.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" [package.dependencies] -exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} +exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} idna = ">=2.8" sniffio = ">=1.1" -typing-extensions = {version = "*", markers = "python_version < \"3.8\""} [package.extras] -doc = ["packaging", "sphinx", "sphinx-rtd-theme (>=1.2.2)", "sphinxcontrib-jquery", "sphinx-autodoc-typehints (>=1.2.0)"] -test = ["anyio", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)", "mock (>=4)"] -trio = ["trio (<0.22)"] +doc = ["packaging", "Sphinx (>=7)", "sphinx-autodoc-typehints (>=1.2.0)"] +test = ["anyio", "coverage[toml] (>=7)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (>=0.22)"] [[package]] name = "apeye" @@ -79,7 +78,7 @@ Sphinx = ">=2.2,<8.0" [[package]] name = "babel" -version = "2.12.1" +version = "2.13.1" description = "Internationalization utilities" category = "dev" optional = false @@ -88,6 +87,9 @@ python-versions = ">=3.7" [package.dependencies] pytz = {version = ">=2015.7", markers = "python_version < \"3.9\""} +[package.extras] +dev = ["pytest (>=6.0)", "pytest-cov", "freezegun (>=1.0,<2.0)"] + [[package]] name = "beautifulsoup4" version = "4.12.2" @@ -117,7 +119,6 @@ mypy-extensions = ">=0.4.3" pathspec = ">=0.9.0" platformdirs = ">=2" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typed-ast = {version = ">=1.4.2", markers = "python_version < \"3.8\" and implementation_name == \"cpython\""} typing-extensions = {version = ">=3.10.0.0", markers = "python_version < \"3.10\""} [package.extras] @@ -154,7 +155,7 @@ python-versions = ">=3.6" [[package]] name = "charset-normalizer" -version = "3.2.0" +version = "3.3.2" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "dev" optional = false @@ -183,7 +184,6 @@ python-versions = ">=3.7" [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} -importlib-metadata = {version = "*", markers = "python_version < \"3.8\""} [[package]] name = "colorama" @@ -224,18 +224,15 @@ python-versions = ">=3.6" [[package]] name = "cssutils" -version = "2.7.1" +version = "2.9.0" description = "A CSS Cascading Style Sheets library for Python" category = "dev" optional = false -python-versions = ">=3.7" - -[package.dependencies] -importlib-metadata = {version = "*", markers = "python_version < \"3.8\""} +python-versions = ">=3.8" [package.extras] -docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "sphinx-lint", "jaraco.tidelift (>=1.4)"] -testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-ruff", "cssselect", "jaraco.test (>=5.1)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "lxml", "importlib-resources"] +docs = ["sphinx (>=3.5)", "sphinx (<7.2.5)", "jaraco.packaging (>=9.3)", "rst.linker (>=1.9)", "furo", "sphinx-lint", "jaraco.tidelift (>=1.4)"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ruff", "cssselect", "jaraco.test (>=5.1)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "lxml", "importlib-resources"] [[package]] name = "deprecation" @@ -290,7 +287,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "domdf-python-tools" -version = "3.6.1" +version = "3.7.0" description = "Helpful functions for Python 🐍 🛠️" category = "dev" optional = false @@ -334,15 +331,16 @@ test = ["pytest (>=6)"] [[package]] name = "filelock" -version = "3.12.2" +version = "3.13.1" description = "A platform independent file lock." category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" [package.extras] -docs = ["furo (>=2023.5.20)", "sphinx-autodoc-typehints (>=1.23,!=1.23.4)", "sphinx (>=7.0.1)"] -testing = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "diff-cover (>=7.5)", "pytest-cov (>=4.1)", "pytest-mock (>=3.10)", "pytest-timeout (>=2.1)", "pytest (>=7.3.1)"] +docs = ["furo (>=2023.9.10)", "sphinx-autodoc-typehints (>=1.24)", "sphinx (>=7.2.6)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)", "pytest (>=7.4.3)"] +typing = ["typing-extensions (>=4.8)"] [[package]] name = "flake8" @@ -353,7 +351,6 @@ optional = false python-versions = ">=3.6" [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" @@ -366,9 +363,6 @@ category = "main" optional = false python-versions = ">=3.7" -[package.dependencies] -typing-extensions = {version = "*", markers = "python_version < \"3.8\""} - [[package]] name = "html5lib" version = "1.1" @@ -443,19 +437,19 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "importlib-metadata" -version = "4.2.0" +version = "6.8.0" description = "Read metadata from Python packages" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" [package.dependencies] -typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""} zipp = ">=0.5" [package.extras] -docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] -testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pep517", "pyfakefs", "flufl.flake8", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources (>=1.3)"] +docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "sphinx-lint", "jaraco.tidelift (>=1.4)"] +perf = ["ipython"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ruff", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "importlib-resources (>=1.3)"] [[package]] name = "iniconfig" @@ -527,11 +521,11 @@ python-versions = "~=3.5" [[package]] name = "msgpack" -version = "1.0.5" +version = "1.0.7" description = "MessagePack serializer" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.8" [[package]] name = "mypy" @@ -544,7 +538,6 @@ python-versions = ">=3.7" [package.dependencies] mypy-extensions = ">=0.4.3" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typed-ast = {version = ">=1.4.0,<2", markers = "python_version < \"3.8\""} typing-extensions = ">=3.10" [package.extras] @@ -575,7 +568,7 @@ icu = ["PyICU (>=1.0.0)"] [[package]] name = "packaging" -version = "23.1" +version = "23.2" description = "Core utilities for Python packages" category = "dev" optional = false @@ -591,29 +584,23 @@ python-versions = ">=3.7" [[package]] name = "platformdirs" -version = "3.10.0" +version = "3.11.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "dev" optional = false python-versions = ">=3.7" -[package.dependencies] -typing-extensions = {version = ">=4.7.1", markers = "python_version < \"3.8\""} - [package.extras] docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.24)", "sphinx (>=7.1.1)"] test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "pytest (>=7.4)"] [[package]] name = "pluggy" -version = "1.2.0" +version = "1.3.0" description = "plugin and hook calling mechanisms for python" category = "dev" optional = false -python-versions = ">=3.7" - -[package.dependencies] -importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""} +python-versions = ">=3.8" [package.extras] dev = ["pre-commit", "tox"] @@ -671,7 +658,7 @@ plugins = ["importlib-metadata"] [[package]] name = "pytest" -version = "7.4.2" +version = "7.4.3" description = "pytest: simple powerful testing with Python" category = "dev" optional = false @@ -680,7 +667,6 @@ python-versions = ">=3.7" [package.dependencies] colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} -importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""} iniconfig = "*" packaging = "*" pluggy = ">=0.12,<2.0" @@ -731,26 +717,26 @@ idna2008 = ["idna"] [[package]] name = "ruamel.yaml" -version = "0.17.32" +version = "0.18.5" description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order" category = "dev" optional = false -python-versions = ">=3" +python-versions = ">=3.7" [package.dependencies] -"ruamel.yaml.clib" = {version = ">=0.2.7", markers = "platform_python_implementation == \"CPython\" and python_version < \"3.12\""} +"ruamel.yaml.clib" = {version = ">=0.2.7", markers = "platform_python_implementation == \"CPython\" and python_version < \"3.13\""} [package.extras] -docs = ["ryd"] +docs = ["ryd", "mercurial (>5.7)"] jinja2 = ["ruamel.yaml.jinja2 (>=0.2)"] [[package]] name = "ruamel.yaml.clib" -version = "0.2.7" +version = "0.2.8" description = "C version of reader, parser and emitter for ruamel.yaml derived from libyaml" category = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" [[package]] name = "schema" @@ -789,11 +775,11 @@ python-versions = "*" [[package]] name = "soupsieve" -version = "2.4.1" +version = "2.5" description = "A modern CSS selector implementation for Beautiful Soup." category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" [[package]] name = "sphinx" @@ -926,7 +912,6 @@ sphinx-prompt = ">=1.1.0" sphinx-tabs = ">=1.2.1,<=3.2.0" tabulate = ">=0.8.7" typing-extensions = ">=3.7.4.3,<3.10.0.1 || >3.10.0.1" -typing-inspect = {version = ">=0.6.0", markers = "python_version < \"3.8\""} [package.extras] testing = ["coincidence (>=0.4.3)", "pygments (>=2.7.4)"] @@ -934,11 +919,11 @@ all = ["coincidence (>=0.4.3)", "pygments (>=2.7.4)"] [[package]] name = "sphinxcontrib-applehelp" -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 = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.8" [package.extras] lint = ["flake8", "mypy", "docutils-stubs"] @@ -958,11 +943,11 @@ 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" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" [package.extras] lint = ["flake8", "mypy", "docutils-stubs"] @@ -1003,17 +988,6 @@ python-versions = ">=3.5" lint = ["flake8", "mypy", "docutils-stubs"] test = ["pytest"] -[[package]] -name = "sphinxjp.themes.basicstrap" -version = "0.5.0" -description = "A sphinx theme for Basicstrap style. Using Twitter Bootstrap. #sphinxjp" -category = "dev" -optional = false -python-versions = "*" - -[package.dependencies] -Sphinx = "*" - [[package]] name = "tabulate" version = "0.8.10" @@ -1049,43 +1023,23 @@ python-versions = ">=3.7" [[package]] name = "tomlkit" -version = "0.12.1" +version = "0.12.2" description = "Style preserving TOML library" category = "dev" optional = false python-versions = ">=3.7" -[[package]] -name = "typed-ast" -version = "1.5.5" -description = "a fork of Python 2 and 3 ast modules with type comment support" -category = "dev" -optional = false -python-versions = ">=3.6" - [[package]] name = "typing-extensions" -version = "4.7.1" -description = "Backported and Experimental Type Hints for Python 3.7+" +version = "4.8.0" +description = "Backported and Experimental Type Hints for Python 3.8+" category = "main" optional = false -python-versions = ">=3.7" - -[[package]] -name = "typing-inspect" -version = "0.9.0" -description = "Runtime inspection utilities for typing module." -category = "dev" -optional = false -python-versions = "*" - -[package.dependencies] -mypy-extensions = ">=0.3.0" -typing-extensions = ">=3.7.4" +python-versions = ">=3.8" [[package]] name = "unidecode" -version = "1.3.6" +version = "1.3.7" description = "ASCII transliterations of Unicode text" category = "dev" optional = false @@ -1093,7 +1047,7 @@ python-versions = ">=3.5" [[package]] name = "urllib3" -version = "2.0.5" +version = "2.0.7" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "dev" optional = false @@ -1115,20 +1069,20 @@ python-versions = "*" [[package]] name = "zipp" -version = "3.15.0" +version = "3.17.0" description = "Backport of pathlib-compatible object wrapper for zip files" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" [package.extras] -docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "sphinx-lint", "jaraco.tidelift (>=1.4)"] -testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "flake8 (<5)", "pytest-cov", "pytest-enabler (>=1.3)", "jaraco.itertools", "jaraco.functools", "more-itertools", "big-o", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "pytest-flake8"] +docs = ["sphinx (>=3.5)", "sphinx (<7.2.5)", "jaraco.packaging (>=9.3)", "rst.linker (>=1.9)", "furo", "sphinx-lint", "jaraco.tidelift (>=1.4)"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ruff", "jaraco.itertools", "jaraco.functools", "more-itertools", "big-o", "pytest-ignore-flaky", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"] [metadata] lock-version = "1.1" -python-versions = "^3.7" -content-hash = "55387c52e91e2ca6242644f02abf7d030ab0c9d29aabb0182355ffc94b4b8649" +python-versions = ">=3.8,<=3.11" +content-hash = "fa3a1030ce6d04d98452b1b220550fd9da65b77370fce5288e9686c0dd430d95" [metadata.files] accessible-pygments = [] @@ -1209,14 +1163,11 @@ sphinxcontrib-htmlhelp = [] sphinxcontrib-jsmath = [] sphinxcontrib-qthelp = [] sphinxcontrib-serializinghtml = [] -"sphinxjp.themes.basicstrap" = [] tabulate = [] tbump = [] tomli = [] tomlkit = [] -typed-ast = [] typing-extensions = [] -typing-inspect = [] unidecode = [] urllib3 = [] webencodings = [] diff --git a/pyproject.toml b/pyproject.toml index cdfde28..5e117b8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,10 +12,10 @@ include = ["cybsi/py.typed"] [tool.poetry.dependencies] -python = "^3.7" +python = ">=3.8,<=3.11" enum-tools = "0.9.0.post1" httpx = "^0.23.1" -typing-extensions = {version = "^4.1.1", markers = "python_version < '3.8'" } +typing-extensions = { version = "^4.1.1", markers = "python_version < '3.8'" } [tool.poetry.dev-dependencies] black = "22.3.0" From df31b820b3abc954fe0da7018470aee69a0a2196 Mon Sep 17 00:00:00 2001 From: Nikita Turchaninov Date: Fri, 3 Nov 2023 11:59:34 +0300 Subject: [PATCH 2/2] Bump to 1.0.6 --- HISTORY.md | 5 +++++ cybsi/__version__.py | 2 +- pyproject.toml | 4 ++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 7fe11b4..c19b6d3 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,6 +1,11 @@ Release History =============== +1.0.6 (2023-11-03) +------------------ + +- Drop python 3.7 support + 1.0.5 (2023-11-01) ------------------ diff --git a/cybsi/__version__.py b/cybsi/__version__.py index 495eb3d..7388aac 100644 --- a/cybsi/__version__.py +++ b/cybsi/__version__.py @@ -1,4 +1,4 @@ -__version__ = "1.0.5" +__version__ = "1.0.6" __title__ = "cybsi-cloud-sdk" __description__ = "Cybsi Cloud development kit" __license__ = "Apache License 2.0" diff --git a/pyproject.toml b/pyproject.toml index 5e117b8..de2cc02 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "cybsi-cloud-sdk" -version = "1.0.5" +version = "1.0.6" description = "Cybsi Cloud development kit" authors = ["Cybsi Cloud developers"] license = "Apache License 2.0" @@ -41,7 +41,7 @@ extend_skip = ["__init__.py"] [tool.tbump] [tool.tbump.version] -current = "1.0.5" +current = "1.0.6" regex = ''' ^