Open YOU54F opened 1 day ago
Hi Yousaf,
Thank you for reaching out and for your thoughtful feedback on sbmt-pact. We appreciate the time and effort you’ve put into exploring our gem and sharing your observations. It’s clear that you have a deep understanding of the Pact ecosystem, and your insights are highly valuable.
Your proposal to integrate our features into pact-ruby is interesting, and we’re grateful for the invitation to collaborate. However, at this time, our team is fully focused on internal priorities that have already been set for the upcoming quarter. Over the past two quarters, we’ve invested significant effort into developing and refining our Pact-related tooling, and unfortunately, we’re not in a position to contribute to open-source initiatives right now.
That said, we’ve reviewed your feedback and found several excellent suggestions for improving sbmt-pact. While we can’t commit to addressing all of them immediately, we’ll be discussing which of these improvements we can prioritize during our team’s planning session in December. Your observations are incredibly helpful, and we appreciate you taking the time to share them.
We’re confident that your work will continue to strengthen Pact, and we look forward to seeing the progress you make with pact-ruby.
Hello team!
Firstly, awesome work on the library, great to see someone able to pick up on the pact-ruby-ffi wrapper library I created as a playtime hack with Ruby. Build it and they will come :)
We would love to try and integrate your changes into Pact-Ruby to enable users in the Ruby ecosystem, to leverage the new Rust core shared features, and to allow a migration path for the existing tests that have already been written, and the Pact-Ruby project has now been around for over 10 years.
Overview of ecosystem
The current Pact ruby ecosystem looks something like this
https://docs.pact.io/diagrams/ecosystem#ruby-goldberg-machine
Once we migrate over to the pact-ruby-ffi project completely, there is be no direct consumers of the pact-ruby-standalone project, meaning we can deprecate several of the libraries
leaving only the following as required.
Questions
So that leaves me with a couple of questions
Musings
I've taken a look at the library so far and have been working across this branch in my fork
A few things I have noticed so far, and this isn't critical at all. I've addressed most of these so far
It would be nice to retain parity with pact-ruby in a few places. I am implementing sbmt-pact from my fork, against pact_broker (as a provider) and pact_broker-client (as a consumer)
Demos
Adapted from existing pact-ruby demo codebases and real world production pact-foundation apps