pact 1.66.1 → 1.67.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/lib/pact/provider/request.rb +14 -1
  4. data/lib/pact/v2/configuration.rb +23 -0
  5. data/lib/pact/v2/consumer/grpc_interaction_builder.rb +194 -0
  6. data/lib/pact/v2/consumer/http_interaction_builder.rb +162 -0
  7. data/lib/pact/v2/consumer/interaction_contents.rb +62 -0
  8. data/lib/pact/v2/consumer/message_interaction_builder.rb +287 -0
  9. data/lib/pact/v2/consumer/mock_server.rb +100 -0
  10. data/lib/pact/v2/consumer/pact_config/base.rb +24 -0
  11. data/lib/pact/v2/consumer/pact_config/grpc.rb +26 -0
  12. data/lib/pact/v2/consumer/pact_config/http.rb +55 -0
  13. data/lib/pact/v2/consumer/pact_config/message.rb +17 -0
  14. data/lib/pact/v2/consumer/pact_config/plugin_async_message.rb +26 -0
  15. data/lib/pact/v2/consumer/pact_config/plugin_http.rb +26 -0
  16. data/lib/pact/v2/consumer/pact_config/plugin_sync_message.rb +26 -0
  17. data/lib/pact/v2/consumer/pact_config.rb +30 -0
  18. data/lib/pact/v2/consumer/plugin_async_message_interaction_builder.rb +171 -0
  19. data/lib/pact/v2/consumer/plugin_http_interaction_builder.rb +201 -0
  20. data/lib/pact/v2/consumer/plugin_sync_message_interaction_builder.rb +180 -0
  21. data/lib/pact/v2/consumer.rb +8 -0
  22. data/lib/pact/v2/generators/base.rb +287 -0
  23. data/lib/pact/v2/generators.rb +49 -0
  24. data/lib/pact/v2/matchers/base.rb +74 -0
  25. data/lib/pact/v2/matchers/v1/equality.rb +19 -0
  26. data/lib/pact/v2/matchers/v2/regex.rb +19 -0
  27. data/lib/pact/v2/matchers/v2/type.rb +17 -0
  28. data/lib/pact/v2/matchers/v3/boolean.rb +17 -0
  29. data/lib/pact/v2/matchers/v3/content_type.rb +32 -0
  30. data/lib/pact/v2/matchers/v3/date.rb +18 -0
  31. data/lib/pact/v2/matchers/v3/date_time.rb +18 -0
  32. data/lib/pact/v2/matchers/v3/decimal.rb +17 -0
  33. data/lib/pact/v2/matchers/v3/each.rb +42 -0
  34. data/lib/pact/v2/matchers/v3/include.rb +17 -0
  35. data/lib/pact/v2/matchers/v3/integer.rb +17 -0
  36. data/lib/pact/v2/matchers/v3/null.rb +16 -0
  37. data/lib/pact/v2/matchers/v3/number.rb +17 -0
  38. data/lib/pact/v2/matchers/v3/semver.rb +23 -0
  39. data/lib/pact/v2/matchers/v3/time.rb +18 -0
  40. data/lib/pact/v2/matchers/v3/values.rb +16 -0
  41. data/lib/pact/v2/matchers/v4/each_key.rb +26 -0
  42. data/lib/pact/v2/matchers/v4/each_key_value.rb +32 -0
  43. data/lib/pact/v2/matchers/v4/each_value.rb +33 -0
  44. data/lib/pact/v2/matchers/v4/not_empty.rb +24 -0
  45. data/lib/pact/v2/matchers/v4/status_code.rb +17 -0
  46. data/lib/pact/v2/matchers.rb +110 -0
  47. data/lib/pact/v2/native/blocking_verifier.rb +17 -0
  48. data/lib/pact/v2/native/logger.rb +25 -0
  49. data/lib/pact/v2/provider/async_message_verifier.rb +28 -0
  50. data/lib/pact/v2/provider/base_verifier.rb +242 -0
  51. data/lib/pact/v2/provider/grpc_verifier.rb +38 -0
  52. data/lib/pact/v2/provider/gruf_server.rb +75 -0
  53. data/lib/pact/v2/provider/http_server.rb +79 -0
  54. data/lib/pact/v2/provider/http_verifier.rb +43 -0
  55. data/lib/pact/v2/provider/message_provider_servlet.rb +79 -0
  56. data/lib/pact/v2/provider/mixed_verifier.rb +22 -0
  57. data/lib/pact/v2/provider/pact_broker_proxy.rb +66 -0
  58. data/lib/pact/v2/provider/pact_broker_proxy_runner.rb +77 -0
  59. data/lib/pact/v2/provider/pact_config/async.rb +29 -0
  60. data/lib/pact/v2/provider/pact_config/base.rb +101 -0
  61. data/lib/pact/v2/provider/pact_config/grpc.rb +26 -0
  62. data/lib/pact/v2/provider/pact_config/http.rb +27 -0
  63. data/lib/pact/v2/provider/pact_config/mixed.rb +39 -0
  64. data/lib/pact/v2/provider/pact_config.rb +26 -0
  65. data/lib/pact/v2/provider/provider_server_runner.rb +89 -0
  66. data/lib/pact/v2/provider/provider_state_configuration.rb +32 -0
  67. data/lib/pact/v2/provider/provider_state_servlet.rb +86 -0
  68. data/lib/pact/v2/provider.rb +8 -0
  69. data/lib/pact/v2/railtie.rb +13 -0
  70. data/lib/pact/v2/rspec/support/pact_consumer_helpers.rb +93 -0
  71. data/lib/pact/v2/rspec/support/pact_message_helpers.rb +42 -0
  72. data/lib/pact/v2/rspec/support/pact_provider_helpers.rb +129 -0
  73. data/lib/pact/v2/rspec/support/waterdrop/pact_waterdrop_client.rb +27 -0
  74. data/lib/pact/v2/rspec/support/webmock/webmock_helpers.rb +30 -0
  75. data/lib/pact/v2/rspec.rb +17 -0
  76. data/lib/pact/v2/tasks/pact.rake +13 -0
  77. data/lib/pact/v2.rb +71 -0
  78. data/lib/pact/version.rb +1 -1
  79. data/lib/pact.rb +1 -0
  80. data/pact.gemspec +52 -7
  81. metadata +421 -67
data/lib/pact/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  # Remember to bump pact-provider-proxy when this changes major version
2
2
  module Pact
3
- VERSION = "1.66.1"
3
+ VERSION = "1.67.0"
4
4
  end
data/lib/pact.rb CHANGED
@@ -4,3 +4,4 @@ require 'pact/configuration'
4
4
  require 'pact/consumer'
5
5
  require 'pact/provider'
6
6
  require 'pact/consumer_contract'
7
+ require 'pact/v2'
data/pact.gemspec CHANGED
@@ -26,26 +26,71 @@ Gem::Specification.new do |gem|
26
26
  'documentation_uri' => 'https://github.com/pact-foundation/pact-ruby/blob/master/README.md'
27
27
  }
28
28
 
29
+ # Shared dev dependencies between v1 and v2
30
+ gem.add_development_dependency 'rake', '~> 13.0'
31
+ gem.add_development_dependency 'faraday', '~>2.0', '<3.0'
32
+ gem.add_development_dependency 'webmock', '~> 3.0'
33
+
34
+ # Shared runtime dependencies between v1 and v2
29
35
  gem.add_runtime_dependency 'rspec', '~> 3.0'
36
+
37
+ # Pact v2 dependencies
38
+
39
+ # Core dependencies (code loading)
40
+ gem.add_dependency "zeitwerk", "~> 2.3"
41
+ # For Pact support via Pact Rust Core
42
+ gem.add_dependency "pact-ffi", "~> 0.4.28"
43
+ # For Provider Side Verification
44
+ gem.add_dependency "rack"
45
+ gem.add_dependency "rack-proxy"
46
+ gem.add_dependency "webrick", '~> 1.8'
47
+ # For Rails support, including testing non rails apps
48
+ gem.add_development_dependency "combustion", ">= 1.3"
49
+ # For Kafka support
50
+ unless RUBY_PLATFORM =~ /win32|x64-mingw32|x64-mingw-ucrt/
51
+ # windows does not support librdkafka
52
+ gem.add_development_dependency "sbmt-kafka_consumer", ">= 2.0.1"
53
+ gem.add_development_dependency "sbmt-kafka_producer", ">= 1.0"
54
+ end
55
+ if ENV['X_PACT_DEVELOPMENT_RDKAFKA'] == 'true'
56
+ # darwin-arm64 prebuilt gems available from 0.20.0
57
+ gem.add_development_dependency "karafka-rdkafka", ">= 0.20.0"
58
+ end
59
+ # For gRPC support
60
+ gem.add_development_dependency "gruf", ">= 2.18"
61
+ gem.add_development_dependency "gruf-rspec", ">= 0.6.0"
62
+ # Testing tools
63
+ gem.add_development_dependency "rspec"
64
+ gem.add_development_dependency "rspec-rails"
65
+ gem.add_development_dependency "rspec_junit_formatter"
66
+ gem.add_development_dependency "vcr", ">= 6.0"
67
+ # Development and linting tools
68
+ gem.add_development_dependency "appraisal", ">= 2.4"
69
+ gem.add_development_dependency "bundler", ">= 2.2"
70
+ gem.add_development_dependency "rubocop"
71
+ gem.add_development_dependency "rubocop-rspec"
72
+ gem.add_development_dependency "rubocop-rails"
73
+ gem.add_development_dependency "rubocop-performance"
74
+ gem.add_development_dependency "standard", ">= 1.35.1"
75
+
76
+
77
+ # Pact v1 dependencies
30
78
  gem.add_runtime_dependency 'rack-test', '>= 0.6.3', '< 3.0.0'
31
79
  gem.add_runtime_dependency 'thor', '>= 0.20', '< 2.0'
32
80
  gem.add_runtime_dependency "rainbow", '~> 3.1'
33
81
  gem.add_runtime_dependency 'string_pattern', '~> 2.0'
34
82
  gem.add_runtime_dependency 'jsonpath', '~> 1.0'
35
83
 
36
- gem.add_runtime_dependency 'pact-support', '~> 1.21', '>= 1.21.0'
84
+ gem.add_runtime_dependency "pact-support" , "~> 1.21", ">=1.21.2"
37
85
  gem.add_runtime_dependency 'pact-mock_service', '~> 3.0', '>= 3.3.1'
38
-
39
- gem.add_development_dependency 'rake', '~> 13.0'
40
- gem.add_development_dependency 'webmock', '~> 3.0'
41
86
  gem.add_development_dependency 'fakefs', '2.4'
42
87
  gem.add_development_dependency 'hashie', '~> 5.0'
43
- gem.add_development_dependency 'faraday', '~>2.0', '<3.0'
44
88
  gem.add_development_dependency 'faraday-multipart', '~> 1.0'
45
89
  gem.add_development_dependency 'conventional-changelog', '~> 1.3'
46
90
  gem.add_development_dependency 'bump', '~> 0.5'
47
91
  gem.add_development_dependency 'pact-message', '~> 0.8'
48
92
  gem.add_development_dependency 'rspec-its', '~> 1.3'
49
- gem.add_development_dependency 'webrick', '~> 1.8'
93
+ # gem.add_development_dependency 'webrick', '~> 1.8' # webrick is a runtime dependency of pact v2, so included above
50
94
  gem.add_development_dependency 'ostruct'
51
- end
95
+
96
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pact
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.66.1
4
+ version: 1.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Fraser
@@ -11,8 +11,56 @@ authors:
11
11
  - Beth Skurrie
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2025-01-20 00:00:00.000000000 Z
14
+ date: 1980-01-02 00:00:00.000000000 Z
15
15
  dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: rake
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '13.0'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '13.0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: faraday
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - "~>"
35
+ - !ruby/object:Gem::Version
36
+ version: '2.0'
37
+ - - "<"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '2.0'
47
+ - - "<"
48
+ - !ruby/object:Gem::Version
49
+ version: '3.0'
50
+ - !ruby/object:Gem::Dependency
51
+ name: webmock
52
+ requirement: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '3.0'
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '3.0'
16
64
  - !ruby/object:Gem::Dependency
17
65
  name: rspec
18
66
  requirement: !ruby/object:Gem::Requirement
@@ -27,6 +75,300 @@ dependencies:
27
75
  - - "~>"
28
76
  - !ruby/object:Gem::Version
29
77
  version: '3.0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: zeitwerk
80
+ requirement: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - "~>"
83
+ - !ruby/object:Gem::Version
84
+ version: '2.3'
85
+ type: :runtime
86
+ prerelease: false
87
+ version_requirements: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '2.3'
92
+ - !ruby/object:Gem::Dependency
93
+ name: pact-ffi
94
+ requirement: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - "~>"
97
+ - !ruby/object:Gem::Version
98
+ version: 0.4.28
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: 0.4.28
106
+ - !ruby/object:Gem::Dependency
107
+ name: rack
108
+ requirement: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
113
+ type: :runtime
114
+ prerelease: false
115
+ version_requirements: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ - !ruby/object:Gem::Dependency
121
+ name: rack-proxy
122
+ requirement: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ version: '0'
127
+ type: :runtime
128
+ prerelease: false
129
+ version_requirements: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ - !ruby/object:Gem::Dependency
135
+ name: webrick
136
+ requirement: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - "~>"
139
+ - !ruby/object:Gem::Version
140
+ version: '1.8'
141
+ type: :runtime
142
+ prerelease: false
143
+ version_requirements: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: '1.8'
148
+ - !ruby/object:Gem::Dependency
149
+ name: combustion
150
+ requirement: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: '1.3'
155
+ type: :development
156
+ prerelease: false
157
+ version_requirements: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ version: '1.3'
162
+ - !ruby/object:Gem::Dependency
163
+ name: sbmt-kafka_consumer
164
+ requirement: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ version: 2.0.1
169
+ type: :development
170
+ prerelease: false
171
+ version_requirements: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ version: 2.0.1
176
+ - !ruby/object:Gem::Dependency
177
+ name: sbmt-kafka_producer
178
+ requirement: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ version: '1.0'
183
+ type: :development
184
+ prerelease: false
185
+ version_requirements: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: '1.0'
190
+ - !ruby/object:Gem::Dependency
191
+ name: gruf
192
+ requirement: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: '2.18'
197
+ type: :development
198
+ prerelease: false
199
+ version_requirements: !ruby/object:Gem::Requirement
200
+ requirements:
201
+ - - ">="
202
+ - !ruby/object:Gem::Version
203
+ version: '2.18'
204
+ - !ruby/object:Gem::Dependency
205
+ name: gruf-rspec
206
+ requirement: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - ">="
209
+ - !ruby/object:Gem::Version
210
+ version: 0.6.0
211
+ type: :development
212
+ prerelease: false
213
+ version_requirements: !ruby/object:Gem::Requirement
214
+ requirements:
215
+ - - ">="
216
+ - !ruby/object:Gem::Version
217
+ version: 0.6.0
218
+ - !ruby/object:Gem::Dependency
219
+ name: rspec
220
+ requirement: !ruby/object:Gem::Requirement
221
+ requirements:
222
+ - - ">="
223
+ - !ruby/object:Gem::Version
224
+ version: '0'
225
+ type: :development
226
+ prerelease: false
227
+ version_requirements: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - ">="
230
+ - !ruby/object:Gem::Version
231
+ version: '0'
232
+ - !ruby/object:Gem::Dependency
233
+ name: rspec-rails
234
+ requirement: !ruby/object:Gem::Requirement
235
+ requirements:
236
+ - - ">="
237
+ - !ruby/object:Gem::Version
238
+ version: '0'
239
+ type: :development
240
+ prerelease: false
241
+ version_requirements: !ruby/object:Gem::Requirement
242
+ requirements:
243
+ - - ">="
244
+ - !ruby/object:Gem::Version
245
+ version: '0'
246
+ - !ruby/object:Gem::Dependency
247
+ name: rspec_junit_formatter
248
+ requirement: !ruby/object:Gem::Requirement
249
+ requirements:
250
+ - - ">="
251
+ - !ruby/object:Gem::Version
252
+ version: '0'
253
+ type: :development
254
+ prerelease: false
255
+ version_requirements: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - ">="
258
+ - !ruby/object:Gem::Version
259
+ version: '0'
260
+ - !ruby/object:Gem::Dependency
261
+ name: vcr
262
+ requirement: !ruby/object:Gem::Requirement
263
+ requirements:
264
+ - - ">="
265
+ - !ruby/object:Gem::Version
266
+ version: '6.0'
267
+ type: :development
268
+ prerelease: false
269
+ version_requirements: !ruby/object:Gem::Requirement
270
+ requirements:
271
+ - - ">="
272
+ - !ruby/object:Gem::Version
273
+ version: '6.0'
274
+ - !ruby/object:Gem::Dependency
275
+ name: appraisal
276
+ requirement: !ruby/object:Gem::Requirement
277
+ requirements:
278
+ - - ">="
279
+ - !ruby/object:Gem::Version
280
+ version: '2.4'
281
+ type: :development
282
+ prerelease: false
283
+ version_requirements: !ruby/object:Gem::Requirement
284
+ requirements:
285
+ - - ">="
286
+ - !ruby/object:Gem::Version
287
+ version: '2.4'
288
+ - !ruby/object:Gem::Dependency
289
+ name: bundler
290
+ requirement: !ruby/object:Gem::Requirement
291
+ requirements:
292
+ - - ">="
293
+ - !ruby/object:Gem::Version
294
+ version: '2.2'
295
+ type: :development
296
+ prerelease: false
297
+ version_requirements: !ruby/object:Gem::Requirement
298
+ requirements:
299
+ - - ">="
300
+ - !ruby/object:Gem::Version
301
+ version: '2.2'
302
+ - !ruby/object:Gem::Dependency
303
+ name: rubocop
304
+ requirement: !ruby/object:Gem::Requirement
305
+ requirements:
306
+ - - ">="
307
+ - !ruby/object:Gem::Version
308
+ version: '0'
309
+ type: :development
310
+ prerelease: false
311
+ version_requirements: !ruby/object:Gem::Requirement
312
+ requirements:
313
+ - - ">="
314
+ - !ruby/object:Gem::Version
315
+ version: '0'
316
+ - !ruby/object:Gem::Dependency
317
+ name: rubocop-rspec
318
+ requirement: !ruby/object:Gem::Requirement
319
+ requirements:
320
+ - - ">="
321
+ - !ruby/object:Gem::Version
322
+ version: '0'
323
+ type: :development
324
+ prerelease: false
325
+ version_requirements: !ruby/object:Gem::Requirement
326
+ requirements:
327
+ - - ">="
328
+ - !ruby/object:Gem::Version
329
+ version: '0'
330
+ - !ruby/object:Gem::Dependency
331
+ name: rubocop-rails
332
+ requirement: !ruby/object:Gem::Requirement
333
+ requirements:
334
+ - - ">="
335
+ - !ruby/object:Gem::Version
336
+ version: '0'
337
+ type: :development
338
+ prerelease: false
339
+ version_requirements: !ruby/object:Gem::Requirement
340
+ requirements:
341
+ - - ">="
342
+ - !ruby/object:Gem::Version
343
+ version: '0'
344
+ - !ruby/object:Gem::Dependency
345
+ name: rubocop-performance
346
+ requirement: !ruby/object:Gem::Requirement
347
+ requirements:
348
+ - - ">="
349
+ - !ruby/object:Gem::Version
350
+ version: '0'
351
+ type: :development
352
+ prerelease: false
353
+ version_requirements: !ruby/object:Gem::Requirement
354
+ requirements:
355
+ - - ">="
356
+ - !ruby/object:Gem::Version
357
+ version: '0'
358
+ - !ruby/object:Gem::Dependency
359
+ name: standard
360
+ requirement: !ruby/object:Gem::Requirement
361
+ requirements:
362
+ - - ">="
363
+ - !ruby/object:Gem::Version
364
+ version: 1.35.1
365
+ type: :development
366
+ prerelease: false
367
+ version_requirements: !ruby/object:Gem::Requirement
368
+ requirements:
369
+ - - ">="
370
+ - !ruby/object:Gem::Version
371
+ version: 1.35.1
30
372
  - !ruby/object:Gem::Dependency
31
373
  name: rack-test
32
374
  requirement: !ruby/object:Gem::Requirement
@@ -118,7 +460,7 @@ dependencies:
118
460
  version: '1.21'
119
461
  - - ">="
120
462
  - !ruby/object:Gem::Version
121
- version: 1.21.0
463
+ version: 1.21.2
122
464
  type: :runtime
123
465
  prerelease: false
124
466
  version_requirements: !ruby/object:Gem::Requirement
@@ -128,7 +470,7 @@ dependencies:
128
470
  version: '1.21'
129
471
  - - ">="
130
472
  - !ruby/object:Gem::Version
131
- version: 1.21.0
473
+ version: 1.21.2
132
474
  - !ruby/object:Gem::Dependency
133
475
  name: pact-mock_service
134
476
  requirement: !ruby/object:Gem::Requirement
@@ -149,34 +491,6 @@ dependencies:
149
491
  - - ">="
150
492
  - !ruby/object:Gem::Version
151
493
  version: 3.3.1
152
- - !ruby/object:Gem::Dependency
153
- name: rake
154
- requirement: !ruby/object:Gem::Requirement
155
- requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: '13.0'
159
- type: :development
160
- prerelease: false
161
- version_requirements: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - "~>"
164
- - !ruby/object:Gem::Version
165
- version: '13.0'
166
- - !ruby/object:Gem::Dependency
167
- name: webmock
168
- requirement: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - "~>"
171
- - !ruby/object:Gem::Version
172
- version: '3.0'
173
- type: :development
174
- prerelease: false
175
- version_requirements: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - "~>"
178
- - !ruby/object:Gem::Version
179
- version: '3.0'
180
494
  - !ruby/object:Gem::Dependency
181
495
  name: fakefs
182
496
  requirement: !ruby/object:Gem::Requirement
@@ -205,26 +519,6 @@ dependencies:
205
519
  - - "~>"
206
520
  - !ruby/object:Gem::Version
207
521
  version: '5.0'
208
- - !ruby/object:Gem::Dependency
209
- name: faraday
210
- requirement: !ruby/object:Gem::Requirement
211
- requirements:
212
- - - "~>"
213
- - !ruby/object:Gem::Version
214
- version: '2.0'
215
- - - "<"
216
- - !ruby/object:Gem::Version
217
- version: '3.0'
218
- type: :development
219
- prerelease: false
220
- version_requirements: !ruby/object:Gem::Requirement
221
- requirements:
222
- - - "~>"
223
- - !ruby/object:Gem::Version
224
- version: '2.0'
225
- - - "<"
226
- - !ruby/object:Gem::Version
227
- version: '3.0'
228
522
  - !ruby/object:Gem::Dependency
229
523
  name: faraday-multipart
230
524
  requirement: !ruby/object:Gem::Requirement
@@ -295,20 +589,6 @@ dependencies:
295
589
  - - "~>"
296
590
  - !ruby/object:Gem::Version
297
591
  version: '1.3'
298
- - !ruby/object:Gem::Dependency
299
- name: webrick
300
- requirement: !ruby/object:Gem::Requirement
301
- requirements:
302
- - - "~>"
303
- - !ruby/object:Gem::Version
304
- version: '1.8'
305
- type: :development
306
- prerelease: false
307
- version_requirements: !ruby/object:Gem::Requirement
308
- requirements:
309
- - - "~>"
310
- - !ruby/object:Gem::Version
311
- version: '1.8'
312
592
  - !ruby/object:Gem::Dependency
313
593
  name: ostruct
314
594
  requirement: !ruby/object:Gem::Requirement
@@ -434,6 +714,80 @@ files:
434
714
  - lib/pact/templates/provider_state.erb
435
715
  - lib/pact/utils/metrics.rb
436
716
  - lib/pact/utils/string.rb
717
+ - lib/pact/v2.rb
718
+ - lib/pact/v2/configuration.rb
719
+ - lib/pact/v2/consumer.rb
720
+ - lib/pact/v2/consumer/grpc_interaction_builder.rb
721
+ - lib/pact/v2/consumer/http_interaction_builder.rb
722
+ - lib/pact/v2/consumer/interaction_contents.rb
723
+ - lib/pact/v2/consumer/message_interaction_builder.rb
724
+ - lib/pact/v2/consumer/mock_server.rb
725
+ - lib/pact/v2/consumer/pact_config.rb
726
+ - lib/pact/v2/consumer/pact_config/base.rb
727
+ - lib/pact/v2/consumer/pact_config/grpc.rb
728
+ - lib/pact/v2/consumer/pact_config/http.rb
729
+ - lib/pact/v2/consumer/pact_config/message.rb
730
+ - lib/pact/v2/consumer/pact_config/plugin_async_message.rb
731
+ - lib/pact/v2/consumer/pact_config/plugin_http.rb
732
+ - lib/pact/v2/consumer/pact_config/plugin_sync_message.rb
733
+ - lib/pact/v2/consumer/plugin_async_message_interaction_builder.rb
734
+ - lib/pact/v2/consumer/plugin_http_interaction_builder.rb
735
+ - lib/pact/v2/consumer/plugin_sync_message_interaction_builder.rb
736
+ - lib/pact/v2/generators.rb
737
+ - lib/pact/v2/generators/base.rb
738
+ - lib/pact/v2/matchers.rb
739
+ - lib/pact/v2/matchers/base.rb
740
+ - lib/pact/v2/matchers/v1/equality.rb
741
+ - lib/pact/v2/matchers/v2/regex.rb
742
+ - lib/pact/v2/matchers/v2/type.rb
743
+ - lib/pact/v2/matchers/v3/boolean.rb
744
+ - lib/pact/v2/matchers/v3/content_type.rb
745
+ - lib/pact/v2/matchers/v3/date.rb
746
+ - lib/pact/v2/matchers/v3/date_time.rb
747
+ - lib/pact/v2/matchers/v3/decimal.rb
748
+ - lib/pact/v2/matchers/v3/each.rb
749
+ - lib/pact/v2/matchers/v3/include.rb
750
+ - lib/pact/v2/matchers/v3/integer.rb
751
+ - lib/pact/v2/matchers/v3/null.rb
752
+ - lib/pact/v2/matchers/v3/number.rb
753
+ - lib/pact/v2/matchers/v3/semver.rb
754
+ - lib/pact/v2/matchers/v3/time.rb
755
+ - lib/pact/v2/matchers/v3/values.rb
756
+ - lib/pact/v2/matchers/v4/each_key.rb
757
+ - lib/pact/v2/matchers/v4/each_key_value.rb
758
+ - lib/pact/v2/matchers/v4/each_value.rb
759
+ - lib/pact/v2/matchers/v4/not_empty.rb
760
+ - lib/pact/v2/matchers/v4/status_code.rb
761
+ - lib/pact/v2/native/blocking_verifier.rb
762
+ - lib/pact/v2/native/logger.rb
763
+ - lib/pact/v2/provider.rb
764
+ - lib/pact/v2/provider/async_message_verifier.rb
765
+ - lib/pact/v2/provider/base_verifier.rb
766
+ - lib/pact/v2/provider/grpc_verifier.rb
767
+ - lib/pact/v2/provider/gruf_server.rb
768
+ - lib/pact/v2/provider/http_server.rb
769
+ - lib/pact/v2/provider/http_verifier.rb
770
+ - lib/pact/v2/provider/message_provider_servlet.rb
771
+ - lib/pact/v2/provider/mixed_verifier.rb
772
+ - lib/pact/v2/provider/pact_broker_proxy.rb
773
+ - lib/pact/v2/provider/pact_broker_proxy_runner.rb
774
+ - lib/pact/v2/provider/pact_config.rb
775
+ - lib/pact/v2/provider/pact_config/async.rb
776
+ - lib/pact/v2/provider/pact_config/base.rb
777
+ - lib/pact/v2/provider/pact_config/grpc.rb
778
+ - lib/pact/v2/provider/pact_config/http.rb
779
+ - lib/pact/v2/provider/pact_config/mixed.rb
780
+ - lib/pact/v2/provider/provider_server_runner.rb
781
+ - lib/pact/v2/provider/provider_state_configuration.rb
782
+ - lib/pact/v2/provider/provider_state_servlet.rb
783
+ - lib/pact/v2/railtie.rb
784
+ - lib/pact/v2/rspec.rb
785
+ - lib/pact/v2/rspec/support/pact_consumer_helpers.rb
786
+ - lib/pact/v2/rspec/support/pact_message_helpers.rb
787
+ - lib/pact/v2/rspec/support/pact_provider_helpers.rb
788
+ - lib/pact/v2/rspec/support/waterdrop/pact_waterdrop_client.rb
789
+ - lib/pact/v2/rspec/support/webmock/webmock_helpers.rb
790
+ - lib/pact/v2/tasks/pact.rake
437
791
  - lib/pact/version.rb
438
792
  - lib/tasks/pact.rake
439
793
  - pact.gemspec
@@ -459,7 +813,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
459
813
  - !ruby/object:Gem::Version
460
814
  version: '0'
461
815
  requirements: []
462
- rubygems_version: 3.6.3
816
+ rubygems_version: 3.7.2
463
817
  specification_version: 4
464
818
  summary: Enables consumer driven contract testing, providing a mock service and DSL
465
819
  for the consumer project, and interaction playback and verification for the service