statesman 3.1.0 → 3.2.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
  SHA1:
3
- metadata.gz: 9dde77bdcc9a2b9cde16e90f5d00e82a30d1efc7
4
- data.tar.gz: '0927b94d3a461059051083ae3d62b6df62f07658'
3
+ metadata.gz: 32bb973d8f35e81d00d5f6424d26dfb7af6f101b
4
+ data.tar.gz: 2cfacba286b5a45f15f784cf94a91cd2abc34cc7
5
5
  SHA512:
6
- metadata.gz: f479c08a14edf813e36a035ffb3db9f1985ddffad74eebd6a9ff9ffa41b4a3bcc16d27f43f1048690f0b93acc4b286cf75184059903c5722d333a7bac0839c42
7
- data.tar.gz: 210f9b2ceb2d079bb40540b4a68765397df10e31795e71edbe9204a413b9839b6ce2eecd1f335ef65258bcd2ffc58d4ed1bf42cf83ac71d6275da222a8e91367
6
+ metadata.gz: d2cd17ce3c5cb346912126ff09bb0048647347495bbd21ddb5fd4beaa36225189daae1cd6ca5c6df69bd78f247240e6d03b9c16cb8625b49713b4e4a3b4319f8
7
+ data.tar.gz: b8e32db8300886d2db38d7a6e8ef00666f7d7ad018b1a04e89c4bd40a8a0cabb415eed02019b3c7745a4bcc5572d6876f7d932990632bb4c50e21bcfdcfd7599
@@ -1,13 +1,9 @@
1
- # For all options see https://github.com/bbatsov/rubocop/tree/master/config
2
-
3
1
  inherit_from: .rubocop_todo.yml
2
+ inherit_gem:
3
+ ruboconfig: rubocop.yml
4
4
 
5
5
  AllCops:
6
6
  DisplayCopNames: true
7
- Include:
8
- - Rakefile
9
- - statesman.gemfile
10
- - lib/tasks/*.rake
11
7
  Exclude:
12
8
  - vendor/**/*
13
9
  - .*/**
@@ -16,45 +12,19 @@ AllCops:
16
12
  StringLiterals:
17
13
  Enabled: false
18
14
 
19
- Documentation:
20
- Enabled: false
21
-
22
- SignalException:
23
- EnforcedStyle: only_raise
24
-
25
- # Avoid methods longer than 15 lines of code
26
15
  MethodLength:
27
16
  CountComments: false
28
17
  Max: 15
29
18
 
30
19
  AbcSize:
31
- Max: 25
32
-
33
- # Don't require utf-8 encoding comment
34
- Encoding:
35
- Enabled: false
20
+ Max: 18
36
21
 
37
22
  LineLength:
38
23
  Max: 80
39
24
 
40
- GuardClause:
41
- Enabled: false
42
-
43
- Layout/SpaceBeforeFirstArg:
44
- Enabled: false
45
-
46
- DotPosition:
47
- EnforcedStyle: trailing
48
-
49
25
  # Allow class and message or instance raises
50
26
  Style/RaiseArgs:
51
27
  Enabled: false
52
28
 
53
- Metrics/BlockLength:
54
- Exclude:
55
- - spec/**/*
56
-
57
- Style/FileName:
58
- Exclude:
59
- - Gemfile
60
- - Guardfile
29
+ Lint/RescueWithoutErrorClass:
30
+ Enabled: false
@@ -1,3 +1,8 @@
1
+
2
+ ## v3.2.0, 27 November 2017
3
+
4
+ - Allow specifying metadata with `Machine#allowed_transitions` (patch by [@vvondra](https://github.com/vvondra))
5
+
1
6
  ## v3.1.0, 1 September 2017
2
7
 
3
8
  - Add support for Rails 5.0.x and 5.1.x (patch by [@kenchan0130](https://github.com/kenchan0130) and [@timrogers](https://github.com/timrogers))
data/Gemfile CHANGED
@@ -3,6 +3,7 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  gem "rails", "~> #{ENV['RAILS_VERSION']}" if ENV["RAILS_VERSION"]
6
+ gem "ruboconfig", git: "https://github.com/gocardless/ruboconfig", tag: "v1.0.1"
6
7
 
7
8
  group :development do
8
9
  gem "mongoid", ">= 3.1" unless ENV["EXCLUDE_MONGOID"]
data/README.md CHANGED
@@ -102,6 +102,7 @@ class OrderTransition < ActiveRecord::Base
102
102
 
103
103
  belongs_to :order, inverse_of: :order_transitions
104
104
  end
105
+ ```
105
106
 
106
107
  Now, you can start working with your state machine:
107
108
 
@@ -4,7 +4,7 @@ Our goal as Statesman maintainers is for the library to be compatible with all s
4
4
 
5
5
  Specifically, any CRuby/MRI version that has not received an End of Life notice ([e.g. this notice for Ruby 2.1](https://www.ruby-lang.org/en/news/2017/04/01/support-of-ruby-2-1-has-ended/)) is supported. Similarly, any version of Rails listed as currently supported on [this page](http://guides.rubyonrails.org/maintenance_policy.html) is one we aim to support in Statesman.
6
6
 
7
- To that end, [our build matrix](../.travis.yml) includes all these versions.
7
+ To that end, [our build matrix](../.circleci/config.yml) includes all these versions.
8
8
 
9
9
  Any time Statesman doesn't work on a supported combination of Ruby and Rails, it's a bug, and can be reported [here](https://github.com/gocardless/statesman/issues).
10
10
 
@@ -107,7 +107,7 @@ module Statesman
107
107
 
108
108
  def serialized?(transition_class)
109
109
  if ::ActiveRecord.respond_to?(:gem_version) &&
110
- ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
110
+ ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
111
111
  transition_class.type_for_attribute("metadata").
112
112
  is_a?(::ActiveRecord::Type::Serialized)
113
113
  else
@@ -49,7 +49,7 @@ module Statesman
49
49
  before: [],
50
50
  after: [],
51
51
  after_commit: [],
52
- guards: []
52
+ guards: [],
53
53
  }
54
54
  end
55
55
 
@@ -170,7 +170,7 @@ module Statesman
170
170
 
171
171
  def initialize(object,
172
172
  options = {
173
- transition_class: Statesman::Adapters::MemoryTransition
173
+ transition_class: Statesman::Adapters::MemoryTransition,
174
174
  })
175
175
  @object = object
176
176
  @transition_class = options[:transition_class]
@@ -189,9 +189,9 @@ module Statesman
189
189
  states.flatten.any? { |state| current_state == state.to_s }
190
190
  end
191
191
 
192
- def allowed_transitions
192
+ def allowed_transitions(metadata = {})
193
193
  successors_for(current_state).select do |state|
194
- can_transition_to?(state)
194
+ can_transition_to?(state, metadata)
195
195
  end
196
196
  end
197
197
 
@@ -1,3 +1,3 @@
1
1
  module Statesman
2
- VERSION = "3.1.0".freeze
2
+ VERSION = "3.2.0".freeze
3
3
  end
@@ -29,20 +29,20 @@ namespace :statesman do
29
29
  subsequent_t = initial_t.alias
30
30
 
31
31
  later_row_for_same_parent = initial_t[parent_fk].
32
- eq(subsequent_t[parent_fk]).
33
- and(initial_t[:sort_key].
32
+ eq(subsequent_t[parent_fk]).
33
+ and(initial_t[:sort_key].
34
34
  lt(subsequent_t[:sort_key]))
35
35
 
36
36
  no_later_row = subsequent_t[:id].eq(nil)
37
37
  in_current_parent_batch = initial_t[parent_fk].in(models.map(&:id))
38
38
 
39
39
  latest_ids_query = initial_t.join(subsequent_t, Arel::Nodes::OuterJoin).
40
- on(later_row_for_same_parent).
41
- where(no_later_row.and(in_current_parent_batch)).
42
- project(initial_t[:id]).to_sql
40
+ on(later_row_for_same_parent).
41
+ where(no_later_row.and(in_current_parent_batch)).
42
+ project(initial_t[:id]).to_sql
43
43
 
44
44
  latest_ids = transition_class.find_by_sql(latest_ids_query).
45
- to_a.collect(&:id)
45
+ to_a.collect(&:id)
46
46
 
47
47
  transition_class.where(id: latest_ids).update_all(most_recent: true)
48
48
  end
@@ -16,7 +16,7 @@ describe Statesman::MigrationGenerator, type: :generator do
16
16
 
17
17
  subject do
18
18
  file(
19
- "db/migrate/#{migration_number}_add_statesman_to_bacon_transitions.rb"
19
+ "db/migrate/#{migration_number}_add_statesman_to_bacon_transitions.rb",
20
20
  )
21
21
  end
22
22
 
@@ -21,7 +21,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
21
21
  allow(MyActiveRecordModelTransition).to receive_messages(columns_hash:
22
22
  { 'metadata' => metadata_column })
23
23
  if ::ActiveRecord.respond_to?(:gem_version) &&
24
- ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
24
+ ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
25
25
  expect(MyActiveRecordModelTransition).
26
26
  to receive(:type_for_attribute).with("metadata").
27
27
  and_return(ActiveRecord::Type::Value.new)
@@ -46,7 +46,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
46
46
  allow(MyActiveRecordModelTransition).to receive_messages(columns_hash:
47
47
  { 'metadata' => metadata_column })
48
48
  if ::ActiveRecord.respond_to?(:gem_version) &&
49
- ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
49
+ ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
50
50
  serialized_type = ::ActiveRecord::Type::Serialized.new(
51
51
  '', ::ActiveRecord::Coders::JSON
52
52
  )
@@ -74,7 +74,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
74
74
  allow(MyActiveRecordModelTransition).to receive_messages(columns_hash:
75
75
  { 'metadata' => metadata_column })
76
76
  if ::ActiveRecord.respond_to?(:gem_version) &&
77
- ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
77
+ ::ActiveRecord.gem_version >= Gem::Version.new('4.2.0.a')
78
78
  serialized_type = ::ActiveRecord::Type::Serialized.new(
79
79
  '', ::ActiveRecord::Coders::JSON
80
80
  )
@@ -125,7 +125,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
125
125
  context "ActiveRecord::RecordNotUnique unrelated to this transition" do
126
126
  let(:error) do
127
127
  if ::ActiveRecord.respond_to?(:gem_version) &&
128
- ::ActiveRecord.gem_version >= Gem::Version.new('4.0.0')
128
+ ::ActiveRecord.gem_version >= Gem::Version.new('4.0.0')
129
129
  ActiveRecord::RecordNotUnique.new("unrelated")
130
130
  else
131
131
  ActiveRecord::RecordNotUnique.new("unrelated", nil)
@@ -163,7 +163,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
163
163
  allow(observer).to receive(:execute) do |phase|
164
164
  next unless phase == :before
165
165
  expect(
166
- model.transitions.where(most_recent: true).first.to_state
166
+ model.transitions.where(most_recent: true).first.to_state,
167
167
  ).to eq("y")
168
168
  end
169
169
 
@@ -176,7 +176,7 @@ describe Statesman::Adapters::ActiveRecord, active_record: true do
176
176
  allow(observer).to receive(:execute) do |phase|
177
177
  next unless phase == :after
178
178
  expect(
179
- model.transitions.where(most_recent: true).first.to_state
179
+ model.transitions.where(most_recent: true).first.to_state,
180
180
  ).to eq("z")
181
181
  end
182
182
 
@@ -441,7 +441,8 @@ describe Statesman::Machine do
441
441
  end
442
442
 
443
443
  let(:instance) { machine.new(my_model) }
444
- subject { instance.allowed_transitions }
444
+ let(:metadata) { { some: :metadata } }
445
+ subject { instance.allowed_transitions(metadata) }
445
446
 
446
447
  context "with multiple possible states" do
447
448
  it { is_expected.to eq(%w[y z]) }
@@ -450,6 +451,26 @@ describe Statesman::Machine do
450
451
  context "with one possible state" do
451
452
  before { instance.transition_to!(:y) }
452
453
  it { is_expected.to eq(['z']) }
454
+
455
+ context "guarded using metadata" do
456
+ before do
457
+ machine.guard_transition(to: :z) do |_, _, metadata|
458
+ metadata[:some] == :metadata
459
+ end
460
+ end
461
+
462
+ it { is_expected.to eq(['z']) }
463
+ end
464
+
465
+ context "excluded by guard using metadata" do
466
+ before do
467
+ machine.guard_transition(to: :z) do |_, _, metadata|
468
+ metadata[:some] != :metadata
469
+ end
470
+ end
471
+
472
+ it { is_expected.to eq([]) }
473
+ end
453
474
  end
454
475
 
455
476
  context "with no possible transitions" do
@@ -481,7 +502,8 @@ describe Statesman::Machine do
481
502
  end
482
503
 
483
504
  let(:instance) { machine.new(my_model) }
484
- subject { instance.can_transition_to?(new_state) }
505
+ let(:metadata) { { some: :metadata } }
506
+ subject { instance.can_transition_to?(new_state, metadata) }
485
507
 
486
508
  context "when the transition is invalid" do
487
509
  context "with an initial to state" do
@@ -515,6 +537,26 @@ describe Statesman::Machine do
515
537
  before { machine.guard_transition(to: :y) { false } }
516
538
  it { is_expected.to be_falsey }
517
539
  end
540
+
541
+ context "but it has a failing guard based on metadata" do
542
+ before do
543
+ machine.guard_transition(to: :y) do |_, _, metadata|
544
+ metadata[:some] != :metadata
545
+ end
546
+ end
547
+
548
+ it { is_expected.to be_falsey }
549
+ end
550
+
551
+ context "and has a passing guard based on metadata" do
552
+ before do
553
+ machine.guard_transition(to: :y) do |_, _, metadata|
554
+ metadata[:some] == :metadata
555
+ end
556
+ end
557
+
558
+ it { is_expected.to be_truthy }
559
+ end
518
560
  end
519
561
  end
520
562
 
@@ -20,7 +20,7 @@ end
20
20
 
21
21
  class MyActiveRecordModel < ActiveRecord::Base
22
22
  has_many :my_active_record_model_transitions, autosave: false
23
- alias transitions my_active_record_model_transitions
23
+ alias_method :transitions, :my_active_record_model_transitions
24
24
 
25
25
  def state_machine
26
26
  @state_machine ||= MyStateMachine.new(
@@ -98,7 +98,7 @@ end
98
98
 
99
99
  class OtherActiveRecordModel < ActiveRecord::Base
100
100
  has_many :other_active_record_model_transitions, autosave: false
101
- alias transitions other_active_record_model_transitions
101
+ alias_method :transitions, :other_active_record_model_transitions
102
102
 
103
103
  def state_machine
104
104
  @state_machine ||= MyStateMachine.new(
@@ -1,5 +1,3 @@
1
- # coding: utf-8
2
-
3
1
  lib = File.expand_path('../lib', __FILE__)
4
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
3
  require 'statesman/version'
@@ -21,16 +19,16 @@ Gem::Specification.new do |spec|
21
19
 
22
20
  spec.required_ruby_version = '>= 2.2'
23
21
 
22
+ spec.add_development_dependency "ammeter", "~> 1.1"
24
23
  spec.add_development_dependency "bundler", "~> 1.3"
25
- spec.add_development_dependency "rake", "~> 12.0.0"
24
+ spec.add_development_dependency "mysql2", "~> 0.4"
25
+ spec.add_development_dependency "pg", "~> 0.18"
26
+ spec.add_development_dependency "rails", ">= 3.2"
27
+ spec.add_development_dependency "rake", "~> 12.3.0"
26
28
  spec.add_development_dependency "rspec", "~> 3.1"
27
- spec.add_development_dependency "rspec-rails", "~> 3.1"
28
29
  spec.add_development_dependency "rspec-its", "~> 1.1"
29
- spec.add_development_dependency "rubocop", "~> 0.49.1"
30
- spec.add_development_dependency "sqlite3", "~> 1.3"
31
- spec.add_development_dependency "rails", ">= 3.2"
32
- spec.add_development_dependency "pg", "~> 0.18"
33
- spec.add_development_dependency "mysql2", "~> 0.4"
34
- spec.add_development_dependency "ammeter", "~> 1.1"
30
+ spec.add_development_dependency "rspec-rails", "~> 3.1"
35
31
  spec.add_development_dependency "rspec_junit_formatter", "~> 0.3.0"
32
+ spec.add_development_dependency "rubocop", "~> 0.51.0"
33
+ spec.add_development_dependency "sqlite3", "~> 1.3"
36
34
  end
metadata CHANGED
@@ -1,183 +1,183 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: statesman
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GoCardless
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-01 00:00:00.000000000 Z
11
+ date: 2017-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: ammeter
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '1.1'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.3'
26
+ version: '1.1'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rake
28
+ name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 12.0.0
33
+ version: '1.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 12.0.0
40
+ version: '1.3'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rspec
42
+ name: mysql2
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.1'
47
+ version: '0.4'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.1'
54
+ version: '0.4'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rspec-rails
56
+ name: pg
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.1'
61
+ version: '0.18'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.1'
68
+ version: '0.18'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rspec-its
70
+ name: rails
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '1.1'
75
+ version: '3.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '1.1'
82
+ version: '3.2'
83
83
  - !ruby/object:Gem::Dependency
84
- name: rubocop
84
+ name: rake
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.49.1
89
+ version: 12.3.0
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.49.1
96
+ version: 12.3.0
97
97
  - !ruby/object:Gem::Dependency
98
- name: sqlite3
98
+ name: rspec
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '1.3'
103
+ version: '3.1'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '1.3'
110
+ version: '3.1'
111
111
  - !ruby/object:Gem::Dependency
112
- name: rails
112
+ name: rspec-its
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '3.2'
117
+ version: '1.1'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '3.2'
124
+ version: '1.1'
125
125
  - !ruby/object:Gem::Dependency
126
- name: pg
126
+ name: rspec-rails
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0.18'
131
+ version: '3.1'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '0.18'
138
+ version: '3.1'
139
139
  - !ruby/object:Gem::Dependency
140
- name: mysql2
140
+ name: rspec_junit_formatter
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0.4'
145
+ version: 0.3.0
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '0.4'
152
+ version: 0.3.0
153
153
  - !ruby/object:Gem::Dependency
154
- name: ammeter
154
+ name: rubocop
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: '1.1'
159
+ version: 0.51.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: '1.1'
166
+ version: 0.51.0
167
167
  - !ruby/object:Gem::Dependency
168
- name: rspec_junit_formatter
168
+ name: sqlite3
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 0.3.0
173
+ version: '1.3'
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 0.3.0
180
+ version: '1.3'
181
181
  description: A statesman-like state machine library
182
182
  email:
183
183
  - developers@gocardless.com