pact 1.45.0 → 1.49.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 021b58b1630e4e9943572668e342498886c0373a728d88bb0acba4f2f05f8a73
4
- data.tar.gz: ca7709d98dd311e2ded9d210b0ff4c51ecd38f62f278728f511d689a638055e9
3
+ metadata.gz: d23bb31e12922ffa6334faa9105770afc780d97310296dd48f120613e12cee63
4
+ data.tar.gz: 89178f9552aabbf8099e65f3a10864303f53370b7ea76f841be6401d5667a66d
5
5
  SHA512:
6
- metadata.gz: 21df8b8dc7ad42d9128ebdd174001d2a013b8eedf815222a54279b78f2b48ea5bdd8fc1e39e5d9c38ce2e881f650b0bde027914a11ccb55cfa7558bca2de8dd2
7
- data.tar.gz: 15218777fc8b7560508c00eb50f297732d7cb8458411e777390ad4a9b0e68f21b12ba84630021e5110c144f8c2c05154f205f6d890d4b43dd3122a5f6033d63b
6
+ metadata.gz: 0a1f2a19a89eacda8db9a85b08d538821bf8ff25986ea6e8d5df4b84ea798bd41dd9136b6a0f894b3a513bf538055b734d7335d585279653822c81e3bfb49fb0
7
+ data.tar.gz: e9b962314733660dd23127eab1076abda1391000de6d9f0f647fbdb5353cc37c79c6c308be6e04c16d9b1e5e341a38ea531f6e6fa7174852edbcb5f4c9dfc46e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,54 @@
1
+ <a name="v1.49.0"></a>
2
+ ### v1.49.0 (2020-02-18)
3
+
4
+
5
+ #### Features
6
+
7
+ * use environment variables PACT_BROKER_USERNAME and PACT_BROKER_PASSWORD when verifying a pact by URL, if the environment variables are present ([308f25d](/../../commit/308f25d))
8
+
9
+
10
+ <a name="v1.48.0"></a>
11
+ ### v1.48.0 (2020-02-13)
12
+
13
+
14
+ #### Features
15
+
16
+ * use certificates from SSL_CERT_FILE and SSL_CERT_DIR environment variables in HTTP connections ([164912b](/../../commit/164912b))
17
+
18
+
19
+ <a name="v1.47.0"></a>
20
+ ### v1.47.0 (2020-02-08)
21
+
22
+
23
+ #### Features
24
+
25
+ * update json formatter output ([376e47a](/../../commit/376e47a))
26
+ * add pact metadata to json formatter ([6c6ddb8](/../../commit/6c6ddb8))
27
+
28
+
29
+ <a name="v1.46.1"></a>
30
+ ### v1.46.1 (2020-01-22)
31
+
32
+
33
+ #### Bug Fixes
34
+
35
+ * send output messages to the correct stream when using the XML formatter ([e768a33](/../../commit/e768a33))
36
+
37
+
38
+ <a name="v1.46.0"></a>
39
+ ### v1.46.0 (2020-01-22)
40
+
41
+
42
+ #### Features
43
+
44
+ * expose full notice object in JSON output ([bdc2711](/../../commit/bdc2711))
45
+
46
+
47
+ #### Bug Fixes
48
+
49
+ * remove accidentally committed verbose: true ([498518c](/../../commit/498518c))
50
+
51
+
1
52
  <a name="v1.45.0"></a>
2
53
  ### v1.45.0 (2020-01-21)
3
54
 
@@ -56,9 +56,11 @@ module Pact
56
56
 
57
57
  def run_with_pact_url_string
58
58
  pact_repository_uri_options = {}
59
+ pact_repository_uri_options[:username] = ENV['PACT_BROKER_USERNAME'] if ENV['PACT_BROKER_USERNAME']
60
+ pact_repository_uri_options[:password] = ENV['PACT_BROKER_PASSWORD'] if ENV['PACT_BROKER_PASSWORD']
61
+ pact_repository_uri_options[:token] = ENV['PACT_BROKER_TOKEN']
59
62
  pact_repository_uri_options[:username] = options[:pact_broker_username] if options[:pact_broker_username]
60
63
  pact_repository_uri_options[:password] = options[:pact_broker_password] if options[:pact_broker_password]
61
- pact_repository_uri_options[:token] = ENV['PACT_BROKER_TOKEN']
62
64
  pact_uri = ::Pact::Provider::PactURI.new(options[:pact_uri], pact_repository_uri_options)
63
65
  Pact::Provider::PactSpecRunner.new([pact_uri], pact_spec_options).run
64
66
  end
@@ -50,6 +50,8 @@ module Pact
50
50
  http = Net::HTTP.new(uri.host, uri.port, :ENV)
51
51
  http.set_debug_output(output_stream) if verbose
52
52
  http.use_ssl = (uri.scheme == 'https')
53
+ http.ca_file = ENV['SSL_CERT_FILE'] if ENV['SSL_CERT_FILE'] && ENV['SSL_CERT_FILE'] != ''
54
+ http.ca_path = ENV['SSL_CERT_DIR'] if ENV['SSL_CERT_DIR'] && ENV['SSL_CERT_DIR'] != ''
53
55
  http.start do |http|
54
56
  http.request request
55
57
  end
@@ -3,6 +3,7 @@ require 'pact/hal/http_client'
3
3
  require 'pact/provider/pact_uri'
4
4
  require 'pact/errors'
5
5
  require 'pact/pact_broker/fetch_pacts'
6
+ require 'pact/pact_broker/notices'
6
7
 
7
8
  module Pact
8
9
  module PactBroker
@@ -51,7 +52,8 @@ module Pact
51
52
  pacts_for_verification_entity.response.body[EMBEDDED][PACTS].collect do | pact |
52
53
  metadata = {
53
54
  pending: pact["verificationProperties"]["pending"],
54
- notices: extract_notices(pact)
55
+ notices: extract_notices(pact),
56
+ short_description: pact["shortDescription"]
55
57
  }
56
58
  Pact::Provider::PactURI.new(pact[LINKS][SELF][HREF], http_client_options, metadata)
57
59
  end
@@ -69,24 +71,29 @@ module Pact
69
71
  q["includePendingStatus"] = true if options[:include_pending_status]
70
72
  q["consumerVersionSelectors"] = consumer_version_selectors if consumer_version_selectors.any?
71
73
  q["providerVersionTags"] = provider_version_tags if provider_version_tags.any?
74
+ q["includeWipPactsSince"] = options[:include_wip_pacts_since] if options[:include_wip_pacts_since]
72
75
  q
73
76
  end
74
77
 
75
78
  def extract_notices(pact)
76
- (pact["verificationProperties"]["notices"] || []).collect{ |notice| notice["text"] }.compact
79
+ Notices.new((pact["verificationProperties"]["notices"] || []).collect{ |notice| symbolize_keys(notice) })
80
+ end
81
+
82
+ def symbolize_keys(hash)
83
+ hash.each_with_object({}){ |(k,v), h| h[k.to_sym] = v }
77
84
  end
78
85
 
79
86
  def log_message
80
87
  latest = consumer_version_selectors.any? ? "" : "latest "
81
- message = "INFO: Fetching #{latest}pacts for #{provider} from #{broker_base_url}"
88
+ message = "INFO: Fetching pacts for #{provider} from #{broker_base_url} with the selection criteria: "
82
89
  if consumer_version_selectors.any?
83
90
  desc = consumer_version_selectors.collect do |selector|
84
- all_or_latest = selector[:all] ? "all" : "latest"
91
+ all_or_latest = selector[:all] ? "all for tag" : "latest for tag"
85
92
  # TODO support fallback
86
93
  name = selector[:fallback] ? "#{selector[:tag]} (or #{selector[:fallback]} if not found)" : selector[:tag]
87
94
  "#{all_or_latest} #{name}"
88
95
  end.join(", ")
89
- message << " for tags: #{desc}"
96
+ message << ": #{desc}"
90
97
  end
91
98
  Pact.configuration.output_stream.puts message
92
99
  end
@@ -0,0 +1,34 @@
1
+ module Pact
2
+ module PactBroker
3
+ class Notices < Array
4
+ def before_verification_notices
5
+ select { | notice | notice[:when].nil? || notice[:when].start_with?('before_verification') }
6
+ end
7
+
8
+ def before_verification_notices_text
9
+ before_verification_notices.collect{ | notice | notice[:text] }
10
+ end
11
+
12
+ def after_verification_notices(success, published)
13
+ select { | notice | notice[:when] == "after_verification:success_#{success}_published_#{published}" || notice[:when] == "after_verification" }
14
+ .collect do | notice |
15
+ notice.merge(:when => simplify_notice_when(notice[:when]))
16
+ end
17
+ end
18
+
19
+ def after_verification_notices_text(success, published)
20
+ after_verification_notices(success, published).collect{ | notice | notice[:text] }
21
+ end
22
+
23
+ def all_notices(success, published)
24
+ before_verification_notices + after_verification_notices(success, published)
25
+ end
26
+
27
+ private
28
+
29
+ def simplify_notice_when(when_key)
30
+ when_key.split(":").first
31
+ end
32
+ end
33
+ end
34
+ end
@@ -6,7 +6,7 @@ module Pact
6
6
  module Provider
7
7
  class PactSource
8
8
 
9
- attr_reader :uri
9
+ attr_reader :uri # PactURI class
10
10
 
11
11
  def initialize uri
12
12
  @uri = uri
@@ -23,7 +23,7 @@ module Pact
23
23
  def hal_entity
24
24
  http_client_keys = [:username, :password, :token]
25
25
  http_client_options = uri.options.reject{ |k, _| !http_client_keys.include?(k) }
26
- http_client = Pact::Hal::HttpClient.new(http_client_options.merge(verbose: true))
26
+ http_client = Pact::Hal::HttpClient.new(http_client_options)
27
27
  Pact::Hal::Entity.new(uri, pact_hash, http_client)
28
28
  end
29
29
  end
@@ -122,7 +122,7 @@ module Pact
122
122
  ignore_failures: options[:ignore_failures],
123
123
  request_customizer: options[:request_customizer]
124
124
  }
125
- honour_pactfile pact_source.uri, ordered_pact_json(pact_source.pact_json), spec_options
125
+ honour_pactfile pact_source, ordered_pact_json(pact_source.pact_json), spec_options
126
126
  end
127
127
  end
128
128
 
@@ -133,14 +133,12 @@ module Pact
133
133
 
134
134
  output = options[:out] || Pact.configuration.output_stream
135
135
  if options[:format]
136
- if options[:format] == 'json'
137
- # To avoid mixing JSON and logging, the output_stream will be set to the error_stream
138
- # in the pact-provider-verifier.
139
- # Send JSON to a file if configured, or straight to $stdout
140
- ::RSpec.configuration.add_formatter Pact::Provider::RSpec::JsonFormatter, options[:out] || $stdout
141
- else
142
- ::RSpec.configuration.add_formatter options[:format], output
143
- end
136
+ formatter = options[:format] == 'json' ? Pact::Provider::RSpec::JsonFormatter : options[:format]
137
+ # Send formatted output to $stdout for parsing, unless a file is specified
138
+ output = options[:out] || $stdout
139
+ ::RSpec.configuration.add_formatter formatter, output
140
+ # Don't want to mess up the JSON parsing with INFO and DEBUG messages to stdout, so send it to stderr
141
+ Pact.configuration.output_stream = Pact.configuration.error_stream if !options[:out]
144
142
  else
145
143
  # Sometimes the formatter set in the cli.rb get set with an output of StringIO.. don't know why
146
144
  formatter_class = Pact::RSpec.formatter_class
@@ -8,19 +8,21 @@ module Pact
8
8
 
9
9
  def dump_summary(summary)
10
10
  super(create_custom_summary(summary))
11
- output_hash[:summary][:notices] = pact_broker_notices(summary)
11
+ output_hash[:summary][:pacts] = pacts(summary)
12
12
  end
13
13
 
14
14
  def format_example(example)
15
15
  {
16
16
  :id => example.id,
17
+ :interaction_index => example.metadata[:pact_interaction].index,
17
18
  :description => example.description,
18
19
  :full_description => example.full_description,
19
20
  :status => calculate_status(example),
20
21
  :file_path => example.metadata[:file_path],
21
22
  :line_number => example.metadata[:line_number],
22
23
  :run_time => example.execution_result.run_time,
23
- :mismatches => extract_differences(example)
24
+ :mismatches => extract_differences(example),
25
+ :pact_url => example.metadata[:pact_uri].uri
24
26
  }
25
27
  end
26
28
 
@@ -54,12 +56,22 @@ module Pact
54
56
  # If the JSON formatter is used by someone else and they have multiple pacts, all the notices
55
57
  # for the pacts will be mushed together in one collection, so it will be hard to know which notice
56
58
  # belongs to which pact.
57
- def pact_broker_notices(summary)
58
- pact_uris(summary).collect{ |pact_uri| pact_uri.metadata[:notices] }.compact.flatten
59
+ def pacts(summary)
60
+ unique_pact_metadatas(summary).collect do | example_metadata |
61
+ pact_uri = example_metadata[:pact_uri]
62
+ notices = (pact_uri.metadata[:notices] && pact_uri.metadata[:notices].before_verification_notices) || []
63
+ {
64
+ notices: notices,
65
+ url: pact_uri.uri,
66
+ consumer_name: example_metadata[:pact_consumer_contract].consumer.name,
67
+ provider_name: example_metadata[:pact_consumer_contract].provider.name,
68
+ short_description: pact_uri.metadata[:short_description]
69
+ }
70
+ end
59
71
  end
60
72
 
61
- def pact_uris(summary)
62
- summary.examples.collect(&:metadata).collect{ |metadata| metadata[:pact_uri] }.uniq
73
+ def unique_pact_metadatas(summary)
74
+ summary.examples.collect(&:metadata).group_by{ | metadata | metadata[:pact_uri].uri }.values.collect(&:first)
63
75
  end
64
76
 
65
77
  def create_custom_summary(summary)
@@ -21,16 +21,20 @@ module Pact
21
21
 
22
22
  include ::RSpec::Core::DSL
23
23
 
24
- def honour_pactfile pact_uri, pact_json, options
24
+ def honour_pactfile pact_source, pact_json, options
25
+ pact_uri = pact_source.uri
25
26
  Pact.configuration.output_stream.puts "INFO: Reading pact at #{pact_uri}"
26
- (pact_uri.metadata[:notices] || EMPTY_ARRAY).each do | notice |
27
- Pact.configuration.output_stream.puts("DEBUG: #{notice}")
27
+ if pact_uri.metadata[:notices]
28
+ pact_uri.metadata[:notices].before_verification_notices_text.each do | text |
29
+ Pact.configuration.output_stream.puts("DEBUG: #{text}")
30
+ end
28
31
  end
32
+
29
33
  Pact.configuration.output_stream.puts "DEBUG: Filtering interactions by: #{options[:criteria]}" if options[:criteria] && options[:criteria].any?
30
34
  consumer_contract = Pact::ConsumerContract.from_json(pact_json)
31
35
  suffix = pact_uri.metadata[:pending] ? " [PENDING]": ""
32
36
  ::RSpec.describe "Verifying a pact between #{consumer_contract.consumer.name} and #{consumer_contract.provider.name}#{suffix}", pactfile_uri: pact_uri do
33
- honour_consumer_contract consumer_contract, options.merge(pact_json: pact_json, pact_uri: pact_uri)
37
+ honour_consumer_contract consumer_contract, options.merge(pact_json: pact_json, pact_uri: pact_uri, pact_source: pact_source, consumer_contract: consumer_contract)
34
38
  end
35
39
  end
36
40
 
@@ -78,7 +82,9 @@ module Pact
78
82
  pact_interaction: interaction,
79
83
  pact_interaction_example_description: interaction_description_for_rerun_command(interaction),
80
84
  pact_uri: options[:pact_uri],
81
- pact_ignore_failures: options[:pact_uri].metadata[:pending] || options[:ignore_failures]
85
+ pact_source: options[:pact_source],
86
+ pact_ignore_failures: options[:pact_uri].metadata[:pending] || options[:ignore_failures],
87
+ pact_consumer_contract: options[:consumer_contract]
82
88
  }
83
89
 
84
90
  describe description_for(interaction), metadata do
@@ -33,6 +33,9 @@ module Pact
33
33
  if can_publish_verification_results?
34
34
  tag_versions_if_configured
35
35
  publish_verification_results
36
+ true
37
+ else
38
+ false
36
39
  end
37
40
  end
38
41
 
@@ -17,7 +17,12 @@ module Pact
17
17
 
18
18
  def call
19
19
  verification_results.collect do | (pact_source, verification_result) |
20
- Publish.call(pact_source, verification_result)
20
+ published = false
21
+ begin
22
+ published = Publish.call(pact_source, verification_result)
23
+ ensure
24
+ print_after_verification_notices(pact_source, verification_result, published)
25
+ end
21
26
  end
22
27
  end
23
28
 
@@ -29,6 +34,14 @@ module Pact
29
34
  end
30
35
  end
31
36
 
37
+ def print_after_verification_notices(pact_source, verification_result, published)
38
+ if pact_source.uri.metadata[:notices]
39
+ pact_source.uri.metadata[:notices].after_verification_notices_text(verification_result.success, published).each do | text |
40
+ Pact.configuration.output_stream.puts "DEBUG: #{text}"
41
+ end
42
+ end
43
+ end
44
+
32
45
  attr_reader :pact_sources, :test_results_hash
33
46
  end
34
47
  end
@@ -4,6 +4,7 @@ module Pact
4
4
  module Provider
5
5
  module VerificationResults
6
6
  class VerificationResult
7
+ attr_reader :success, :provider_application_version, :test_results_hash
7
8
 
8
9
  def initialize publishable, success, provider_application_version, test_results_hash
9
10
  @publishable = publishable
@@ -31,10 +32,6 @@ module Pact
31
32
  def to_s
32
33
  "[success: #{success}, providerApplicationVersion: #{provider_application_version}]"
33
34
  end
34
-
35
- private
36
-
37
- attr_reader :success, :provider_application_version, :test_results_hash
38
35
  end
39
36
  end
40
37
  end
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.45.0"
3
+ VERSION = "1.49.0"
4
4
  end
data/pact.gemspec CHANGED
@@ -26,24 +26,23 @@ 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
- gem.add_runtime_dependency 'rspec', '>= 2.14'
29
+ gem.add_runtime_dependency 'rspec', '~> 3.0'
30
30
  gem.add_runtime_dependency 'rack-test', '>= 0.6.3', '< 2.0.0'
31
- gem.add_runtime_dependency 'thor'
32
- gem.add_runtime_dependency 'webrick'
31
+ gem.add_runtime_dependency 'thor', '~> 0.20'
32
+ gem.add_runtime_dependency 'webrick', '~> 1.3'
33
33
  gem.add_runtime_dependency 'term-ansicolor', '~> 1.0'
34
34
 
35
35
  gem.add_runtime_dependency 'pact-support', '~> 1.9'
36
36
  gem.add_runtime_dependency 'pact-mock_service', '~> 3.0', '>= 3.3.1'
37
37
 
38
- gem.add_development_dependency 'rake', '~> 10.0.3'
38
+ gem.add_development_dependency 'rake', '~> 10.0'
39
39
  gem.add_development_dependency 'webmock', '~> 3.0'
40
- gem.add_development_dependency 'pry-byebug'
41
40
  gem.add_development_dependency 'fakefs', '0.5' # 0.6.0 blows up
42
41
  gem.add_development_dependency 'hashie', '~> 2.0'
43
- gem.add_development_dependency 'activesupport'
42
+ gem.add_development_dependency 'activesupport', '~> 5.2'
44
43
  gem.add_development_dependency 'faraday', '~> 0.13'
45
- gem.add_development_dependency 'appraisal', '~> 2.2'
46
44
  gem.add_development_dependency 'conventional-changelog', '~> 1.3'
47
45
  gem.add_development_dependency 'bump', '~> 0.5'
48
- gem.add_development_dependency 'pact-message'
46
+ gem.add_development_dependency 'pact-message', '~> 0.6'
47
+ gem.add_development_dependency 'rspec-its', '~> 1.3'
49
48
  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.45.0
4
+ version: 1.49.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Fraser
@@ -12,22 +12,22 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2020-01-21 00:00:00.000000000 Z
15
+ date: 2020-02-17 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rspec
19
19
  requirement: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - ">="
21
+ - - "~>"
22
22
  - !ruby/object:Gem::Version
23
- version: '2.14'
23
+ version: '3.0'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ">="
28
+ - - "~>"
29
29
  - !ruby/object:Gem::Version
30
- version: '2.14'
30
+ version: '3.0'
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: rack-test
33
33
  requirement: !ruby/object:Gem::Requirement
@@ -52,30 +52,30 @@ dependencies:
52
52
  name: thor
53
53
  requirement: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - ">="
55
+ - - "~>"
56
56
  - !ruby/object:Gem::Version
57
- version: '0'
57
+ version: '0.20'
58
58
  type: :runtime
59
59
  prerelease: false
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - ">="
62
+ - - "~>"
63
63
  - !ruby/object:Gem::Version
64
- version: '0'
64
+ version: '0.20'
65
65
  - !ruby/object:Gem::Dependency
66
66
  name: webrick
67
67
  requirement: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - ">="
69
+ - - "~>"
70
70
  - !ruby/object:Gem::Version
71
- version: '0'
71
+ version: '1.3'
72
72
  type: :runtime
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - ">="
76
+ - - "~>"
77
77
  - !ruby/object:Gem::Version
78
- version: '0'
78
+ version: '1.3'
79
79
  - !ruby/object:Gem::Dependency
80
80
  name: term-ansicolor
81
81
  requirement: !ruby/object:Gem::Requirement
@@ -130,14 +130,14 @@ dependencies:
130
130
  requirements:
131
131
  - - "~>"
132
132
  - !ruby/object:Gem::Version
133
- version: 10.0.3
133
+ version: '10.0'
134
134
  type: :development
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - "~>"
139
139
  - !ruby/object:Gem::Version
140
- version: 10.0.3
140
+ version: '10.0'
141
141
  - !ruby/object:Gem::Dependency
142
142
  name: webmock
143
143
  requirement: !ruby/object:Gem::Requirement
@@ -152,20 +152,6 @@ dependencies:
152
152
  - - "~>"
153
153
  - !ruby/object:Gem::Version
154
154
  version: '3.0'
155
- - !ruby/object:Gem::Dependency
156
- name: pry-byebug
157
- requirement: !ruby/object:Gem::Requirement
158
- requirements:
159
- - - ">="
160
- - !ruby/object:Gem::Version
161
- version: '0'
162
- type: :development
163
- prerelease: false
164
- version_requirements: !ruby/object:Gem::Requirement
165
- requirements:
166
- - - ">="
167
- - !ruby/object:Gem::Version
168
- version: '0'
169
155
  - !ruby/object:Gem::Dependency
170
156
  name: fakefs
171
157
  requirement: !ruby/object:Gem::Requirement
@@ -198,16 +184,16 @@ dependencies:
198
184
  name: activesupport
199
185
  requirement: !ruby/object:Gem::Requirement
200
186
  requirements:
201
- - - ">="
187
+ - - "~>"
202
188
  - !ruby/object:Gem::Version
203
- version: '0'
189
+ version: '5.2'
204
190
  type: :development
205
191
  prerelease: false
206
192
  version_requirements: !ruby/object:Gem::Requirement
207
193
  requirements:
208
- - - ">="
194
+ - - "~>"
209
195
  - !ruby/object:Gem::Version
210
- version: '0'
196
+ version: '5.2'
211
197
  - !ruby/object:Gem::Dependency
212
198
  name: faraday
213
199
  requirement: !ruby/object:Gem::Requirement
@@ -223,61 +209,61 @@ dependencies:
223
209
  - !ruby/object:Gem::Version
224
210
  version: '0.13'
225
211
  - !ruby/object:Gem::Dependency
226
- name: appraisal
212
+ name: conventional-changelog
227
213
  requirement: !ruby/object:Gem::Requirement
228
214
  requirements:
229
215
  - - "~>"
230
216
  - !ruby/object:Gem::Version
231
- version: '2.2'
217
+ version: '1.3'
232
218
  type: :development
233
219
  prerelease: false
234
220
  version_requirements: !ruby/object:Gem::Requirement
235
221
  requirements:
236
222
  - - "~>"
237
223
  - !ruby/object:Gem::Version
238
- version: '2.2'
224
+ version: '1.3'
239
225
  - !ruby/object:Gem::Dependency
240
- name: conventional-changelog
226
+ name: bump
241
227
  requirement: !ruby/object:Gem::Requirement
242
228
  requirements:
243
229
  - - "~>"
244
230
  - !ruby/object:Gem::Version
245
- version: '1.3'
231
+ version: '0.5'
246
232
  type: :development
247
233
  prerelease: false
248
234
  version_requirements: !ruby/object:Gem::Requirement
249
235
  requirements:
250
236
  - - "~>"
251
237
  - !ruby/object:Gem::Version
252
- version: '1.3'
238
+ version: '0.5'
253
239
  - !ruby/object:Gem::Dependency
254
- name: bump
240
+ name: pact-message
255
241
  requirement: !ruby/object:Gem::Requirement
256
242
  requirements:
257
243
  - - "~>"
258
244
  - !ruby/object:Gem::Version
259
- version: '0.5'
245
+ version: '0.6'
260
246
  type: :development
261
247
  prerelease: false
262
248
  version_requirements: !ruby/object:Gem::Requirement
263
249
  requirements:
264
250
  - - "~>"
265
251
  - !ruby/object:Gem::Version
266
- version: '0.5'
252
+ version: '0.6'
267
253
  - !ruby/object:Gem::Dependency
268
- name: pact-message
254
+ name: rspec-its
269
255
  requirement: !ruby/object:Gem::Requirement
270
256
  requirements:
271
- - - ">="
257
+ - - "~>"
272
258
  - !ruby/object:Gem::Version
273
- version: '0'
259
+ version: '1.3'
274
260
  type: :development
275
261
  prerelease: false
276
262
  version_requirements: !ruby/object:Gem::Requirement
277
263
  requirements:
278
- - - ">="
264
+ - - "~>"
279
265
  - !ruby/object:Gem::Version
280
- version: '0'
266
+ version: '1.3'
281
267
  description: Enables consumer driven contract testing, providing a mock service and
282
268
  DSL for the consumer project, and interaction playback and verification for the
283
269
  service provider project.
@@ -332,6 +318,7 @@ files:
332
318
  - lib/pact/pact_broker.rb
333
319
  - lib/pact/pact_broker/fetch_pact_uris_for_verification.rb
334
320
  - lib/pact/pact_broker/fetch_pacts.rb
321
+ - lib/pact/pact_broker/notices.rb
335
322
  - lib/pact/project_root.rb
336
323
  - lib/pact/provider.rb
337
324
  - lib/pact/provider/configuration.rb