Add support and example using V3/V4 matchers and generators
Closed this issue · 5 comments
“Add support” means adding DSL methods that call the underlying Rust functionality.
“Add example” means create an example Python project that showcases using the functionality.
Do we have an idea of when V3 support will be added?
You can monitor the progress towards Pact-Python v3 (which will make use FFI backend) in the tracking issue:
Unfortunately, as you can see, there's a few other tickets before I eventually get to this... Having said that, you are more than welcome to contribute to Pact Python, and I can absolutely help you out get started :)
The current progress at the moment, has been focusing on getting the HTTP consumers and providers working all the way up to V4 of the spec (the consumer side is working, the providers is a WIP). Once that is done, I intend to release v2.2
and make an announcement.
I would like to ask which issues would bring the release of v3 closer, and trying to understand what would be the time effort in delivering it. At my current company we would like to use Pact V3 functionalities, and we are eager to contribute but would need to understand the amount of work and possible time frame, so that we can incorporate it into our roadmap.
Of course, happy to elaborate @MaciJas!
The current plan is to release v2.2
within the next couple of weeks which will contain a pact.v3
module containing what will eventually become Pact Python v3. Once version 3 is formally released, the pact.v3
module will become the main pact
module; and to assist with the transition, the current pact
module will be placed under the pact.v2
namespace so that people can migrate their code progressively.
The entire roadmap for V3 is outlined above; however, the aim for v2.2
is to have fully implemented the HTTP consumer and provider compatibility suite, for Pact Specifications 1 through 4.
At the time of the v2.2
release, I will provide a major update to the README and docs to facilitate the discovery of what will become Pact Python v3. I also anticipate that contributions will become a lot easier from v2.2
onwards, as the main foundational work for the FFI is complete.