I?m on board. would be want to split out the verifier as well? naming wise okay keeping it as is as we can use guidance to support what the user should be user and clearly mark in the readmes, spec support and status. so for each ruby lib point to its rust replacement
does it make sense to make pact-reference - pact-core or split into seperate repos per crate.
not sure how much value the examples ( python, js ) add anymore, with those languages being fleshed out now.
on the expedition of the decomissioning of the ruby libs, ive looked at a few options and pathways
1. create a top level pact tools doc page rather than landing on the cli tools overview
https://docs.pact.io/implementation_guides/cli
2. on the docs page show tools ( cli / available lang impls)
3. for each cli, show links to current ( rust ) and legacy (ruby)
4. for each legacy cli provide a migration path to rust cli
5. implement pact broker client functionality in rust, I?ve been making a start on this whilst learning rust after hitting a point of diminishing returns in the land of ruby packaging.
https://github.com/YOU54F/hello_cli - warning code may make rustaceans cry
1-4 should help users navigate the current landscape and provide more context to the available tooling, which we don?t have currently
5 should mean that to all intents and purposes we can stop talking about ruby as anything other than heritage with exception to the pact broker, and support ruby language end users in implementing a ruby client dsl over the ffi. I?ve got some samples in place in
https://github.com/YOU54F/pact-ruby-ffi
as a bit of an aside, but maybe a good opportunity. It appears that cargo fmt and my editor want to fight against the current code, and I feel like this might be an impediment to contributions. How would you feel about taking the commit history hit and adding in a linting step.
oh and with regards to the cli, i took an opinionated move to roll all the existing cli crates into one project, so it just built one executable. This saves on disk space and makes it easier just to have all of Pact in one place, which for me, makes the story of Pact just easier to tell in general. The entry point could be the cli rather than reams of documentation up front.
thoughts on a postcard? its nothing that can?t be undone and its been a good learning exercise on personal time. I?d love a cli where users could easily extend themselves, the gh cli is a create example of where users can register subcommands and the really nice thing about their impl, is users don?t have to code in golang, it could be a shell script, or a binary from any lang.
If we wanted to increase user exposure to rust, cli?s seem like a nice way to dip your toe in. I?d love to explore how users could extend the rust cli, by either integrating into their own cli tool written in rust ( maybe clap builder is exported from each crate and can be integrated into a users cli, or they can easily add in their own crate for a subcommand )
sorry brain dumping again haha