Skip to content

Releases: pactflow/pact-protobuf-plugin

0.5.4

17 Nov 23:51
Compare
Choose a tag to compare

Bugfix Release

  • d6b1626 - fix: Fixed regression introduced by 0.5.3 release

0.5.3

14 Nov 23:40
Compare
Choose a tag to compare

Support for injecting an array of values into a repeated field

  • ffa56f2 - chore: Upgrade pact_models to 1.2.5
  • 3d60553 - refactor: Update DynamicMessage to consolidate fields into a single value by field number #73
  • e2e08c9 - refactor: Update value injection to push additional values into the additional_data attribute #73
  • 2abbed2 - refactor: Write out the additional field values when serialising a field #73 +1100)
  • 47aa5c7 - refactor: Add an attribute to ProtobufField to capture additional values from repeated fields #73
  • c51337d - feat: Add some tests around injecting an array of values into a repeated field #73
  • 25ba86a - feat: Support injecting an array of values into a repeated field #73
  • 1f05ab5 - refactor: Update ProtobufField to also contain the field descriptor for the field #73
  • e5b9de6 - refactor: Update DynamicMessage fetch_field_value and set_field_value to return a result #73
  • cfb54b4 - refactor: Update DynamicMessage to store the Protobuf fields as map keyed by field number #73
  • 8452e25 - refactor: Pass protobuf message descriptor to DynamicMessage::new #73
  • a7b1218 - chore: Update dependencies

0.5.2

26 Aug 01:41
Compare
Choose a tag to compare

Bugfix Release

  • 7475c0f - chore: Fix pact verification request
  • 089e864 - chore: Fix pact verification request
  • d6865b4 - fix: HTTP Protobuf interactions can have a message defined for both the request and response parts

0.5.1

13 Aug 23:53
Compare
Choose a tag to compare

Bugfix Release

  • f459668 - chore: Upgrade all the Pact dependencies
  • c3ec0eb - fix: Handle google.Structs correctly #71

0.5.0

08 Aug 23:52
Compare
Choose a tag to compare

Supports provider state injected values and better use of package names when resolving messages

This release contains the following features:

  • Supports injecting provider state values into message fields and gRPC metadata
  • Better use of package names in resolving messages (again, thanks to @stan-is-hate for this mammoth effect).

WARNING

This version of the plugin introduces forward incompatible changes to the data persisted to the generated Pact files. From 0.5.0 on-wards, the package name of the messages will also be persisted to the Pact file and used to correctly resolve the message when verifying the Pact file. This means that Pacts generated with this version (and later) will not be able to be used correctly with older versions of the plugin (0.4.0 and before). Older Pact files are supported with this version. It is advised to upgrade all uses of the Protobuf plugin to this version.

  • a9630de - chore: Make test less brittle
  • 309f8fc - docs: updated a couple of code comments (Stan Vodetskyi)
  • fcf42b5 - feat: Update readme with example of provider state injected values #69
  • 402ad18 - feat: Enable support for provider state injected values for gRPC metadata #69
  • e001efa - feat: use packages when looking up services and message types. (Stan Vodetskyi)
  • 6064316 - feat: Pass the test context values through to the ProviderStateGenerator #69
  • 7e85d34 - feat: Implement applying generators to mutate the Protobuf messages #69
  • ef237ec - feat: Support for use of provider state generator in consumer tests #69
  • 2b7d5e0 - chore: cleanup some unused code warnings
  • c551867 - chore: Remove unused crate
  • eda6c17 - chore: Update integration test dependencies
  • 8baefcb - chore: Upgrade Tonic to 0.12.0 and Hyper to 1.4.1
  • f7c459a - chore: Update dependencies

0.4.0

11 Jun 00:51
Compare
Choose a tag to compare

Fixes message name resolving to correctly use package names

Thanks to @stan-is-hate for all the work on this.

  • a1fad28 - chore: Update default protoc compiler to next major version (21.12)
  • f219a61 - chore: Bump minor version
  • d181915 - remove additional trace logs (Stan)
  • 07652c9 - correct paths in integrated_tests workflows (Stan)
  • a3c41b4 - update mod.rs to also use package (Stan)
  • 8742072 - remove lifetime qualifiers; refactor; remove unnecessary test (Stan)
  • cf9f08b - couple more integrated tests just to be sure (Stan)
  • a8c9f46 - Search descriptors with no package when no package was specified. (Stan)
  • ce61d8f - no unwrap (Stan)
  • f4a43d4 - fix tests (Stan)
  • c3278c6 - remove unnecessary changes (Stan)
  • ebe3203 - use crate vs use super (Stan)
  • d13474e - a basic unit test (Stan)
  • c4ac8d7 - remove reference to a deleted method (Stan)
  • 66b97ca - more cases covered in the test (Stan)
  • 2e00c56 - revert formatting and logging changes (Stan)
  • bd1fdc8 - hacky fix cont (Stan)
  • 18f2e43 - hacky fix (Stan)
  • 0fc95d2 - conflicting names when package is implicit (Stan)

0.3.15

10 May 00:20
Compare
Choose a tag to compare

Bugfix Release

  • 0f47677 - fix: package namespaces are not respected (Eric Muller)
  • d8e8b89 - demo bug with conflicting names (Stan)
  • 652fbd4 - feat: reduce executable size (Yousaf Nabi)
  • 99cdd58 - feat: linux musl static bins / windows aarch64 (Yousaf Nabi)
  • 40abddf - chore(ci): macos-12 (Yousaf Nabi)
  • 905967e - chore: Update dependencies
  • 02b236e - chore: Update dependencies
  • fb216f1 - chore: Add integrated_tests back into main project
  • 454e89d - fix: Upgrade dependencies to fix tests hanging on Windows
  • 713bfe5 - chore: lock jobserver to previous version as 0.1.29 fails to compile
  • e4cbc3f - chore: lock jobserver to previous version as 0.1.29 fails to compile

0.3.14

12 Apr 04:54
Compare
Choose a tag to compare

Bugfix Release

  • 9ba9b24 - chore: add macos to the release binaries
  • d9ce8fb - fix: Take into account package names when looking for message types in the descriptors
  • 4587ac7 - fix: Unknown varint fields were incorrectly treated as u64 values with 8 bytes #53
  • d31aac8 - chore: Add example provider with new fields added #53
  • 0b9ac92 - chore: Add example with consumer and provider #53
  • 7414995 - chore: Update dependencies
  • fb3faf2 - chore: Update clap to latest
  • 56ddeab - chore: Remove locked version of ahash
  • f5b6ad9 - chore: Disable test that hangs in CI Windows agents
  • b50488d - chore: Get musl build to work on latest Rust (1.77.1)
  • 0b2cf00 - chore: Fix musl build
  • 5aacf85 - chore: support musl build with Rust 1.77.1
  • bdb815c - chore: Update dependencies
  • a88de0c - chore: Lock ahash crate as 0.8.8 requires Rust 1.72
  • 067394d - chore: Downgrade ahash crate as 0.8.8 requires Rust 1.72
  • 6751c74 - chore: Lock clap crate to 4.4 as 4.5 requires Rust 1.75
  • 3aee270 - chore: Updated integrated_tests/response_metadata to use the corrected version of pact_consumer
  • 4d4aa78 - test: integrated test for response metadata (Stan)
  • 76067b2 - fix: Support configuring primitive values for fields with native values instead of strings

0.3.13

07 Feb 22:35
Compare
Choose a tag to compare

Bugfix Release

  • 341d4d7 - fix: do not inject a default value for repeated fields #45

0.3.12

07 Feb 04:09
Compare
Choose a tag to compare

Bugfix Release

  • 131ffc4 - doc: Add docs on matching on maps to the README
  • 3f369a9 - fix: Correct the use of matching rules on maps
  • 9d88e92 - feat: Support defining an each values matcher for a whole message
  • 002c9d6 - chore: only run clippy on linux CI agent
  • eb0acc5 - chore: Add integrated test examples to the CI build
  • 0a6458c - fix: accept empty maps where there is a eachKey or eachValue matcher
  • c81187c - chore: Update dependencies