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

Open source protobuf gmock matchers #3142

Open
rohitsaboo opened this issue May 25, 2017 · 6 comments
Open

Open source protobuf gmock matchers #3142

rohitsaboo opened this issue May 25, 2017 · 6 comments
Labels

Comments

@rohitsaboo
Copy link

Hey folks,

Is it possible to open source the protobuf gmock matchers?

Thanks,
Rohit

@davidzchen
Copy link
Contributor

This has been opened since 2017, and there are many disparate fragments and variations of the proto gmock matchers floating around. It would be great to have an officially maintained version.

Are there any plans to do this?

Copy link

We triage inactive PRs and issues in order to make it easier to find active work. If this issue should remain active or becomes active again, please add a comment.

This issue is labeled inactive because the last activity was over 90 days ago.

@github-actions github-actions bot added the inactive Denotes the issue/PR has not seen activity in the last 90 days. label Jun 17, 2024
@davidzchen
Copy link
Contributor

Has there been any progress on this?

@github-actions github-actions bot removed the inactive Denotes the issue/PR has not seen activity in the last 90 days. label Jun 20, 2024
Copy link

We triage inactive PRs and issues in order to make it easier to find active work. If this issue should remain active or becomes active again, please add a comment.

This issue is labeled inactive because the last activity was over 90 days ago. This issue will be closed and archived after 14 additional days without activity.

@github-actions github-actions bot added the inactive Denotes the issue/PR has not seen activity in the last 90 days. label Sep 18, 2024
@tonyliaoss
Copy link
Member

Hello,

The reason that this hasn't been done after all this time is due to a slightly-weird ownership model. Matchers like EqualsProto are not owned by GoogleTest. Internally EqualsProto uses MessageDifferencer that actually does the matching, and of course, we own MessageDifferencer.

I think the right way to think about this is that the core GoogleTest shouldn't need to know about protobufs. If anything, Protobuf should depend on GoogleTest, instead of the other way around.

Internally within Google though, GoogleTest folks are the ones supporting matchers like EqualsProto, while we support MessageDifferencer. This isn't a big deal if you have a monorepo like Google, but in the open source world every package has a different repo, "lockstep changes" can be harder to make.

Expanding a bit on what I mean by "lockstep changes": imagine there is a single change in GoogleTest that necessitated changes in something like EqualsProto. Now in order to export this change, two PRs needs to be sent simultaneously to both GoogleTest and Protobuf, and integration tests for each repo will fail, because they are still running with the old version of protobuf/googletest.

I think this is something we want to open source eventually, because Google is using/starting more and more third party projects -- and not being able have EqualsProto etc can be quite a pain. We just need to figure out the support story here first.

@tonyliaoss tonyliaoss removed the inactive Denotes the issue/PR has not seen activity in the last 90 days. label Sep 18, 2024
@tonyliaoss
Copy link
Member

This seems related to google/googletest#1761

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

No branches or pull requests

4 participants