๐ Features
- _(v3)_ Add v3.ffi module
- _(v3)_ Implement pact class
- _(v3)_ Implement interaction methods
- _(ffi)_ Add OwnedString class
- _(v3)_ Implement Pact Handle methods
- _(v3)_ Add mock server mismatches
- _(v3)_ Implement server log methods
- Add python 3.12 support
- _(v3)_ Add with_matching_rules
- Determine version from vcs
- _(v3)_ Upgrade ffi to 0.4.18
- _(v3)_ Add specification attribute to pacts
- Add support for musllinux_aarch64
๐ Bug Fixes
- _(ci)_ Add missing environment
- _(test)_ Ignore internal deprecation warnings
- _(v3)_ Unconventional __repr__ implementation
- _(v3)_ Add __next__ implementation
- _(example)_ Unknown action
- _(example)_ Publish_verification_results typo
- _(example)_ Publish message pact
- _(v3)_ Rename `with_binary_file`
- _(v3)_ Incorrect arg order
- Clean pact interactions on exception
๐ Refactor
- _(v3)_ Split interactions into modules
๐จ Styling
- Fix pre-commit lints
- [**breaking**] Refactor constants
> 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()` use `pact.constants.BROKER_CLIENT_PATH` instead.
๐ Documentation
- _(v3)_ Update ffi documentation
- _(readme)_ Fix links to examples
- Add git submodule init
- Fix typos
โ๏ธ Miscellaneous Tasks
- Add future deprecation warnings
- _(ci)_ Disable on draft pull requests
- _(ci)_ Separate concurrency groups for builds
- Fix hatch test scripts
- _(test)_ Add pytest options in root
- _(build)_ Update packaging to build ffi
- _(tests)_ Add ruff.toml for tests directory
- _(ci)_ Update build targets
- _(v3)_ Create ffi.py
- _(tests)_ Remove empty file
- _(v3)_ Add str and repr to enums
- _(test)_ Move pytest cli args definition
- Add label sync
- _(test)_ Automatically generated xml coverage
- Enable lints fully
- _(pre-commit)_ Add mypy
- _(ffi)_ Add typing
- _(labels)_ Fix incorrect label alias
- Exclude python 3.12
- Fix wheel builds
- _(ci)_ Revise pypi publishing
- _(tests)_ Reduce log verbosity
- Fix ruff lints
- _(tests)_ Add compatibility suite as submodule
- _(ruff)_ Disable TD002
- Allow None content type
- _(tests)_ Implement consumer v1 feature
- _(ci)_ Checkout submodules
- _(ci)_ Fix examples testing
- _(ci)_ Clone submodules in Cirrus
- _(tests)_ Automatic submodule init
- Fix lints
- Update submodule
- _(ci)_ Set hatch to be verbose
- _(ci)_ Add test conclusion step
- _(ci)_ Breaking changes with for artifacts
- _(ci)_ Re-enable pypy builds on Windows
- _(dev)_ Replace black with ruff
- _(dev)_ Add markdownlint pre-commit
- _(ci)_ Fix pypy linux builds
- _(test/v3)_ Move bdd steps into shared module
- _(test/v3)_ Add v2 consumer compatibility suite
- _(tests)_ Add v3 consumer compatibility suite
- Update metadata
- _(tests)_ Move the_pact_file_for_the_test_is_generated to share util
- _(tests)_ Add v4 http consumer compatibility suite
- _(ci)_ Speed up wheels building on prs
- _(ci)_ Add caching
- Migrate from flat to src layout
- _(docs)_ Update changelog
- _(ci)_ Automate release process
- _(v3)_ Add warning on pact.v3 import
- _(ci)_ Remove check of wheels
- _(ci)_ Speed up build pipeline
- _(ci)_ Another build pipeline fix
- _(ci)_ Typo
๏ฟฝ Other
- Add g++ to cirrus linux image
Contributors
- JP-Ellis
- YOU54F
- dryobates
- filipsnastins
- neringaalt