diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fded071..7f2bdef 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11","3.12"] + python-version: ["3.9", "3.10", "3.11","3.12"] defaults: run: working-directory: . diff --git a/CHANGELOG.md b/CHANGELOG.md index 6200a92..c438655 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,8 +6,10 @@ This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a Ch ## Unreleased ### New +- adding support for isolation of codeseeder and seedfarmer installations from module libraries ### Changes +- removing support for python 3.8 due to deprecated libraries and inability to accommodate 3.8 through 3.12 ### Fixes diff --git a/docs/requirements-docs.in b/docs/requirements-docs.in index 2ce2f3c..e4df73e 100644 --- a/docs/requirements-docs.in +++ b/docs/requirements-docs.in @@ -13,5 +13,6 @@ docutils~=0.16 PyYAML==6.0.2 urllib3~=1.26.19 wheel==0.44.0 -typing-extensions==4.12.2 +typing-extensions>=4.11 certifi~=2024.8.30 +jinja2>=3.1.5 diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt index 686ddb4..86a8bf5 100644 --- a/docs/requirements-docs.txt +++ b/docs/requirements-docs.txt @@ -1,12 +1,12 @@ # -# 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 requirements-docs.in +# pip-compile docs/requirements-docs.in # alabaster==0.7.13 # via sphinx -astroid==2.15.5 +astroid==3.3.8 # via sphinx-autoapi babel==2.12.1 # via sphinx @@ -29,15 +29,12 @@ idna==3.7 # via requests imagesize==1.4.1 # via sphinx -importlib-metadata==7.1.0 - # via sphinx -jinja2==3.1.4 +jinja2==3.1.5 # via + # -r docs/requirements-docs.in # myst-parser # sphinx # sphinx-autoapi -lazy-object-proxy==1.10.0 - # via astroid markdown-it-py==3.0.0 # via # mdit-py-plugins @@ -50,7 +47,7 @@ mdurl==0.1.2 # via markdown-it-py myst-parser==3.0.1 # via -r docs/requirements-docs.in -packaging==23.1 +packaging==24.2 # via sphinx pygments==2.15.1 # via sphinx @@ -104,19 +101,11 @@ sphinxcontrib-serializinghtml==2.0.0 # via # -r docs/requirements-docs.in # sphinx -stdlib-list==0.10.0 - # via sphinx-autoapi typing-extensions==4.12.2 - # via - # -r docs/requirements-docs.in - # astroid + # via -r docs/requirements-docs.in urllib3==1.26.19 # via # -r docs/requirements-docs.in # requests wheel==0.44.0 # via -r docs/requirements-docs.in -wrapt==1.15.0 - # via astroid -zipp==3.19.1 - # via importlib-metadata diff --git a/requirements-dev.in b/requirements-dev.in index 69b9b18..f4ee723 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -1,6 +1,6 @@ -c requirements.txt -awscli~=1.34.29 +awscli>=1.35 certifi~=2024.8.30 check-manifest~=0.48 mypy~=1.11 @@ -20,4 +20,4 @@ wheel~=0.44.0 boto3-stubs[codebuild,iam,s3,secretsmanager,ssm,sts]~=1.35.34 moto[s3,sts,iam,codebuild,secretsmanager,ssm]~=5.0.16 requests~=2.32.3 -werkzeug~=3.0.4 +werkzeug>=3.0.6 diff --git a/requirements-dev.txt b/requirements-dev.txt index 698c417..3e6b3a4 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,22 +1,18 @@ # -# 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 requirements-dev.in # -awscli==1.34.29 +awscli==1.37.0 # via -r requirements-dev.in -backports-tarfile==1.2.0 - # via jaraco-context -boto3==1.35.29 +boto3==1.36.0 # via - # -c requirements.txt # moto boto3-stubs[codebuild,iam,s3,secretsmanager,ssm,sts]==1.35.34 # via -r requirements-dev.in -botocore==1.35.29 +botocore==1.36.0 # via - # -c requirements.txt # awscli # boto3 # moto @@ -30,20 +26,17 @@ build==1.2.1 # pyroma certifi==2024.8.30 # via - # -c requirements.txt # -r requirements-dev.in # requests cffi==1.16.0 # via cryptography -charset-normalizer==3.3.2 +charset-normalizer==3.4.1 # via - # -c requirements.txt # requests check-manifest==0.49 # via -r requirements-dev.in -click==8.1.7 +click==8.1.8 # via - # -c requirements.txt # pip-tools colorama==0.4.6 # via awscli @@ -58,17 +51,11 @@ docutils==0.16 # awscli # pyroma # readme-renderer -exceptiongroup==1.2.2 - # via pytest idna==3.10 # via - # -c requirements.txt # requests importlib-metadata==8.0.0 - # via - # build - # keyring - # twine + # via twine iniconfig==2.0.0 # via pytest jaraco-classes==3.4.0 @@ -81,29 +68,24 @@ jeepney==0.8.0 # via # keyring # secretstorage -jinja2==3.1.4 +jinja2==3.1.5 # via - # -c requirements.txt # moto jmespath==1.0.1 # via - # -c requirements.txt # boto3 # botocore keyring==25.2.1 # via twine markdown-it-py==3.0.0 # via - # -c requirements.txt # rich -markupsafe==2.1.5 +markupsafe==3.0.2 # via - # -c requirements.txt # jinja2 # werkzeug mdurl==0.1.2 # via - # -c requirements.txt # markdown-it-py more-itertools==10.3.0 # via @@ -127,13 +109,11 @@ mypy-boto3-sts==1.35.0 # via boto3-stubs mypy-extensions==1.0.0 # via - # -c requirements.txt # mypy nh3==0.2.18 # via readme-renderer -packaging==24.1 +packaging==24.2 # via - # -c requirements.txt # build # pyroma # pytest @@ -151,9 +131,8 @@ pycparser==2.22 # via cffi pydot==3.0.2 # via -r requirements-dev.in -pygments==2.18.0 +pygments==2.19.1 # via - # -c requirements.txt # pyroma # readme-renderer # rich @@ -179,12 +158,12 @@ pytest-ordering==0.6 # via -r requirements-dev.in python-dateutil==2.9.0.post0 # via - # -c requirements.txt + # botocore # moto pyyaml==6.0.2 # via - # -c requirements.txt + # awscli # moto # responses @@ -192,7 +171,7 @@ readme-renderer==43.0 # via twine requests==2.32.3 # via - # -c requirements.txt + # -r requirements-dev.in # moto # pyroma @@ -205,33 +184,22 @@ responses==0.25.3 # via moto rfc3986==2.0.0 # via twine -rich==13.8.1 +rich==13.9.4 # via - # -c requirements.txt # twine rsa==4.7.2 # via awscli ruff==0.6.9 # via -r requirements-dev.in -s3transfer==0.10.2 +s3transfer==0.11.0 # via - # -c requirements.txt # awscli # boto3 secretstorage==3.3.3 # via keyring -six==1.16.0 +six==1.17.0 # via - # -c requirements.txt # python-dateutil -tomli==2.0.1 - # via - # build - # check-manifest - # coverage - # mypy - # pip-tools - # pytest trove-classifiers==2024.7.2 # via pyroma twine==5.1.1 @@ -250,23 +218,14 @@ types-urllib3==1.26.25.14 # via types-requests typing-extensions==4.12.2 # via - # -c requirements.txt - # boto3-stubs # mypy - # mypy-boto3-codebuild - # mypy-boto3-iam - # mypy-boto3-s3 - # mypy-boto3-secretsmanager - # mypy-boto3-ssm - # mypy-boto3-sts -urllib3==1.26.19 +urllib3==1.26.20 # via - # -c requirements.txt # botocore # requests # responses # twine -werkzeug==3.0.4 +werkzeug==3.1.3 # via # -r requirements-dev.in # moto diff --git a/requirements.txt b/requirements.txt index 7b43134..02fe7d5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ # -# 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 @@ -8,13 +8,13 @@ annotated-types==0.7.0 # via pydantic arrow==1.3.0 # via cookiecutter -aws-codeseeder==1.1.0 +aws-codeseeder==1.2.0 # via seed-farmer (setup.py) binaryornot==0.4.4 # via cookiecutter -boto3==1.35.72 +boto3==1.36.0 # via aws-codeseeder -botocore==1.35.72 +botocore==1.36.0 # via # boto3 # s3transfer @@ -27,9 +27,9 @@ cfn-flip==1.3.0 # via aws-codeseeder chardet==5.2.0 # via binaryornot -charset-normalizer==3.4.0 +charset-normalizer==3.4.1 # via requests -click==8.1.7 +click==8.1.8 # via # aws-codeseeder # cfn-flip @@ -42,11 +42,11 @@ executor==23.2 # via seed-farmer (setup.py) fasteners==0.19 # via executor -gitdb==4.0.11 +gitdb==4.0.12 # via gitpython gitignore-parser==0.1.11 # via seed-farmer (setup.py) -gitpython==3.1.43 +gitpython==3.1.44 # via seed-farmer (setup.py) humanfriendly==10.0 # via @@ -55,7 +55,7 @@ humanfriendly==10.0 # property-manager idna==3.10 # via requests -jinja2==3.1.4 +jinja2==3.1.5 # via cookiecutter jmespath==1.0.1 # via @@ -63,7 +63,7 @@ jmespath==1.0.1 # botocore markdown-it-py==3.0.0 # via rich -markupsafe~=2.1.5 +markupsafe==3.0.2 # via jinja2 mdurl==0.1.2 # via markdown-it-py @@ -73,11 +73,11 @@ packaging==24.2 # via seed-farmer (setup.py) property-manager==3.0 # via executor -pydantic==2.10.2 +pydantic==2.10.5 # via seed-farmer (setup.py) -pydantic-core~=2.27.1 +pydantic-core==2.27.2 # via pydantic -pygments==2.18.0 +pygments==2.19.1 # via rich pyhumps==3.8.0 # via seed-farmer (setup.py) @@ -103,25 +103,25 @@ rich==13.9.4 # via # cookiecutter # seed-farmer (setup.py) -s3transfer==0.10.4 +s3transfer==0.11.0 # via boto3 -six==1.16.0 +six==1.17.0 # via # cfn-flip # executor # python-dateutil -smmap==5.0.1 +smmap==5.0.2 # via gitdb text-unidecode==1.3 # via python-slugify -types-python-dateutil==2.9.0.20241003 +types-python-dateutil==2.9.0.20241206 # via arrow typing-extensions==4.12.2 # via # pydantic # pydantic-core # seed-farmer (setup.py) -urllib3==1.26.19 +urllib3==1.26.20 # via # botocore # requests diff --git a/seedfarmer/__init__.py b/seedfarmer/__init__.py index dceda04..3595209 100644 --- a/seedfarmer/__init__.py +++ b/seedfarmer/__init__.py @@ -112,7 +112,7 @@ def configure(configuration: CodeSeederConfig) -> None: ), 'timeout 15 sh -c "until docker info; do echo .; sleep 1; done"', ] - configuration.python_modules = [f"seed-farmer=={__version__}"] + configuration.pythonpipx_modules = [f"seed-farmer=={__version__}"] @property def PROJECT(self) -> str: diff --git a/setup.py b/setup.py index 3ac6084..27615c1 100644 --- a/setup.py +++ b/setup.py @@ -43,9 +43,9 @@ license=about["__license__"], packages=find_packages(include=["seed-farmer", "seedfarmer", "seedfarmer.*", "seed-farmer.*"]), keywords=["aws", "cdk"], - python_requires=">=3.8,<3.13", + python_requires=">=3.9,<3.13", install_requires=[ - "aws-codeseeder~=1.1.0", + "aws-codeseeder~=1.2.0", "cookiecutter>=2.1,<2.7", "pyhumps>=3.5,<3.9", "pydantic>=2.8.2,<2.11.0", @@ -68,7 +68,6 @@ "Intended Audience :: Information Technology", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11",