Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: pycontribs/mk
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.7.0
Choose a base ref
...
head repository: pycontribs/mk
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: refs/heads/main
Choose a head ref
  • 10 commits
  • 11 files changed
  • 3 contributors

Commits on Dec 24, 2024

  1. [pre-commit.ci] pre-commit autoupdate (#252)

    Co-authored-by: Sorin Sbarnea <ssbarnea@redhat.com>
    Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
    pre-commit-ci[bot] and ssbarnea authored Dec 24, 2024
    Copy the full SHA
    4828a7d View commit details
  2. Bump codecov/codecov-action from 4 to 5 (#260)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Sorin Sbarnea <ssbarnea@redhat.com>
    dependabot[bot] and ssbarnea authored Dec 24, 2024
    Copy the full SHA
    af894f3 View commit details
  3. Bump coactions/dynamic-matrix from 3 to 4 (#254)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Sorin Sbarnea <ssbarnea@redhat.com>
    dependabot[bot] and ssbarnea authored Dec 24, 2024
    Copy the full SHA
    6a6c1c9 View commit details

Commits on Dec 25, 2024

  1. Copy the full SHA
    b14aa9a View commit details
  2. Bump the dependencies group across 1 directory with 33 updates (#266)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Sorin Sbarnea <ssbarnea@redhat.com>
    dependabot[bot] and ssbarnea authored Dec 25, 2024
    Copy the full SHA
    79c8834 View commit details
  3. Copy the full SHA
    7fa8466 View commit details

Commits on Dec 26, 2024

  1. Copy the full SHA
    509a37e View commit details

Commits on Dec 29, 2024

  1. Enable renovate (#271)

    ssbarnea authored Dec 29, 2024
    Copy the full SHA
    bcfe811 View commit details
  2. Copy the full SHA
    4710232 View commit details
  3. Bump the dependencies group in /.config with 5 updates (#270)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Dec 29, 2024
    Copy the full SHA
    0639285 View commit details
Showing with 176 additions and 171 deletions.
  1. +92 −96 .config/constraints.txt
  2. +9 −0 .github/renovate.json
  3. +5 −6 .github/workflows/tox.yml
  4. +32 −31 .pre-commit-config.yaml
  5. +1 −1 .tool-versions
  6. +1 −1 mypy.ini
  7. +3 −2 playbooks/test-integration.yml
  8. +28 −26 pyproject.toml
  9. +0 −3 samples/integration/nox.txt
  10. +1 −1 test/test_cli.py
  11. +4 −4 tox.ini
188 changes: 92 additions & 96 deletions .config/constraints.txt
Original file line number Diff line number Diff line change
@@ -1,103 +1,99 @@
#
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --all-extras --no-annotate --output-file=.config/constraints.txt --strip-extras --unsafe-package=backports-tarfile --unsafe-package=cryptography --unsafe-package=exceptiongroup --unsafe-package=jeepney --unsafe-package=secretstorage --unsafe-package=twine pyproject.toml
#
babel==2.16.0
beautifulsoup4==4.12.3
build==1.2.2
cachetools==5.5.0
cairocffi==1.7.1
cairosvg==2.7.1
certifi==2024.8.30
cffi==1.17.1
chardet==5.2.0
charset-normalizer==3.3.2
click==8.1.7
colorama==0.4.6
coverage==7.6.1
cssselect2==0.7.0
defusedxml==0.7.1
diskcache==5.6.3
distlib==0.3.8
docutils==0.21.2
filelock==3.16.1
ghp-import==2.1.0
gitdb==4.0.11
gitpython==3.1.43
idna==3.10
importlib-metadata==8.5.0
iniconfig==2.0.0
jaraco-classes==3.4.0
jaraco-context==6.0.1
jaraco-functools==4.0.2
jinja2==3.1.4
keyring==25.4.1
markdown==3.7
markdown-exec==1.9.3
markdown-it-py==3.0.0
markupsafe==2.1.5
mdurl==0.1.2
mergedeep==1.3.4
mkdocs==1.6.1
mkdocs-autorefs==1.2.0
mkdocs-gen-files==0.5.0
mkdocs-get-deps==0.2.0
mkdocs-htmlproofer-plugin==1.3.0
mkdocs-material==9.5.36
mkdocs-material-extensions==1.3.1
more-itertools==10.5.0
nh3==0.2.18
packaging==24.1
paginate==0.5.7
pathspec==0.12.1
pillow==10.4.0
pip==24.2
pipdeptree==2.23.4
pkginfo==1.11.1
platformdirs==4.3.6
pluggy==1.5.0
py-cpuinfo==9.0.0
pycparser==2.22
pygments==2.18.0
pymdown-extensions==10.9
pyproject-api==1.8.0
pyproject-hooks==1.1.0
pytest==8.3.3
pytest-benchmark==4.0.0
pytest-plus==0.7.0
python-dateutil==2.9.0.post0
pyyaml==6.0.2
pyyaml-env-tag==0.1
readme-renderer==44.0
regex==2024.9.11
requests==2.32.3
requests-toolbelt==1.0.0
rfc3986==2.0.0
rich==13.8.1
setuptools==75.1.0
shellingham==1.5.4
six==1.16.0
smmap==5.0.1
soupsieve==2.6
subprocess-tee==0.4.2
tinycss2==1.3.0
tomli==2.0.1 ; python_version < "3.11"
tox==4.20.0
typer==0.12.5
typer-config==1.4.0
typing-extensions==4.12.2
urllib3==2.2.3
virtualenv==20.26.5
watchdog==5.0.2
webencodings==0.5.1
zipp==3.20.2
# This file was autogenerated by uv via the following command:
# tox run -e deps
babel==2.16.0 ; sys_platform != 'win32' # via mkdocs-material
beautifulsoup4==4.12.3 ; sys_platform != 'win32' # via mkdocs-htmlproofer-plugin
build==1.2.2.post1 ; sys_platform != 'win32' # via mk (pyproject.toml)
cachetools==5.5.0 ; sys_platform != 'win32' # via tox
cairocffi==1.7.1 ; sys_platform != 'win32' # via cairosvg
cairosvg==2.7.1 ; sys_platform != 'win32' # via mk (pyproject.toml)
certifi==2024.12.14 ; sys_platform != 'win32' # via requests
cffi==1.17.1 ; sys_platform != 'win32' # via cairocffi, cryptography
chardet==5.2.0 ; sys_platform != 'win32' # via tox
charset-normalizer==3.4.1 ; sys_platform != 'win32' # via requests
click==8.1.8 ; sys_platform != 'win32' # via mkdocs, typer
colorama==0.4.6 ; sys_platform != 'win32' # via build, mkdocs-material, tox
coverage==7.6.10 ; sys_platform != 'win32' # via mk (pyproject.toml)
cssselect2==0.7.0 ; sys_platform != 'win32' # via cairosvg
defusedxml==0.7.1 ; sys_platform != 'win32' # via cairosvg
diskcache==5.6.3 ; sys_platform != 'win32' # via mk (pyproject.toml)
distlib==0.3.9 ; sys_platform != 'win32' # via virtualenv
docutils==0.21.2 ; sys_platform != 'win32' # via readme-renderer
filelock==3.16.1 ; sys_platform != 'win32' # via tox, virtualenv
ghp-import==2.1.0 ; sys_platform != 'win32' # via mkdocs
gitdb==4.0.11 ; sys_platform != 'win32' # via gitpython
gitpython==3.1.43 ; sys_platform != 'win32' # via mk (pyproject.toml)
idna==3.10 ; sys_platform != 'win32' # via requests
importlib-metadata==8.5.0 ; python_full_version < '3.12' and platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via keyring
iniconfig==2.0.0 ; sys_platform != 'win32' # via pytest
jaraco-classes==3.4.0 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via keyring
jaraco-context==6.0.1 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via keyring
jaraco-functools==4.1.0 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via keyring
jinja2==3.1.5 ; sys_platform != 'win32' # via mkdocs, mkdocs-material
keyring==25.6.0 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via twine
markdown==3.7 ; sys_platform != 'win32' # via mkdocs, mkdocs-autorefs, mkdocs-htmlproofer-plugin, mkdocs-material, pymdown-extensions
markdown-exec==1.10.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
markdown-it-py==3.0.0 ; sys_platform != 'win32' # via rich
markupsafe==3.0.2 ; sys_platform != 'win32' # via jinja2, mkdocs, mkdocs-autorefs
mdurl==0.1.2 ; sys_platform != 'win32' # via markdown-it-py
mergedeep==1.3.4 ; sys_platform != 'win32' # via mkdocs, mkdocs-get-deps
mkdocs==1.6.1 ; sys_platform != 'win32' # via mkdocs-autorefs, mkdocs-gen-files, mkdocs-htmlproofer-plugin, mkdocs-material, mk (pyproject.toml)
mkdocs-autorefs==1.2.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
mkdocs-gen-files==0.5.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
mkdocs-get-deps==0.2.0 ; sys_platform != 'win32' # via mkdocs
mkdocs-htmlproofer-plugin==1.3.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
mkdocs-material==9.5.49 ; sys_platform != 'win32' # via mk (pyproject.toml)
mkdocs-material-extensions==1.3.1 ; sys_platform != 'win32' # via mkdocs-material, mk (pyproject.toml)
more-itertools==10.5.0 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via jaraco-classes, jaraco-functools
nh3==0.2.20 ; sys_platform != 'win32' # via readme-renderer
packaging==24.2 ; sys_platform != 'win32' # via build, mkdocs, pipdeptree, pyproject-api, pytest, tox, twine, mk (pyproject.toml)
paginate==0.5.7 ; sys_platform != 'win32' # via mkdocs-material
pathspec==0.12.1 ; sys_platform != 'win32' # via mkdocs
pillow==11.0.0 ; sys_platform != 'win32' # via cairosvg, mk (pyproject.toml)
pipdeptree==2.24.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
pkginfo==1.12.0 ; sys_platform != 'win32' # via twine
platformdirs==4.3.6 ; sys_platform != 'win32' # via mkdocs-get-deps, tox, virtualenv
pluggy==1.5.0 ; sys_platform != 'win32' # via pytest, tox, mk (pyproject.toml)
py-cpuinfo==9.0.0 ; sys_platform != 'win32' # via pytest-benchmark
pycparser==2.22 ; sys_platform != 'win32' # via cffi
pygments==2.18.0 ; sys_platform != 'win32' # via mkdocs-material, readme-renderer, rich
pymdown-extensions==10.13 ; sys_platform != 'win32' # via markdown-exec, mkdocs-material, mk (pyproject.toml)
pyproject-api==1.8.0 ; sys_platform != 'win32' # via tox
pyproject-hooks==1.2.0 ; sys_platform != 'win32' # via build
pytest==8.3.4 ; sys_platform != 'win32' # via pytest-benchmark, pytest-plus, mk (pyproject.toml)
pytest-benchmark==5.1.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
pytest-plus==0.7.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
python-dateutil==2.9.0.post0 ; sys_platform != 'win32' # via ghp-import
pyyaml==6.0.2 ; sys_platform != 'win32' # via mkdocs, mkdocs-get-deps, pymdown-extensions, pyyaml-env-tag, mk (pyproject.toml)
pyyaml-env-tag==0.1 ; sys_platform != 'win32' # via mkdocs
readme-renderer==44.0 ; sys_platform != 'win32' # via twine
regex==2024.11.6 ; sys_platform != 'win32' # via mkdocs-material
requests==2.32.3 ; sys_platform != 'win32' # via mkdocs-htmlproofer-plugin, mkdocs-material, requests-toolbelt, twine
requests-toolbelt==1.0.0 ; sys_platform != 'win32' # via twine
rfc3986==2.0.0 ; sys_platform != 'win32' # via twine
rich==13.9.4 ; sys_platform != 'win32' # via twine, typer, mk (pyproject.toml)
setuptools==75.6.0 ; sys_platform != 'win32' # via mk (pyproject.toml)
shellingham==1.5.4 ; sys_platform != 'win32' # via typer, mk (pyproject.toml)
six==1.17.0 ; sys_platform != 'win32' # via python-dateutil
smmap==5.0.1 ; sys_platform != 'win32' # via gitdb
soupsieve==2.6 ; sys_platform != 'win32' # via beautifulsoup4
subprocess-tee==0.4.2 ; sys_platform != 'win32' # via mk (pyproject.toml)
tinycss2==1.4.0 ; sys_platform != 'win32' # via cairosvg, cssselect2
tomli==2.0.1 ; python_full_version < '3.11' and sys_platform != 'win32' # via build, pyproject-api, pytest, tox, mk (pyproject.toml)
tox==4.23.2 ; sys_platform != 'win32' # via mk (pyproject.toml)
typer==0.15.1 ; sys_platform != 'win32' # via typer-config, mk (pyproject.toml)
typer-config==1.4.2 ; sys_platform != 'win32' # via mk (pyproject.toml)
urllib3==2.3.0 ; sys_platform != 'win32' # via requests, twine
virtualenv==20.28.0 ; sys_platform != 'win32' # via tox
watchdog==6.0.0 ; sys_platform != 'win32' # via mkdocs
webencodings==0.5.1 ; sys_platform != 'win32' # via cssselect2, tinycss2
zipp==3.21.0 ; python_full_version < '3.12' and platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform != 'win32' # via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# The following packages were excluded from the output:
# backports-tarfile
# cryptography
# exceptiongroup
# jeepney
# pip
# secretstorage
# twine
# typing-extensions
9 changes: 9 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"autoApprove": true,
"automerge": true,
"automergeStrategy": "squash",
"configMigration": true,
"pre-commit": {
"enabled": true
}
}
11 changes: 5 additions & 6 deletions .github/workflows/tox.yml
Original file line number Diff line number Diff line change
@@ -27,15 +27,14 @@ jobs:
steps:
- name: Determine matrix
id: generate_matrix
uses: coactions/dynamic-matrix@v3
uses: coactions/dynamic-matrix@v4
with:
min_python: "3.9"
min_python: "3.10"
default_python: |
3.9
3.10
max_python: "3.13"
other_names: |
lint:tox -e py39-lint;tox -e py310-lint
lint:tox -e py310-lint;tox -e py310-lint
docs
integration
pkg
@@ -156,14 +155,14 @@ jobs:

- name: Check for expected number of coverage.xml reports
run: |
JOBS_PRODUCING_COVERAGE=7
JOBS_PRODUCING_COVERAGE=6
if [ "$(find . -name coverage.xml | wc -l | bc)" -ne "${JOBS_PRODUCING_COVERAGE}" ]; then
echo "::error::Number of coverage.xml files was not the expected one (${JOBS_PRODUCING_COVERAGE}): $(find . -name coverage.xml |xargs echo)"
exit 1
fi
- name: Upload coverage data
uses: codecov/codecov-action@v4
uses: codecov/codecov-action@v5
with:
name: ${{ matrix.passed_name }}
# verbose: true # optional (default = false)
63 changes: 32 additions & 31 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,18 +1,23 @@
---
ci:
skip:
- lock
- pip-compile
- deps
repos:
- repo: https://github.com/renovatebot/pre-commit-hooks
rev: 39.85.0
hooks:
- id: renovate-config-validator
args: [--strict]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.6.7
rev: v0.8.4
hooks:
- id: ruff
args:
- --fix
- --exit-non-zero-on-fix
- repo: https://github.com/pycontribs/mirrors-prettier
rev: v3.3.3
- repo: https://github.com/rbubley/mirrors-prettier
rev: v3.4.2
hooks:
- id: prettier
always_run: true
@@ -21,24 +26,24 @@ repos:
- prettier-plugin-toml
- prettier-plugin-sort-json
- repo: https://github.com/streetsidesoftware/cspell-cli
rev: v8.13.3
rev: v8.17.0
hooks:
- id: cspell
# entry: codespell --relative
args: [--relative, --no-progress, --no-summary]
name: Spell check with cspell
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.41.0
rev: v0.43.0
hooks:
- id: markdownlint
- repo: https://github.com/psf/black
rev: 24.8.0
rev: 24.10.0
hooks:
- id: black
args:
- --safe
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
rev: v5.0.0
hooks:
- id: end-of-file-fixer
- id: trailing-whitespace
@@ -49,7 +54,7 @@ repos:
- id: debug-statements
language_version: python3
- repo: https://github.com/ansible/ansible-lint
rev: v24.9.2
rev: v24.12.2
hooks:
- id: ansible-lint
language_version: python3.10 # minimal supported officially
@@ -64,7 +69,7 @@ repos:
- yaml
entry: yamllint --strict
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.11.2
rev: v1.14.0
hooks:
- id: mypy
entry: mypy src/
@@ -79,7 +84,7 @@ repos:
- typer-config
- typer>=0.12.2
- repo: https://github.com/pycqa/pylint
rev: v3.3.0
rev: v3.3.3
hooks:
- id: pylint
additional_dependencies:
@@ -92,31 +97,27 @@ repos:
- subprocess-tee
- typer-config
- typer>=0.12.2
- repo: https://github.com/jazzband/pip-tools
rev: 7.4.1

# keep at bottom as these are slower
- repo: local
hooks:
- id: pip-compile
name: lock
alias: lock
always_run: true
# keyring excluded in order to keep lockfile portable between linux and macos
entry: pip-compile pyproject.toml
files: ^.config\/.*requirements.*$
- id: deps
name: Upgrade constraints files and requirements
files: ^(pyproject\.toml|requirements\.txt)$
language: python
language_version: "3.9" # minimal we support officially
language_version: "3.10" # minimal we support officially
entry: python3 -m uv pip compile -q --universal --all-extras --output-file=.config/constraints.txt pyproject.toml --upgrade
pass_filenames: false
stages: [manual]
stages:
- manual
additional_dependencies:
- pip>=22.3.1
- uv>=0.4.3
- id: pip-compile
name: deps
alias: deps
always_run: true
entry: pip-compile pyproject.toml --upgrade
files: ^.config\/.*requirements.*$
name: Check constraints files and requirements
files: ^(pyproject\.toml|requirements\.txt)$
language: python
language_version: "3.9" # minimal we support officially
language_version: "3.10" # minimal we support officially
entry: python3 -m uv pip compile -q --universal --all-extras --output-file=.config/constraints.txt pyproject.toml
pass_filenames: false
stages: [manual]
additional_dependencies:
- pip>=22.3.1
- uv>=0.4.3
2 changes: 1 addition & 1 deletion .tool-versions
Original file line number Diff line number Diff line change
@@ -1 +1 @@
github-cli 2.55.0
github-cli 2.64.0
2 changes: 1 addition & 1 deletion mypy.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[mypy]
python_version = 3.9
python_version = 3.10
color_output = True
error_summary = True
# TODO(ssbarnea): Remove ignores below:
5 changes: 3 additions & 2 deletions playbooks/test-integration.yml
Original file line number Diff line number Diff line change
@@ -19,8 +19,9 @@
url: https://github.com/python/typeshed
- name: flask-babel
url: https://github.com/python-babel/flask-babel
- name: nox
url: https://github.com/wntrblm/nox
# - name: nox
# url: https://github.com/wntrblm/nox
# disabled because presence of conda change the output
tasks:
- name: Show cache directory
ansible.builtin.debug:
Loading