diff --git a/.github/workflows/makefile.yml b/.github/workflows/makefile.yml index 8a35df32..12fd30d0 100644 --- a/.github/workflows/makefile.yml +++ b/.github/workflows/makefile.yml @@ -21,7 +21,7 @@ jobs: - name: "Run tests" run: | - pip install -U "pip ~= 22.0.0" + pip install -U "pip ~= 23.0.0" python -m venv ~/.env source ~/.env/bin/activate make bootstrap lint test diff --git a/Makefile b/Makefile index 0a3b696c..fcc60537 100644 --- a/Makefile +++ b/Makefile @@ -50,7 +50,7 @@ virtualenv: ## create virtual environment typically used for development purpose .PHONY: pip pip: - pip install -U "pip ~= 22.2" + pip install -U "pip ~= 23.0" .PHONY: pip-tools pip-tools: pip @@ -90,8 +90,9 @@ clean-pyc: ## remove Python file artifacts clean-test: ## remove test and coverage artifacts rm -fr .tox/ - rm -f .coverage + rm -f .coverage coverage.xml rm -fr htmlcov/ + rm -rf .pytest_cache clean-docker: @sudo docker rm twindb-backup-build-${PLATFORM} @@ -117,8 +118,7 @@ lint: ## check style with pylint test: ## Run tests quickly with the default Python and generate code coverage report - pytest -xv --cov-report term-missing --cov=./twindb_backup tests/unit - codecov + pytest -xv --cov-report term-missing --cov-report xml --cov=./twindb_backup tests/unit test-including-azure-blob: ## Like 'make test' but includes tests for azure blob destination coverage run --source=twindb_backup -m pytest -xv tests/unit diff --git a/requirements.in b/requirements.in index ce772b11..eac6f4bb 100644 --- a/requirements.in +++ b/requirements.in @@ -7,11 +7,7 @@ boto3 ~= 1.7 psutil ~= 5.4 pyasn1 ~= 0.4 datadog ~= 0.22 -# Paramiko version 2.4.2 is buggy. See -# https://github.com/paramiko/paramiko/issues/1386 -# https://github.com/paramiko/paramiko/issues/1369 -paramiko ~= 2.4 -cryptography ~= 39.0 +paramiko ~= 2.5 google ~= 3.0 google-cloud-storage ~= 2.3.0 statsd ~= 3.3 diff --git a/requirements.txt b/requirements.txt index d54faf1c..7fdf3bc9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,19 +4,19 @@ # # pip-compile --output-file=requirements.txt requirements.in # -azure-core==1.26.3 +azure-core==1.26.4 # via # -r requirements.in # azure-storage-blob -azure-storage-blob==12.15.0 +azure-storage-blob==12.16.0 # via -r requirements.in bcrypt==4.0.1 # via paramiko -beautifulsoup4==4.11.2 +beautifulsoup4==4.12.2 # via google -boto3==1.26.89 +boto3==1.26.113 # via -r requirements.in -botocore==1.29.89 +botocore==1.29.113 # via # boto3 # s3transfer @@ -32,12 +32,11 @@ charset-normalizer==3.1.0 # via requests click==8.1.3 # via -r requirements.in -cryptography==39.0.2 +cryptography==40.0.1 # via - # -r requirements.in # azure-storage-blob # paramiko -datadog==0.44.0 +datadog==0.45.0 # via -r requirements.in google==3.0.0 # via -r requirements.in @@ -45,7 +44,7 @@ google-api-core==2.11.0 # via # google-cloud-core # google-cloud-storage -google-auth==2.16.2 +google-auth==2.17.3 # via # google-api-core # google-cloud-core @@ -58,7 +57,7 @@ google-crc32c==1.5.0 # via google-resumable-media google-resumable-media==2.4.1 # via google-cloud-storage -googleapis-common-protos==1.58.0 +googleapis-common-protos==1.59.0 # via google-api-core idna==3.4 # via requests @@ -70,7 +69,7 @@ jmespath==1.0.1 # botocore paramiko==2.12.0 # via -r requirements.in -protobuf==4.22.1 +protobuf==4.22.3 # via # google-api-core # google-cloud-storage @@ -86,7 +85,7 @@ pyasn1-modules==0.2.8 # via google-auth pycparser==2.21 # via cffi -pymysql==1.0.2 +pymysql==1.0.3 # via -r requirements.in pynacl==1.5.0 # via paramiko diff --git a/requirements_dev.in b/requirements_dev.in index 7acb66cd..a12322d0 100644 --- a/requirements_dev.in +++ b/requirements_dev.in @@ -2,7 +2,6 @@ black ~= 22.3 Sphinx ~= 4.5 bumpversion ~= 0.6 -codecov ~= 2.0 docker ~= 5.0 isort ~= 5.10 mock ~= 4.0 diff --git a/requirements_dev.txt b/requirements_dev.txt index a12a74fc..4c684f83 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -6,17 +6,15 @@ # alabaster==0.7.13 # via sphinx -astroid==2.15.0 +astroid==2.15.2 # via pylint -attrs==22.2.0 - # via pytest babel==2.12.1 # via sphinx black==22.12.0 # via -r requirements_dev.in -boto3==1.26.89 +boto3==1.26.113 # via moto -botocore==1.29.89 +botocore==1.29.113 # via # boto3 # moto @@ -35,13 +33,9 @@ click==8.1.3 # via # black # runlike -codecov==2.1.12 - # via -r requirements_dev.in -coverage[toml]==7.2.1 - # via - # codecov - # pytest-cov -cryptography==39.0.2 +coverage[toml]==7.2.3 + # via pytest-cov +cryptography==40.0.1 # via moto dill==0.3.6 # via pylint @@ -49,13 +43,13 @@ docker==5.0.3 # via -r requirements_dev.in docutils==0.17.1 # via sphinx -exceptiongroup==1.1.0 +exceptiongroup==1.1.1 # via pytest idna==3.4 # via requests imagesize==1.4.1 # via sphinx -importlib-metadata==6.0.0 +importlib-metadata==6.3.0 # via sphinx iniconfig==2.0.0 # via pytest @@ -81,19 +75,19 @@ mccabe==0.7.0 # via pylint mock==4.0.3 # via -r requirements_dev.in -moto==4.1.4 +moto==4.1.7 # via -r requirements_dev.in mypy-extensions==1.0.0 # via black -packaging==23.0 +packaging==23.1 # via # pytest # sphinx -pathspec==0.11.0 +pathspec==0.11.1 # via # black # yamllint -platformdirs==3.1.1 +platformdirs==3.2.0 # via # black # pylint @@ -103,11 +97,11 @@ pycodestyle==2.10.0 # via -r requirements_dev.in pycparser==2.21 # via cffi -pygments==2.14.0 +pygments==2.15.0 # via sphinx -pylint==2.17.0 +pylint==2.17.2 # via -r requirements_dev.in -pytest==7.2.2 +pytest==7.3.0 # via # -r requirements_dev.in # pytest-cov @@ -128,7 +122,6 @@ pyyaml==6.0 # yamllint requests==2.28.2 # via - # codecov # docker # moto # responses @@ -163,9 +156,9 @@ tomli==2.0.1 # coverage # pylint # pytest -tomlkit==0.11.6 +tomlkit==0.11.7 # via pylint -types-pyyaml==6.0.12.8 +types-pyyaml==6.0.12.9 # via responses typing-extensions==4.5.0 # via @@ -185,7 +178,7 @@ wrapt==1.15.0 # via astroid xmltodict==0.13.0 # via moto -yamllint==1.29.0 +yamllint==1.30.0 # via -r requirements_dev.in zipp==3.15.0 # via importlib-metadata