Releases: pact-foundation/pact-python
Releases · pact-foundation/pact-python
v2.2.1
Feat
- ffi: upgrade ffi to 0.4.22
- v3: add async message provider
- v3: implement message verification
- v3: remove deprecated messages iterator
- v3: improve exception types
- v3: add enum type aliases
- ffi: upgrade ffi 0.4.21
Fix
- ffi: use
with_binary_body
Refactor
- tests: move InteractionDefinition in own module
- tests: make
_add_body
a method of Body - v3: new interaction iterators
Pull Requests
- chore: update changelog by @JP-Ellis in #656
- chore(deps): update dependency devel/ruff to v0.3.6 by @renovate in #657
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.6 by @renovate in #658
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.22.0 by @renovate in #659
- chore(deps): update peter-evans/create-pull-request digest to c55203c by @renovate in #662
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.7 by @renovate in #661
- chore(deps): update dependency devel/ruff to v0.3.7 by @renovate in #660
- chore(deps): update ubuntu:22.04 docker digest to 1b8d8ff by @renovate in #663
- chore(deps): update peter-evans/create-pull-request digest to 9153d83 by @renovate in #664
- chore(deps): update actions/upload-artifact digest to 1746f4a by @renovate in #667
- chore(deps): update actions/download-artifact digest to 8caf195 by @renovate in #666
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.24.0 by @renovate in #665
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.0 by @renovate in #669
- chore(deps): update dependency devel/ruff to v0.4.0 by @renovate in #668
- chore(deps): update actions/download-artifact digest to 9c19ed7 by @renovate in #673
- chore(deps): update actions/checkout digest to 1d96c77 by @renovate in #672
- chore(deps): update actions/upload-artifact digest to 6546280 by @renovate in #674
- chore(deps): update dependency devel/ruff to v0.4.1 by @renovate in #670
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.1 by @renovate in #671
- chore(deps): update actions/download-artifact digest to 65a9edc by @renovate in #675
- chore(deps): update dependency devel-types/mypy to v1.10.0 by @renovate in #676
- ci: fix macos-latest by @JP-Ellis in #677
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.25.0 by @renovate in #685
- chore(deps): update pre-commit hook igorshubovych/markdownlint-cli to v0.40.0 by @renovate in #684
- chore(deps): update ubuntu:22.04 docker digest to 6d7b5d3 by @renovate in #682
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.2 by @renovate in #681
- chore(deps): update actions/checkout digest to 0ad4b8f by @renovate in #679
- chore(deps): update peter-evans/create-pull-request digest to 6d6857d by @renovate in #678
- chore(deps): update ubuntu docker tag to v24 by @renovate in #683
- chore(deps): update dependency devel/ruff to v0.4.2 by @renovate in #680
- docs(CONTRIBUTING.md): update installation steps by @qmg-drettie in #687
- Rust FFI Blog Post by @JP-Ellis in #686
- chore(deps): update pre-commit hook igorshubovych/markdownlint-cli to v0.41.0 by @renovate in #701
- chore(deps): update actions/checkout digest to a5ac7e5 by @renovate in #697
- chore(deps): update codecov/codecov-action digest to 125fc84 by @renovate in #688
- chore(deps): update pypa/cibuildwheel action to v2.18.1 by @renovate in #695
- chore(deps): update softprops/action-gh-release digest to 69320db by @renovate in #692
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.27.0 by @renovate in #696
- chore(deps): update pactfoundation/pact-broker:latest docker digest to fc44f0a by @renovate in #694
- chore: group renovate updates by @JP-Ellis in #702
- ci: narrow when docs are built and published by @JP-Ellis in #704
- chore(deps): update pypa/cibuildwheel action to v2.19.0 by @renovate in #705
- chore: use uv to install packages by @JP-Ellis in #715
- Feat/async message consumer by @JP-Ellis in #714
- chore(deps): update softprops/action-gh-release digest to a74c6b7 by @renovate in #713
- chore(deps): update dependency psutil to v6 by @renovate in #712
- chore(deps): update peter-evans/create-pull-request digest to c5a7806 by @renovate in #711
- chore(deps): update actions/checkout digest to 692973e by @renovate in #709
- chore(deps): update codecov/codecov-action digest to e28ff12 by @renovate in #707
- chore(deps): update pypa/gh-action-pypi-publish action to v1.9.0 by @renovate in #710
- chore(deps): update pypa/cibuildwheel action to v2.19.1 by @renovate in #708
- chore(deps): update ubuntu:24.04 docker digest to 2e863c4 by @renovate in #689
- chore(deps): update dependency devel-types/mypy to v1.10.1 by @renovate in #717
- chore(deps): update dependency devel-test/pytest to ~=8.2.2 by @renovate in #617
- chore(deps): update ruff to v0.4.10 by @renovate in #703
- chore(deps): update pypa/cibuildwheel action to v2.19.2 by @renovate in #719
- chore(deps): update ruff to v0.5.0 by @renovate in #718
- chore(deps): update docker/setup-qemu-action digest to 5927c83 by @renovate in #720
- chore(deps): update ruff to v0.5.1 by @renovate in #721
- chore(deps): update actions/download-artifact digest to fa0a91b - autoclosed by @renovate in #722
- chore(deps): update actions/upload-artifact digest to 0b2256b by @renovate in #723
- chore(deps): update softprops/action-gh-release digest to fb2d031 by @renovate in #729
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.28.0 by @renovate in #728
- chore(deps): update ruff to v0.5.2 by @renovate in #727
- chore(deps): update actions/setup-python digest to 39cd149 by @renovate in #726
- chore: update GitHub templates by @JP-Ellis in #730
- Feat/async message producer by @valkolovos in #725
- chore(deps): update dependency devel-types/mypy to v1.11.0 by @renovate in #735
- chore(deps): update softprops/action-gh-release digest to c062e08 by @renovate in #734
- chore(deps): update ruff to v0.5.4 by @renovate in #733
- chore(deps): update dependency devel-test/pytest to ~=8.3.1 by @renovate in #736
- chore(ci): disable windows arm wheels by @JP-Ellis in https://github.com/pact-fo...
v2.2.0
Feat
- upgrade FFI to 0.4.19
- v3: add verbose mismatches
- v3: add verifier class
Fix
- v3: strip embedded user/password from urls
- v3: allow optional publish options
- delay pytest 8.1
Refactor
- remove relative imports
- tests: move parse_headers/matching_rules out of class
Pull Requests
- chore: update changelog by @JP-Ellis in #602
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.18.0 by @renovate in #603
- chore(deps): update pypa/gh-action-pypi-publish action to v1.8.14 by @renovate in #604
- chore(deps): update dependency types/mypy to v1.9.0 by @renovate in #605
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.2 by @renovate in #608
- chore(deps): update dependency dev/ruff to v0.3.2 by @renovate in #607
- fix: delay pytest 8.1 by @JP-Ellis in #611
- chore(ci): remove cirrus by @JP-Ellis in #609
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.18.1 by @renovate in #610
- chore(deps): update softprops/action-gh-release action to v2 by @renovate in #606
- Groundwork API for Provider by @JP-Ellis in #575
- chore(deps): update softprops/action-gh-release digest to 3198ee1 by @renovate in #614
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.18.3 by @renovate in #613
- chore(deps): update pypa/cibuildwheel action to v2.17.0 by @renovate in #615
- chore(deps): refactor dependencies by @JP-Ellis in #616
- Re-enable tests by @JP-Ellis in #619
- feat(v3): add verbose mismatches to logging by @JP-Ellis in #620
- chore: fix missed s/test/devel-test/ by @JP-Ellis in #621
- Improve test logging by @JP-Ellis in #624
- chore(deps): update softprops/action-gh-release digest to 9d7c94c by @renovate in #623
- chore(deps): update peter-evans/create-pull-request digest to 70a41ab by @renovate in #622
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.18.4 by @renovate in #625
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.3 by @renovate in #627
- chore(deps): update dependency devel/ruff to v0.3.3 by @renovate in #626
- chore(deps): update actions/cache digest to 0c45773 by @renovate in #630
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.20.0 by @renovate in #629
- chore(deps): update dependency devel/ruff to v0.3.4 by @renovate in #632
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.4 by @renovate in #633
- V1 provider compatibility suite by @JP-Ellis in #631
- chore(deps): update dependency devel-test/pytest-cov to v5 by @renovate in #634
- chore(deps): update codecov/codecov-action digest to c16abc2 by @renovate in #637
- chore(deps): update actions/setup-python digest to 82c7e63 by @renovate in #636
- HTTP Provider Compatibility Suite by @JP-Ellis in #638
- chore(deps): update dependency devel/ruff to v0.3.5 by @renovate in #642
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.5 by @renovate in #643
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.21.3 by @renovate in #641
- chore(deps): update codecov/codecov-action digest to 7afa10e by @renovate in #645
- chore(deps): update pre-commit hook pre-commit/pre-commit-hooks to v4.6.0 by @renovate in #646
- docs: setup mkdocs by @JP-Ellis in #414
- Docs/v2.2 by @JP-Ellis in #652
- chore(deps): pin dependencies by @renovate in #648
- chore(deps): update codecov/codecov-action digest to 8450866 by @renovate in #647
- chore(deps): update actions/deploy-pages action to v4 by @renovate in #649
- chore(deps): update actions/setup-python action to v5 by @renovate in #650
- chore(deps): update actions/upload-pages-artifact action to v3 by @renovate in #651
- feat: upgrade FFI to 0.4.19 by @JP-Ellis in #653
- chore(test): disable failing tests on windows by @JP-Ellis in #654
Full Changelog: v2.1.3...v2.2.0
v2.1.3
Fix
- avoid wheel bloat
Pull Requests
- chore: update changelog by @JP-Ellis in #585
- chore(deps): update pactfoundation/pact-broker:latest docker digest to 8f10947 by @renovate in #578
- docs: fix repository link typo by @JP-Ellis in #587
- chore(ci): clean wheels by @JP-Ellis in #589
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.17.0 by @renovate in #590
- chore(deps): update ubuntu:22.04 docker digest to 77906da by @renovate in #588
- docs: fix links to
CONTRIBUTING.md
by @JP-Ellis in #594 - chore(ci): fix pypy before-build by @JP-Ellis in #595
- Chore/more wheel fixes by @JP-Ellis in #598
- chore(deps): update dependency dev/ruff to v0.3.1 by @renovate in #596
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.1 by @renovate in #597
- chore(ci): update concurrency group by @JP-Ellis in #600
- chore(ci): adapt before-build for windows by @JP-Ellis in #601
Full Changelog: v2.1.2...v2.1.3
v2.1.2
BREAKING CHANGE
- The public functions within the constants module have been removed. If you previously used them, please make use of the constants. For example, instead of
pact.constants.broker_client_exe()
usepact.constants.BROKER_CLIENT_PATH
instead. - It is possible to use the system installed Pact executables by setting
PACT_USE_SYSTEM_BINS
toTrue
orYes
(case insensitive).
Feat
- add support for musllinux_aarch64
- v3: add specification attribute to pacts
- v3: upgrade ffi to 0.4.18
- determine version from vcs
- v3: add with_matching_rules
- add python 3.12 support
- v3: implement server log methods
- v3: add mock server mismatches
- v3: implement Pact Handle methods
- ffi: add OwnedString class
- v3: implement interaction methods
- v3: implement pact class
- v3: add
v3.ffi
module
Fix
- clean pact interactions on exception
- v3: incorrect arg order
- v3: rename
with_binary_file
- example: publish message pact
- example: publish_verification_results typo
- example: unknown action
- v3: add
__next__
implementation - deps: add yarl dependency
- v3: unconventional
__repr__
implementation - build: include omitted
lib
dir - test: ignore internal deprecation warnings
- ci: add missing environment
Refactor
- v3: split interactions into modules
- refactor constants
Pull Requests
- chore: add future deprecation warnings by @JP-Ellis in #398
- fix(ci): add missing environment by @JP-Ellis in #406
- style: fix pre-commit lints by @JP-Ellis in #417
- Reduce CI Runs on Draft PRs by @JP-Ellis in #412
- Fix hatch test scripts by @JP-Ellis in #409
- FFI Groundwork by @JP-Ellis in #395
- FFI Wrapper by @JP-Ellis in #403
- Pact Consumer by @JP-Ellis in #410
- chore: add label sync by @JP-Ellis in #429
- Feat/interaction implementation by @JP-Ellis in #424
- Add renovate dependency management by @JP-Ellis in #427
- chore: enable lints fully by @JP-Ellis in #426
- chore(deps): update pre-commit hook psf/black to v23.10.1 by @renovate in #432
- chore(deps): update actions/checkout action to v4 by @renovate in #433
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.2 by @renovate in #431
- Add FFI type hinting by @JP-Ellis in #436
- feat(ffi): add OwnedString class by @JP-Ellis in #438
- chore(labels): fix incorrect label alias by @JP-Ellis in #441
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.3 by @renovate in #440
- chore(deps): update dependency types/mypy to v1.6.1 by @renovate in #443
- chore: exclude python 3.12 by @JP-Ellis in #444
- feat(v3): implement Pact Handle methods by @JP-Ellis in #439
- fix(v3): add next implementation by @JP-Ellis in #447
- fix(example): unknown action by @JP-Ellis in #448
- chore(ci): revise pypi publishing by @JP-Ellis in #454
- chore(deps): update dependency dev/ruff to v0.1.4 by @renovate in #456
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.4 by @renovate in #457
- fix: provider verification should use publish_verification_results by @neringaalt in #455
- Fix/ruff linting by @JP-Ellis in #459
- chore(deps): update pre-commit hook psf/black to v23.11.0 by @renovate in #461
- chore(deps): update dependency dev/black to v23.11.0 by @renovate in #460
- fix/workflow-permissions by @JP-Ellis in #462
- chore(deps): update dependency dev/ruff to v0.1.5 by @renovate in #463
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.5 by @renovate in #464
- chore(deps): update dependency types/mypy to v1.7.0 by @renovate in #466
- docs(readme): fix links to examples by @filipsnastins in #467
- chore(deps): update pre-commit hook pre-commit/mirrors-prettier to v3.1.0 by @renovate in #477
- Consumer Compatibility Suite (V1) by @JP-Ellis in #468
- chore: update submodule by @JP-Ellis in #478
- chore(deps): update dependency dev/ruff to v0.1.6 by @renovate in #480
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.6 by @renovate in #481
- feat: add python 3.12 support by @JP-Ellis in #422
- chore(deps): update dependency types/mypy to v1.7.1 by @renovate in #482
- chore(deps): update pypa/gh-action-pypi-publish action to v1.8.11 by @renovate in #483
- chore(deps): update pre-commit hook commitizen-tools/commitizen to v3.13.0 by @renovate in #484
- chore(deps): update dependency dev/ruff to v0.1.7 by @renovate in #485
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.7 by @renovate in #486
- chore(deps): use renovate best practices by @JP-Ellis in #487
- chore(deps): pin dependencies by @renovate in #488
- chore(deps): update actions/setup-python action to v5 by @renovate in #489
- chore(deps): update pre-commit hook psf/black to v23.12.0 by @renovate in #491
- chore(deps): update dependency dev/black to v23.12.0 by @renovate in #490
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.8 by @renovate in #493
- chore(deps): update dependency dev/ruff to v0.1.8 by @renovate in #492
- chore(deps): update ubuntu:22.04 docker digest to 6042500 by @renovate in #496
- chore(deps): update actions/download-artifact action to v4 by @renovate in #494
- chore(deps): update actions/upload-artifact action to v4 by @renovate in #495
- chore(ci): re-enable pypy builds on Windows by @JP-Ellis in #479
- chore(deps): update actions/download-artifact digest to f44cd7b by @renovate in #497
- chore(deps): update dependency dev/ruff to v0.1.9 by @renovate in #499
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.9 by @renovate in #500
- chore(deps): update dependency types/mypy to v1.8.0 by @renovate in #498
- chore(deps): update dependency dev/black to v23.12.1 by @renovate in #501
- chore(deps): update pre-commit hook psf/black to v23.12.1 by @renovate in #502
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.10 by @renovate in #504
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.1.11 by @renovate in #505
- chore(deps): update dependency dev/ruff to v0.1.11 by @renovate in #503
- chore(deps): update pactfoundation/pact-broker:latest docker digest to 9cdd475 by @renovate in #506
- chore(deps): update actions/download-artifact digest to 6b208ae by @renovate in https://gith...
v2.1.0
What's Changed
BREAKING CHANGE
- Drop support for Python 3.6 and 3.7
Feat
- bump pact standalone to 2.0.7
Fix
- ci: pypi publish
- github: fix typo in template
- migrate to pyproject.toml and hatch
Pull Requests
- style: add pre-commit hooks and editorconfig by @JP-Ellis in #385
- chore: migrate to pyproject.toml and hatch by @JP-Ellis in #371
- docs: contribution guideline by @JP-Ellis in #390
- Fix existing examples by @JP-Ellis in #387
- fix(github): fix typo in template by @JP-Ellis in #401
- chore(gitignore): update from upstream templates by @JP-Ellis in #404
- Release: v2.1.0 by @JP-Ellis in #394
Full Changelog: v2.0.1...v2.1.0
pact-python-2.0.1
pact-python-2.0.0
What's Changed
- doc: actualise guide on how to make contributions by @sergeyklay in #328
- ci: add python 3.11 to test matrix by @sergeyklay in #331
- fix: remove dead code by @sergeyklay in #330
- feat(test): add docker images for Python 3.9-3.11 for testing purposes by @sergeyklay in #335
- build: use a single Dockerfile, providing args for the Python version by @mike-geeves-oxb in #339
- docs: update the documentation for maintainers regarding the releasing by @elliottmurray in #327
- feat: add matchers for ISO 8601 date format by @sergeyklay in #333
- Fix CORS parameter not doing anything by @Lukas-dev-threads in #341
- Feat: ARM64 Support for OSX / Linux + Windows 32 bit support by @YOU54F in #342
- build(deps): bump flask from 2.2.2 to 2.2.5 in /examples/message by @dependabot in #347
- build(deps): bump flask from 2.2.2 to 2.2.5 in /examples/flask_provider by @dependabot in #348
- build(deps-dev): bump flask from 2.2.2 to 2.2.5 by @dependabot in #349
- style: add missing newline/linefeed by @sergeyklay in #351
- chore(docs): update provider verifier options table by @YOU54F in #346
- test: v2.0.2 (pact-2.0.2) - pact-ruby-standalone by @YOU54F in #353
New Contributors
- @sergeyklay made their first contribution in #328
- @mike-geeves-oxb made their first contribution in #339
- @Lukas-dev-threads made their first contribution in #341
Full Changelog: v1.7.0...v2.0.0
pact-python-1.7.0
Minor to incorporate a few misc changes dating 6 months
What's Changed
- [Snyk] Security upgrade wheel from 0.24.0 to 0.38.0 by @mefellows in #317
- fix: setup security issue by @elliottmurray in #318
- feat: Enhance provider states for pact-message by @nsfrias in #322
- chore: /s/Pactflow/PactFlow by @YOU54F in #325
New Contributors
- @mefellows made their first contribution in #317
- @nsfrias made their first contribution in #322
Full Changelog: v1.6.0...v1.7.0
pact-python-1.6.0
v1.6.0 Releasing version 1.6.0
pact-python-1.5.2
v1.5.2 Releasing version 1.5.2