From 832f3c134a98a6855913e7250c17884907ccb7a0 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 16:09:06 +0200 Subject: [PATCH 1/7] fix typo in CI/CI workflow --- .github/workflows/ci-cd.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 6ba49da4..b4cfaeae 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -66,7 +66,7 @@ jobs: uses: actions/checkout@v4 with: submodules: true - - name: Setup Python ${{ matrix.pyver }} + - name: Setup Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} From e346d39b9812346a429dc1ff3cfcff0b4bb722db Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:20:11 +0200 Subject: [PATCH 2/7] remove legacy `codecov` dev dependency --- .github/workflows/ci-cd.yml | 2 +- requirements-dev.in | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index b4cfaeae..c4b7bd76 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -76,7 +76,7 @@ jobs: AIOHTTP_VERSION: ${{ matrix.aiohttp-version }} run: | python -V -V - python -m pip install -U pip codecov pip-tools + python -m pip install -U pip pip-tools time pip-compile requirements-dev.in time pip-sync requirements-dev.txt - name: Run pre-commit hooks diff --git a/requirements-dev.in b/requirements-dev.in index 6817775c..fb9fb4d9 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -1,4 +1,3 @@ -codecov~=2.1.13 coverage==7.2.7 docker~=7.1 moto[server,s3,sqs,awslambda,dynamodb,cloudformation,sns,batch,ec2,rds]~=4.2.9 From d2dea3b8d62a64207fbbfac6f5d0319e7704a211 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:27:26 +0200 Subject: [PATCH 3/7] remove unnecessary statement in CI/CD workflow --- .github/workflows/ci-cd.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index c4b7bd76..1c21b88f 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -75,7 +75,6 @@ jobs: env: AIOHTTP_VERSION: ${{ matrix.aiohttp-version }} run: | - python -V -V python -m pip install -U pip pip-tools time pip-compile requirements-dev.in time pip-sync requirements-dev.txt From ea6bc862d16ffda39128f6677576df112c45d442 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:45:34 +0200 Subject: [PATCH 4/7] remove legacy version constraint for aiohttp in CI/CD workflow --- .github/workflows/ci-cd.yml | 6 ------ requirements-dev.in | 2 -- 2 files changed, 8 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 1c21b88f..0f033ee1 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -54,10 +54,6 @@ jobs: - 3.11 - 3.12 - 3.13 - include: - - aiohttp-version: ==3.9.2 - - aiohttp-version: <4.0.0 - python-version: 3.11 fail-fast: false timeout-minutes: 5 @@ -72,8 +68,6 @@ jobs: python-version: ${{ matrix.python-version }} allow-prereleases: true - name: Lock and sync dependencies - env: - AIOHTTP_VERSION: ${{ matrix.aiohttp-version }} run: | python -m pip install -U pip pip-tools time pip-compile requirements-dev.in diff --git a/requirements-dev.in b/requirements-dev.in index fb9fb4d9..e13c8448 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -13,6 +13,4 @@ dill~=0.3.3 # this is needed for test_version tomli; python_version < "3.11" -aiohttp${AIOHTTP_VERSION} - -e .[awscli,boto3] From 527c7d76c425c0c8fc8d887d7f7086614cbc24b8 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:54:08 +0200 Subject: [PATCH 5/7] improve structure of requirements-dev.in --- requirements-dev.in | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/requirements-dev.in b/requirements-dev.in index e13c8448..c1b46fb8 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -1,16 +1,30 @@ +### relevant botocore dev dependencies (from https://github.com/boto/botocore/blob/develop/requirements-dev.txt) + +# wheel==0.43.0 +# behave==1.2.5 +# jsonschema==4.21.1 coverage==7.2.7 +# setuptools==71.1.0;python_version>="3.12" +# packaging==24.1;python_version>="3.12" # Requirement for setuptools>=71 + +# Pytest specific deps +pytest==8.1.1 +pytest-cov==5.0.0 +pytest-xdist==3.5.0 +# atomicwrites>=1.0 # Windows requirement +# colorama>0.3.0 # Windows requirement + + +### aiobotocore dev dependencies + +dill~=0.3.3 # Requirement for tests/test_patches.py docker~=7.1 moto[server,s3,sqs,awslambda,dynamodb,cloudformation,sns,batch,ec2,rds]~=4.2.9 pre-commit~=3.5.0 -pytest==8.1.1 -pytest-cov==5.0.0 pytest-asyncio~=0.23.8 -pytest-xdist==3.5.0 +tomli; python_version < "3.11" # Requirement for tests/test_version.py -# this is needed for test_patches -dill~=0.3.3 -# this is needed for test_version -tomli; python_version < "3.11" +### (editable) aiobotocore along with dependencies and extra dependencies -e .[awscli,boto3] From 8c7977cb4a43de73154d91706ba7321881e5c8d7 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 22:47:55 +0200 Subject: [PATCH 6/7] remove time statements from CI/CD workflow --- .github/workflows/ci-cd.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 0f033ee1..b68e0da0 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -70,8 +70,8 @@ jobs: - name: Lock and sync dependencies run: | python -m pip install -U pip pip-tools - time pip-compile requirements-dev.in - time pip-sync requirements-dev.txt + pip-compile requirements-dev.in + pip-sync requirements-dev.txt - name: Run pre-commit hooks run: | make pre-commit From feb16ab18ed407de0edac685882942414219e748 Mon Sep 17 00:00:00 2001 From: Jakob Keller <57402305+jakob-keller@users.noreply.github.com> Date: Fri, 23 Aug 2024 23:05:09 +0200 Subject: [PATCH 7/7] extract editable install from `requirements-dev.in` --- .github/workflows/ci-cd.yml | 5 +++-- .gitignore | 2 +- CONTRIBUTING.rst | 5 +++-- README.rst | 5 +++-- requirements-dev.in | 5 ----- 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index b68e0da0..b9cba5fc 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -70,8 +70,9 @@ jobs: - name: Lock and sync dependencies run: | python -m pip install -U pip pip-tools - pip-compile requirements-dev.in - pip-sync requirements-dev.txt + pip-compile --all-extras pyproject.toml requirements-dev.in + pip-sync + pip install -e ".[awscli,boto3]" - name: Run pre-commit hooks run: | make pre-commit diff --git a/.gitignore b/.gitignore index 189d3141..aa97482a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ # generated by users and intentionally not pushed to the repo -requirements-dev.txt +requirements.txt # Byte-compiled / optimized / DLL files __pycache__/ diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index ff949d4d..37c01bc3 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -23,8 +23,9 @@ For example, using ``virtualenvwrapper`` commands could look like:: After that, please install libraries required for development:: $ pip install pip-tools - $ pip-compile requirements-dev.in - $ pip-sync requirements-dev.txt + $ pip-compile --all-extras pyproject.toml requirements-dev.in + $ pip-sync + $ pip install -e ".[awscli,boto3]" Congratulations, you are ready to run the test suite:: diff --git a/README.rst b/README.rst index e24884b6..0b9426a9 100644 --- a/README.rst +++ b/README.rst @@ -182,8 +182,9 @@ secret accessible via environment variables: :: $ pip install pip-tools - $ pip-compile requirements-dev.in - $ pip-sync requirements-dev.txt + $ pip-compile --all-extras pyproject.toml + $ pip-sync + $ pip install -e ".[awscli,boto3]" $ export AWS_ACCESS_KEY_ID=xxx $ export AWS_SECRET_ACCESS_KEY=xxx $ export AWS_DEFAULT_REGION=xxx # e.g. us-west-2 diff --git a/requirements-dev.in b/requirements-dev.in index c1b46fb8..1567ea46 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -23,8 +23,3 @@ moto[server,s3,sqs,awslambda,dynamodb,cloudformation,sns,batch,ec2,rds]~=4.2.9 pre-commit~=3.5.0 pytest-asyncio~=0.23.8 tomli; python_version < "3.11" # Requirement for tests/test_version.py - - -### (editable) aiobotocore along with dependencies and extra dependencies - --e .[awscli,boto3]