pact_broker 2.119.0 → 2.121.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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +579 -479
  3. data/Gemfile +2 -6
  4. data/README.md +1 -2
  5. data/db/migrations/000015_create_pact_version_content.rb +1 -1
  6. data/db/migrations/000023_create_pact_versions_table.rb +1 -1
  7. data/db/migrations/000033_create_config_table.rb +1 -1
  8. data/db/migrations/000036_create_webhook_execution.rb +1 -1
  9. data/db/migrations/20180108_create_certificates_table.rb +1 -1
  10. data/db/migrations/migration_helper.rb +5 -1
  11. data/docs/CONFIGURATION.md +29 -2
  12. data/docs/matrix-optimisation/README.md +85 -0
  13. data/lib/pact/doc/interaction_view_model.rb +2 -1
  14. data/lib/pact/doc/markdown/consumer_contract_renderer.rb +3 -1
  15. data/lib/pact/doc.rb +5 -0
  16. data/lib/pact_broker/api/contracts/put_pact_params_contract.rb +2 -0
  17. data/lib/pact_broker/api/decorators/provider_states_decorator.rb +1 -1
  18. data/lib/pact_broker/api/decorators/triggered_webhook_logs_decorator.rb +4 -0
  19. data/lib/pact_broker/api/decorators/version_decorator.rb +29 -4
  20. data/lib/pact_broker/api/pact_broker_urls.rb +4 -0
  21. data/lib/pact_broker/api/resources/branch_versions.rb +5 -1
  22. data/lib/pact_broker/api/resources/can_i_deploy_pacticipant_version_by_branch_to_environment.rb +4 -1
  23. data/lib/pact_broker/api/resources/can_i_deploy_pacticipant_version_by_branch_to_environment_badge.rb +1 -0
  24. data/lib/pact_broker/api/resources/clean.rb +9 -1
  25. data/lib/pact_broker/api/resources/deployed_or_released_versions.rb +78 -0
  26. data/lib/pact_broker/api/resources/environment_versions.rb +89 -0
  27. data/lib/pact_broker/api/resources/pacticipants_for_label.rb +29 -1
  28. data/lib/pact_broker/api/resources/tag_versions.rb +5 -1
  29. data/lib/pact_broker/api/resources/version.rb +5 -1
  30. data/lib/pact_broker/api/resources/versions.rb +5 -1
  31. data/lib/pact_broker/api.rb +2 -0
  32. data/lib/pact_broker/app.rb +0 -1
  33. data/lib/pact_broker/config/runtime_configuration.rb +19 -0
  34. data/lib/pact_broker/configuration.rb +15 -2
  35. data/lib/pact_broker/dataset.rb +4 -23
  36. data/lib/pact_broker/db/clean/branch_selector.rb +40 -0
  37. data/lib/pact_broker/db/clean.rb +45 -0
  38. data/lib/pact_broker/db/clean_incremental.rb +78 -14
  39. data/lib/pact_broker/db.rb +0 -7
  40. data/lib/pact_broker/deployments/released_version_service.rb +14 -0
  41. data/lib/pact_broker/domain/version.rb +6 -2
  42. data/lib/pact_broker/initializers/database_connection.rb +5 -0
  43. data/lib/pact_broker/integrations/repository.rb +1 -1
  44. data/lib/pact_broker/integrations/service.rb +1 -3
  45. data/lib/pact_broker/logging/open_telemetry_appender_setup.rb +73 -0
  46. data/lib/pact_broker/logging/trace_aware_json_formatter.rb +38 -0
  47. data/lib/pact_broker/matrix/matrix_row_dataset_module.rb +29 -11
  48. data/lib/pact_broker/matrix/matrix_row_verification_dataset_module.rb +23 -12
  49. data/lib/pact_broker/matrix/parse_can_i_deploy_query.rb +5 -0
  50. data/lib/pact_broker/matrix/selector_resolver.rb +30 -2
  51. data/lib/pact_broker/pacticipants/repository.rb +5 -2
  52. data/lib/pact_broker/pacts/service.rb +2 -2
  53. data/lib/pact_broker/tags/service.rb +4 -5
  54. data/lib/pact_broker/tasks/clean_task.rb +23 -1
  55. data/lib/pact_broker/verifications/repository.rb +1 -1
  56. data/lib/pact_broker/version.rb +1 -1
  57. data/lib/pact_broker/versions/branch_repository.rb +1 -1
  58. data/lib/pact_broker/versions/branch_service.rb +1 -1
  59. data/lib/pact_broker/versions/branch_version_repository.rb +3 -2
  60. data/lib/pact_broker/versions/repository.rb +4 -13
  61. data/lib/pact_broker/webhooks/render.rb +1 -1
  62. data/lib/sequel/plugins/upsert.rb +1 -8
  63. data/pact_broker.gemspec +8 -7
  64. metadata +38 -32
metadata CHANGED
@@ -1,30 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pact_broker
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.119.0
4
+ version: 2.121.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bethany Skurrie
8
8
  - Sergei Matheson
9
9
  - Warner Godfrey
10
+ autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 1980-01-02 00:00:00.000000000 Z
13
+ date: 2026-09-04 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: json
16
17
  requirement: !ruby/object:Gem::Requirement
17
18
  requirements:
18
- - - "~>"
19
+ - - ">="
19
20
  - !ruby/object:Gem::Version
20
- version: '2.3'
21
+ version: 2.19.9
21
22
  type: :runtime
22
23
  prerelease: false
23
24
  version_requirements: !ruby/object:Gem::Requirement
24
25
  requirements:
25
- - - "~>"
26
+ - - ">="
26
27
  - !ruby/object:Gem::Version
27
- version: '2.3'
28
+ version: 2.19.9
28
29
  - !ruby/object:Gem::Dependency
29
30
  name: psych
30
31
  requirement: !ruby/object:Gem::Requirement
@@ -99,22 +100,16 @@ dependencies:
99
100
  name: webmachine
100
101
  requirement: !ruby/object:Gem::Requirement
101
102
  requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- version: 2.0.0.beta
105
- - - "<"
103
+ - - "~>"
106
104
  - !ruby/object:Gem::Version
107
- version: '3.0'
105
+ version: '2.0'
108
106
  type: :runtime
109
107
  prerelease: false
110
108
  version_requirements: !ruby/object:Gem::Requirement
111
109
  requirements:
112
- - - ">="
113
- - !ruby/object:Gem::Version
114
- version: 2.0.0.beta
115
- - - "<"
110
+ - - "~>"
116
111
  - !ruby/object:Gem::Version
117
- version: '3.0'
112
+ version: '2.0'
118
113
  - !ruby/object:Gem::Dependency
119
114
  name: semver2
120
115
  requirement: !ruby/object:Gem::Requirement
@@ -147,9 +142,6 @@ dependencies:
147
142
  name: redcarpet
148
143
  requirement: !ruby/object:Gem::Requirement
149
144
  requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: 3.5.1
153
145
  - - "~>"
154
146
  - !ruby/object:Gem::Version
155
147
  version: '3.5'
@@ -157,9 +149,6 @@ dependencies:
157
149
  prerelease: false
158
150
  version_requirements: !ruby/object:Gem::Requirement
159
151
  requirements:
160
- - - ">="
161
- - !ruby/object:Gem::Version
162
- version: 3.5.1
163
152
  - - "~>"
164
153
  - !ruby/object:Gem::Version
165
154
  version: '3.5'
@@ -167,9 +156,6 @@ dependencies:
167
156
  name: pact-support
168
157
  requirement: !ruby/object:Gem::Requirement
169
158
  requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: 1.21.2
173
159
  - - "~>"
174
160
  - !ruby/object:Gem::Version
175
161
  version: '1.21'
@@ -177,9 +163,6 @@ dependencies:
177
163
  prerelease: false
178
164
  version_requirements: !ruby/object:Gem::Requirement
179
165
  requirements:
180
- - - ">="
181
- - !ruby/object:Gem::Version
182
- version: 1.21.2
183
166
  - - "~>"
184
167
  - !ruby/object:Gem::Version
185
168
  version: '1.21'
@@ -245,14 +228,14 @@ dependencies:
245
228
  requirements:
246
229
  - - "~>"
247
230
  - !ruby/object:Gem::Version
248
- version: '4.11'
231
+ version: '5.0'
249
232
  type: :runtime
250
233
  prerelease: false
251
234
  version_requirements: !ruby/object:Gem::Requirement
252
235
  requirements:
253
236
  - - "~>"
254
237
  - !ruby/object:Gem::Version
255
- version: '4.11'
238
+ version: '5.0'
256
239
  - !ruby/object:Gem::Dependency
257
240
  name: sanitize
258
241
  requirement: !ruby/object:Gem::Requirement
@@ -365,6 +348,20 @@ dependencies:
365
348
  - - "~>"
366
349
  - !ruby/object:Gem::Version
367
350
  version: '0.5'
351
+ - !ruby/object:Gem::Dependency
352
+ name: json_schemer
353
+ requirement: !ruby/object:Gem::Requirement
354
+ requirements:
355
+ - - "~>"
356
+ - !ruby/object:Gem::Version
357
+ version: '2.5'
358
+ type: :runtime
359
+ prerelease: false
360
+ version_requirements: !ruby/object:Gem::Requirement
361
+ requirements:
362
+ - - "~>"
363
+ - !ruby/object:Gem::Version
364
+ version: '2.5'
368
365
  - !ruby/object:Gem::Dependency
369
366
  name: pstore
370
367
  requirement: !ruby/object:Gem::Requirement
@@ -595,6 +592,8 @@ files:
595
592
  - docs/developer/design_pattern_for_eager_loading_collections.md
596
593
  - docs/developer/matrix.md
597
594
  - docs/developer/rack.md
595
+ - docs/matrix-optimisation/README.md
596
+ - lib/pact/doc.rb
598
597
  - lib/pact/doc/doc_file.rb
599
598
  - lib/pact/doc/generate.rb
600
599
  - lib/pact/doc/generator.rb
@@ -739,9 +738,11 @@ files:
739
738
  - lib/pact_broker/api/resources/currently_deployed_versions_for_environment.rb
740
739
  - lib/pact_broker/api/resources/currently_supported_versions_for_environment.rb
741
740
  - lib/pact_broker/api/resources/dashboard.rb
741
+ - lib/pact_broker/api/resources/deployed_or_released_versions.rb
742
742
  - lib/pact_broker/api/resources/deployed_version.rb
743
743
  - lib/pact_broker/api/resources/deployed_versions_for_version_and_environment.rb
744
744
  - lib/pact_broker/api/resources/environment.rb
745
+ - lib/pact_broker/api/resources/environment_versions.rb
745
746
  - lib/pact_broker/api/resources/environments.rb
746
747
  - lib/pact_broker/api/resources/error_handler.rb
747
748
  - lib/pact_broker/api/resources/error_handling_methods.rb
@@ -836,6 +837,7 @@ files:
836
837
  - lib/pact_broker/db.rb
837
838
  - lib/pact_broker/db/advisory_lock.rb
838
839
  - lib/pact_broker/db/clean.rb
840
+ - lib/pact_broker/db/clean/branch_selector.rb
839
841
  - lib/pact_broker/db/clean/selector.rb
840
842
  - lib/pact_broker/db/clean_incremental.rb
841
843
  - lib/pact_broker/db/data_migrations/create_branches.rb
@@ -970,6 +972,8 @@ files:
970
972
  - lib/pact_broker/locale/en.yml
971
973
  - lib/pact_broker/logging.rb
972
974
  - lib/pact_broker/logging/default_formatter.rb
975
+ - lib/pact_broker/logging/open_telemetry_appender_setup.rb
976
+ - lib/pact_broker/logging/trace_aware_json_formatter.rb
973
977
  - lib/pact_broker/matrix/deployment_status_summary.rb
974
978
  - lib/pact_broker/matrix/every_row.rb
975
979
  - lib/pact_broker/matrix/integration.rb
@@ -1281,6 +1285,7 @@ homepage: https://github.com/pact-foundation/pact_broker
1281
1285
  licenses:
1282
1286
  - MIT
1283
1287
  metadata: {}
1288
+ post_install_message:
1284
1289
  rdoc_options: []
1285
1290
  require_paths:
1286
1291
  - lib
@@ -1288,14 +1293,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
1288
1293
  requirements:
1289
1294
  - - ">="
1290
1295
  - !ruby/object:Gem::Version
1291
- version: 2.7.0
1296
+ version: 3.2.0
1292
1297
  required_rubygems_version: !ruby/object:Gem::Requirement
1293
1298
  requirements:
1294
1299
  - - ">="
1295
1300
  - !ruby/object:Gem::Version
1296
1301
  version: '0'
1297
1302
  requirements: []
1298
- rubygems_version: 4.0.10
1303
+ rubygems_version: 3.4.19
1304
+ signing_key:
1299
1305
  specification_version: 4
1300
1306
  summary: See description
1301
1307
  test_files: []