diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 6ba49da4..b9cba5fc 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 @@ -66,19 +62,17 @@ 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 }} allow-prereleases: true - name: Lock and sync dependencies - env: - AIOHTTP_VERSION: ${{ matrix.aiohttp-version }} run: | - python -V -V - python -m pip install -U pip codecov pip-tools - time pip-compile requirements-dev.in - time pip-sync requirements-dev.txt + python -m pip install -U pip pip-tools + 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 6817775c..1567ea46 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -1,19 +1,25 @@ -codecov~=2.1.13 +### 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 -docker~=7.1 -moto[server,s3,sqs,awslambda,dynamodb,cloudformation,sns,batch,ec2,rds]~=4.2.9 -pre-commit~=3.5.0 +# 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-asyncio~=0.23.8 pytest-xdist==3.5.0 +# atomicwrites>=1.0 # Windows requirement +# colorama>0.3.0 # Windows requirement -# this is needed for test_patches -dill~=0.3.3 -# this is needed for test_version -tomli; python_version < "3.11" +### aiobotocore dev dependencies -aiohttp${AIOHTTP_VERSION} - --e .[awscli,boto3] +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-asyncio~=0.23.8 +tomli; python_version < "3.11" # Requirement for tests/test_version.py