Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Current state of the go implementation and roadmap #406

Closed
Metamogul opened this issue Apr 19, 2024 · 8 comments
Closed

Current state of the go implementation and roadmap #406

Metamogul opened this issue Apr 19, 2024 · 8 comments

Comments

@Metamogul
Copy link

Metamogul commented Apr 19, 2024

Expected behaviour

When trying to find information on the projects feature set and roadmap, I'd expect to find information that enables me to propose a decision wether and when to implement pact contract tests across the different services of our product.

Actual behaviour

The Roadmap section of the README currently links two pages: The roadmap on pact.io last edited ~4 years ago and a roadmap document in this projects GitHub wiki, last edited ~8 years ago. Obviously this cannot help gaining insights.

Trying to join the projects slack as pointed out in the README when looking for help leads to a company-private workspace that is not open to the general public. Following the help section on pact.io also does not provide any other sources of information.

Steps to reproduce

Read the README. Try to join slack.

Follow-up questions

The issues seems to indicate a lack of community resources to drive the project; outdated and scattered documentation (e.g. outdated docs on the go implementation on pact.io) or the removal of GraphQL support in the 2.x.x version of the go module support that impression, while the communication on the whole pact framework seems to have shifted to a company-private approach. This contributes to a situation where there is little transparency over the state of the project, its maintainers and their plans, and leaves me with doubts whether I should recommend the implementation of pact contract tests in our product. Adopting an only partly open source project as well as contributing seems risky long term.

Is there still an open community space in which I could get in touch with the maintainers? Are there any notable public contributions to this project at the moment or plans to keep it public?

@mefellows
Copy link
Member

mefellows commented Apr 19, 2024 via email

@Metamogul
Copy link
Author

Metamogul commented Apr 19, 2024

Hey @mefellows! Thanks for the super quick response and openness. So let's continue in Slack :-) Unfortunately the workspace is closed as I tried to explain above and prevents easily getting in touch. Specifically joining is limited to users with email addresses on the following TLDs:

rabobank.nl
freddiemac.com
cultureamp.com
chase.com
jpmchase.com
smartbear.com
trustvip.com

If you could add me with my work address I'd be glad to join.

@mefellows
Copy link
Member

mefellows commented Apr 19, 2024 via email

@YOU54F
Copy link
Member

YOU54F commented Apr 23, 2024

Sorry about the slack issue @Metamogul. we've had issues recently due to the way Slack works, it was tracked in the below issue.

pact-foundation/roadmap#26

tl;dr the invite link only lasts for a limited amount of users and we need to refresh the link, and then update the redirect for our invite link.

(e.g. outdated docs on the go implementation on pact.io)

ahh,

https://docs.pact.io/implementation_guides/go/readme

It seems that when we moved over to v2, we have lost our sync docs job

https://github.com/pact-foundation/pact-go/blob/v1.x.x/.github/workflows/trigger_pact_docs_update.yml

we will want to restore that against the master branch, which will allow it to trigger the sync job in the docs repo

https://github.com/pact-foundation/docs.pact.io/blob/master/scripts/sync/pact_go.rb

We would be happy to accept a pull request, or for it to be raised as a separate issue to track and resolve. It's obviously less than desirable for our centralised docs to be out of date with the readme in github, especially as we want to increase adoption of pact-go v2 which invariably teases out bugs.

while the communication on the whole pact framework seems to have shifted to a company-private approach.

outside of the slack invite being locked down (we don't have a paid slack account ), how would you suggest this is the case?

The framework is as open-source as it has ever been, we do more companies using the project, and some of those customers choose PactFlow (which is a commercial product), however the Pact ecosystem which serves both Pact Open source and PactFlow commercial users.

From a maintainer perspective, we are vastly outweighed by the number of users, vs the number of maintainers and active contributors. We all have varying pressures at work, and in our home life, but we are as committed as always to Pact being open and accessible for everyone

This contributes to a situation where there is little transparency over the state of the project, its maintainers and their plans, and leaves me with doubts whether I should recommend the implementation of pact contract tests in our product. Adopting an only partly open source project as well as contributing seems risky long term.

Is there still an open community space in which I could get in touch with the maintainers? Are there any notable public contributions to this project at the moment or plans to keep it public?

There are no plans to make it not public... and you are making contact in an open community space here in github.

You can see public contributions via git commit history, and pull requests. They ebb and flow, with users wants and needs.

There has been several go users, who have dived into the Pact matrix, learned about Pact's shared core (built in Rust) and done some Polyglot programming in the process.

@YOU54F
Copy link
Member

YOU54F commented Apr 23, 2024

Slack is locked down and not-open source, we lose history of conversations after 90 days. It's a shame to lose the valuable insight from the community, and not be able to serve it for others, so we did something about it.

We do so by leveraging another oss product https://github.com/Linen-dev/linen.dev where our slack history is fully searchable and hosted here

https://www.linen.dev/s/pact-foundation

That allows us to preserve conversation that takes place on Slack, for users for years to come.

We were previously scraping it and hosting it here https://docs.pact.io/slack but it wasn't as nice to consume

@YOU54F
Copy link
Member

YOU54F commented Apr 23, 2024

If you have ideas about pact-go's future, and want to help make it awesome, we are all ears, both in term so ideas, and PR's!

@YOU54F
Copy link
Member

YOU54F commented Apr 23, 2024

Sync job has been restored, and the website has been updated with the latest documentation

https://docs.pact.io/implementation_guides/go

thanks for bringing it to our attention

@Metamogul
Copy link
Author

Hey @YOU54F, thx for restoring the sync job and the various clarifications & transparency! This helps me assess the situation much better 😌 When it comes to contributions I'm already overbooked myself with my time – so my ability to contribute to the project depends largely on my employer's allocation of my hours. If I'll be given more time on our Pact implementation and I'll need to amend to the project I'll be pushing to make these publicly available as PR. For now, I think this issue can be closed. Thanks again for your time and the insightful posts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants