These 16 commits are when the Protocol Buffers files have changed:
Commit: | 72bef10 | |
---|---|---|
Author: | cpovirk | |
Committer: | Google Java Core Libraries |
Upgrade from [6-year-old](https://repo1.maven.org/maven2/com/google/protobuf/protobuf-lite/3.0.1/) `protobuf-lite` to its modern equivalent, `protobuf-javalite`. This change should mostly not be user-visible, since we [declare this dependency as `optional`](https://github.com/google/truth/blob/1de76958abc8f3dbfad07d142bd290dc53d7427a/extensions/liteproto/pom.xml#L43). The new version doesn't support the `optimize_for = LITE_RUNTIME` option in `.proto` files, presumably on the theory that you should be able to compile the same protobuf for both the "lite" and "speed" runtimes. Unfortunately, xolstice/protobuf-maven-plugin does not provide a way to pass the `lite` option to the protobuf compiler. (That option was added in https://github.com/xolstice/protobuf-maven-plugin/commit/3ae165e5f6b33f8a6221ece11cc79a7df5eeb8df, but that is not yet part of [a release](https://github.com/xolstice/protobuf-maven-plugin/tags). And the project doesn't appear very active lately.) So we can't generate the Java protobuf classes with that plugin. Maybe there's another plugin we could use, if only one that runs an arbitrary executable? But for now, I'm taking another approach: I'm submitting the generated sources. To generate them, I ran `mvn clean install -X -e`, found the location of the protobuf executable and arguments in the output, and ran it with `--java_out=lite:/the/path/from/the/output`. Then I tweaked the Maven setup to build those sources instead of generating and building the protobuf ones. Yuck. This could cause someone some frustration down the line when it comes time to make a change to the test protos. But given that we haven't had to change those protos yet in their 6+ years of existence, I'm hoping for the best. Another alternative for us to consider is to just not run these specific tests in our open-source build. RELNOTES=n/a PiperOrigin-RevId: 486951466
Commit: | f272084 | |
---|---|---|
Author: | Google Java Core Libraries | |
Committer: | Google Java Core Libraries |
Fix FieldSets.fromSetFields() to handle multiple messages with different oneof fields set RELNOTES=Fix bug in comparingExpectedFieldsOnly() regarding oneof fields PiperOrigin-RevId: 356583805
The documentation is generated from this commit.
Commit: | f36040d | |
---|---|---|
Author: | Chris Povirk |
Revert "Roll forward from 2eb500240d0b71d54500afdd7f3eb82e445e31bc after fixing field scope issues:" This reverts commit b50d878b75b3b8b81246389cd39e5cd731b531f8. We need to resolve some remaining API questions before including this in a release.
Commit: | b50d878 | |
---|---|---|
Author: | otjdavies | |
Committer: | Nick Glorioso |
Roll forward from 2eb500240d0b71d54500afdd7f3eb82e445e31bc after fixing field scope issues: - Add checks for FieldScope for * google.protobuf.Any.type_url * google.protobuf.Any.value - Add new tests for field scope and field absence. - Added workaround for b/144793871 ---- ProtoTruth: Unpack Any before comparing RELNOTES: - `ProtoTruthMessageDifferencer`: Unpacks Any messages before comparing the unpacked message. Using a user supplied TypeRegister in the FluentEqualityConfig. If the message descriptors can not be found in the TypeRegister that it reverts to the original behaviour of comparing the Any messages value ByteString. - `ProtoSubject`: added `usingTypeRegistry(TypeRegistry)` method to allow the user to provide a TypeRegistry for processing the Any fields it encounters. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=281689011
Commit: | 921d5b3 | |
---|---|---|
Author: | otjdavies | |
Committer: | Nick Glorioso |
Rollback 2eb500240d0b71d54500afdd7f3eb82e445e31bc *** Reason for rollback *** Caused continuous build failure, due to change of semantics of handling of typeUrl and value fields of any messages. NO_SQ=PURE_ROLLBACK *** Original change description *** ProtoTruth: Unpack Any before comparing Relnotes: - `ProtoTruthMessageDifferencer`: Unpacks Any messages before comparing the unpacked message. Using a user supplied TypeRegister in the FluentEqualityConfig. If the message descriptors can not be found in the TypeRegister that it reverts to the original behaviour of comparing the Any messages value ByteString. - `ProtoSubject`: added `usingTypeRegistry(TypeRegistry)` method to allow the user to provide a TypeRegistry for processing the Any f... *** ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=280757635
Commit: | 2eb5002 | |
---|---|---|
Author: | otjdavies | |
Committer: | Chris Povirk |
ProtoTruth: Unpack Any before comparing Relnotes: - `ProtoTruthMessageDifferencer`: Unpacks Any messages before comparing the unpacked message. Using a user supplied TypeRegister in the FluentEqualityConfig. If the message descriptors can not be found in the TypeRegister that it reverts to the original behaviour of comparing the Any messages value ByteString. - `ProtoSubject`: added `usingTypeRegistry(TypeRegistry)` method to allow the user to provide a TypeRegistry for processing the Any fields it encounters. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=280730239
Commit: | 07102f4 | |
---|---|---|
Author: | dploch | |
Committer: | Ron Shapiro |
Treat Proto3 primitives as with field absence ignored by default, for saner behavior of approximate float/double comparisons. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=231263179
Commit: | 9412383 | |
---|---|---|
Author: | dploch | |
Committer: | Ron Shapiro |
Get tests working in open-source for proto-truth RELNOTES=Tests for proto-truth enabled ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=205003064
Commit: | 10b5829 | |
---|---|---|
Author: | dploch | |
Committer: | Chris Povirk |
Allow ignoringFieldAbsence(), ignoringRepeatedFieldOrder(), ignoringExtraRepeatedFieldElements(), usingDoubleTolerance() and usingFloatTolerance() to be scoped to specific fields specified by the user, instead of being all-or-nothing options. RELNOTES=n/a ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=203038701
Commit: | f070204 | |
---|---|---|
Author: | dploch | |
Committer: | Ron Shapiro |
Add ignoringExtraRepeatedFieldElements() to ProtoTruth. RELNOTES=Add ignoringExtraRepeatedFieldElements() to ProtoTruth. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=191472165
Commit: | 6cd8068 | |
---|---|---|
Author: | dploch | |
Committer: | Ron Shapiro |
Add support for float and double comparisons in ProtoTruth as per the API doc, https://docs.google.com/document/d/1T3wGIlanCu61_3-ozSL4u_lhfRoUpBcv0alqEM-UesE/edit. Include a deprecated, stripped legacy mode to mimic ProtoAssert behavior. RELNOTES=Add support for float and double comparisons in ProtoTruth. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=186062720
Commit: | a94b128 | |
---|---|---|
Author: | dploch | |
Committer: | Chris Povirk |
Implement IterableProtoSubject. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=137572300
Commit: | f5a1def | |
---|---|---|
Author: | dploch | |
Committer: | Chris Povirk |
Rename matchesContentOfSubMessages -> matchStateAppliesForAllSubPaths and document clear semantics. Fix logic for field descriptor matching and compound field scopes to match the new documentation. Also adds caching to the main internal field scope methods (since they're now called multiple times), and a small battery of tests to FieldScopesTest. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=135822586
Commit: | a54686c | |
---|---|---|
Author: | dploch | |
Committer: | Chris Povirk |
Initial implementation of ProtoSubject extension. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=132888248
Commit: | 95b8ef1 | |
---|---|---|
Author: | cgruber | |
Committer: | Ron Shapiro |
ProtoLiteSubject.protoLite() -> LiteProtoSubject.liteProtos() The point is to permit "about" to be meaningful on reading. The factory is about the abstract conceptual "type" and it reads more consistently with english norms if it's plural. `assertAbout(liteProtos()).that(thisProto).blahblah();` ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=131231059
Commit: | 5e5bccf | |
---|---|---|
Author: | dploch | |
Committer: | Chris Povirk |
Implementation of ProtoLiteSubject for Truth. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=126434153