ledger_sync 2.0.2 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e4a9f9dfb5b4043145f586c9a4521a8a7c20f3459caff689bcdc405cd5c0eed2
4
- data.tar.gz: 30545ebfe3959dcbf369eeda8b27a4968f94a9526a04334be5897281266f7698
3
+ metadata.gz: 1cf6f5673db192ad47561bec18aea0d49c520865c3dcf5e4bd7c671930ab629d
4
+ data.tar.gz: 194207990f3cd94f7511f6a52e021f20b0fd39983d0680b33458d2582e6973a2
5
5
  SHA512:
6
- metadata.gz: 6f67f5788295ffbcfe881c30704e4ce6cf8d06e1b556af9743c88ba363557ba46655f71045a0dc3ace0704ebba61fa2828b4e685fa2cf9b13526261fbc620fc7
7
- data.tar.gz: ae69cc1e202fcf25c44703601933de21561393204af5ae153896456b6d4b3d09489dd3cf812d780c5bb322def8f3e64c3ba21b183ba382f333ad7e23580c06b4
6
+ metadata.gz: 958087d98e123fedff5a73eb89ba42d3eed8934643cdcc4880b7ef60bca7b87adcaeecb256f884eeff6e2689d6e3bb7389d1d17ebca6af2d745706eaae46d798
7
+ data.tar.gz: 939329c7c8518d52ae1423c76a61545489ed8ca8a2c31eb338853bf45d093be82c185f3b8317b05e10bb6643f598504162ecedf50cb8a58bd73c14c53b46a318
@@ -8,7 +8,7 @@ jobs:
8
8
  rubocop:
9
9
  strategy:
10
10
  matrix:
11
- ruby-version: [2.6.3, 2.6.6, 2.7.1]
11
+ ruby-version: [2.5.8, 2.6.3, 2.6.6, 2.7.1, 3.0.0]
12
12
  runs-on: [ubuntu-latest]
13
13
  steps:
14
14
  - uses: actions/checkout@v2
@@ -24,7 +24,7 @@ jobs:
24
24
  rspec:
25
25
  strategy:
26
26
  matrix:
27
- ruby-version: [2.6.3, 2.6.6, 2.7.1]
27
+ ruby-version: [2.5.8, 2.6.3, 2.6.6, 2.7.1, 3.0.0]
28
28
  runs-on: [ubuntu-latest]
29
29
  steps:
30
30
  - uses: actions/checkout@v2
@@ -46,7 +46,7 @@ jobs:
46
46
  flag-name: run-${{ matrix.ruby-version }}
47
47
  publish:
48
48
  runs-on: ubuntu-latest
49
- needs: ['rubocop', 'rspec']
49
+ needs: ["rubocop", "rspec"]
50
50
  if: github.event_name == 'release' && github.event.action == 'created'
51
51
  steps:
52
52
  - name: Checkout
@@ -68,4 +68,4 @@ jobs:
68
68
  gem build *.gemspec
69
69
  gem push *.gem
70
70
  env:
71
- GEM_HOST_API_KEY: "${{ secrets.RUBY_GEM_KEY }}"
71
+ GEM_HOST_API_KEY: "${{ secrets.RUBY_GEM_KEY }}"
data/.travis.yml CHANGED
@@ -5,6 +5,7 @@ rvm:
5
5
  - 2.6.6
6
6
  - 2.6.3
7
7
  - 2.7.1
8
+ - 3.0.0
8
9
  - ruby-head
9
10
  before_install:
10
11
  - gem update --system
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ledger_sync (2.0.2)
4
+ ledger_sync (2.2.0)
5
5
  activemodel
6
6
  colorize
7
7
  dry-schema (~> 1.5.4)
@@ -20,25 +20,25 @@ PATH
20
20
  GEM
21
21
  remote: https://rubygems.org/
22
22
  specs:
23
- activemodel (6.0.3.6)
24
- activesupport (= 6.0.3.6)
25
- activesupport (6.0.3.6)
23
+ activemodel (6.1.4)
24
+ activesupport (= 6.1.4)
25
+ activesupport (6.1.4)
26
26
  concurrent-ruby (~> 1.0, >= 1.0.2)
27
- i18n (>= 0.7, < 2)
28
- minitest (~> 5.1)
29
- tzinfo (~> 1.1)
30
- zeitwerk (~> 2.2, >= 2.2.2)
31
- addressable (2.7.0)
27
+ i18n (>= 1.6, < 2)
28
+ minitest (>= 5.1)
29
+ tzinfo (~> 2.0)
30
+ zeitwerk (~> 2.3)
31
+ addressable (2.8.0)
32
32
  public_suffix (>= 2.0.2, < 5.0)
33
33
  ast (2.4.2)
34
34
  awesome_print (1.9.2)
35
35
  bump (0.9.0)
36
36
  byebug (11.1.3)
37
- childprocess (4.0.0)
38
- climate_control (1.0.0)
37
+ childprocess (4.1.0)
38
+ climate_control (1.0.1)
39
39
  colorator (1.1.0)
40
40
  colorize (0.8.1)
41
- concurrent-ruby (1.1.8)
41
+ concurrent-ruby (1.1.9)
42
42
  coveralls (0.7.2)
43
43
  multi_json (~> 1.3)
44
44
  rest-client (= 1.6.7)
@@ -48,7 +48,7 @@ GEM
48
48
  crack (0.4.5)
49
49
  rexml
50
50
  diff-lcs (1.4.4)
51
- docile (1.3.5)
51
+ docile (1.4.0)
52
52
  dotenv (2.7.6)
53
53
  dry-configurable (0.12.1)
54
54
  concurrent-ruby (~> 1.0)
@@ -91,12 +91,15 @@ GEM
91
91
  eventmachine (1.2.7)
92
92
  factory_bot (6.1.0)
93
93
  activesupport (>= 5.0.0)
94
- faraday (1.4.2)
94
+ faraday (1.7.0)
95
95
  faraday-em_http (~> 1.0)
96
96
  faraday-em_synchrony (~> 1.0)
97
97
  faraday-excon (~> 1.1)
98
+ faraday-httpclient (~> 1.0.1)
98
99
  faraday-net_http (~> 1.0)
99
100
  faraday-net_http_persistent (~> 1.1)
101
+ faraday-patron (~> 1.0)
102
+ faraday-rack (~> 1.0)
100
103
  multipart-post (>= 1.2, < 3)
101
104
  ruby2_keywords (>= 0.0.4)
102
105
  faraday-detailed_logger (2.3.0)
@@ -104,63 +107,71 @@ GEM
104
107
  faraday-em_http (1.0.0)
105
108
  faraday-em_synchrony (1.0.0)
106
109
  faraday-excon (1.1.0)
110
+ faraday-httpclient (1.0.1)
107
111
  faraday-net_http (1.0.1)
108
- faraday-net_http_persistent (1.1.0)
109
- faraday_middleware (1.0.0)
112
+ faraday-net_http_persistent (1.2.0)
113
+ faraday-patron (1.0.0)
114
+ faraday-rack (1.0.0)
115
+ faraday_middleware (1.1.0)
110
116
  faraday (~> 1.0)
111
- ffi (1.15.0)
117
+ ffi (1.15.3)
112
118
  fingerprintable (1.2.1)
113
119
  colorize
114
120
  forwardable-extended (2.6.0)
115
121
  hashdiff (1.0.1)
116
122
  http_parser.rb (0.6.0)
117
- i18n (0.9.5)
123
+ i18n (1.8.10)
118
124
  concurrent-ruby (~> 1.0)
119
125
  iniparse (1.5.0)
120
- jekyll (3.8.7)
126
+ jekyll (4.2.0)
121
127
  addressable (~> 2.4)
122
128
  colorator (~> 1.0)
123
129
  em-websocket (~> 0.5)
124
- i18n (~> 0.7)
125
- jekyll-sass-converter (~> 1.0)
130
+ i18n (~> 1.0)
131
+ jekyll-sass-converter (~> 2.0)
126
132
  jekyll-watch (~> 2.0)
127
- kramdown (~> 1.14)
133
+ kramdown (~> 2.3)
134
+ kramdown-parser-gfm (~> 1.0)
128
135
  liquid (~> 4.0)
129
- mercenary (~> 0.3.3)
136
+ mercenary (~> 0.4.0)
130
137
  pathutil (~> 0.9)
131
- rouge (>= 1.7, < 4)
138
+ rouge (~> 3.0)
132
139
  safe_yaml (~> 1.0)
140
+ terminal-table (~> 2.0)
133
141
  jekyll-menus (0.6.1)
134
142
  jekyll (>= 3.6, < 5.0)
135
143
  jekyll-paginate (1.1.0)
136
- jekyll-paginate-v2 (1.9.4)
137
- jekyll (~> 3.0)
138
- jekyll-sass-converter (1.5.2)
139
- sass (~> 3.4)
144
+ jekyll-paginate-v2 (3.0.0)
145
+ jekyll (>= 3.0, < 5.0)
146
+ jekyll-sass-converter (2.1.0)
147
+ sassc (> 2.0.1, < 3.0)
140
148
  jekyll-watch (2.2.1)
141
149
  listen (~> 3.0)
142
- kramdown (1.17.0)
150
+ kramdown (2.3.1)
151
+ rexml
152
+ kramdown-parser-gfm (1.1.0)
153
+ kramdown (~> 2.0)
143
154
  liquid (4.0.3)
144
- listen (3.5.1)
155
+ listen (3.6.0)
145
156
  rb-fsevent (~> 0.10, >= 0.10.3)
146
157
  rb-inotify (~> 0.9, >= 0.9.10)
147
- mercenary (0.3.6)
158
+ mercenary (0.4.0)
148
159
  mime-types (3.3.1)
149
160
  mime-types-data (~> 3.2015)
150
- mime-types-data (3.2021.0225)
151
- mini_portile2 (2.5.3)
161
+ mime-types-data (3.2021.0704)
162
+ mini_portile2 (2.6.1)
152
163
  minitest (5.14.4)
153
164
  multi_json (1.15.0)
154
165
  multipart-post (2.1.1)
155
- nokogiri (1.11.7)
156
- mini_portile2 (~> 2.5.0)
166
+ nokogiri (1.12.3)
167
+ mini_portile2 (~> 2.6.1)
157
168
  racc (~> 1.4)
158
169
  openssl (2.2.0)
159
170
  overcommit (0.57.0)
160
171
  childprocess (>= 0.6.3, < 5)
161
172
  iniparse (~> 1.4)
162
173
  parallel (1.20.1)
163
- parser (3.0.1.0)
174
+ parser (3.0.2.0)
164
175
  ast (~> 2.4.1)
165
176
  pathutil (0.16.2)
166
177
  forwardable-extended (~> 2.6)
@@ -170,8 +181,8 @@ GEM
170
181
  racc (1.5.2)
171
182
  rack (2.2.3)
172
183
  rainbow (3.0.0)
173
- rake (13.0.3)
174
- rb-fsevent (0.10.4)
184
+ rake (13.0.6)
185
+ rb-fsevent (0.11.0)
175
186
  rb-inotify (0.10.1)
176
187
  ffi (~> 1.0)
177
188
  regexp_parser (2.1.1)
@@ -202,35 +213,33 @@ GEM
202
213
  rubocop-ast (>= 0.6.0)
203
214
  ruby-progressbar (~> 1.7)
204
215
  unicode-display_width (>= 1.4.0, < 2.0)
205
- rubocop-ast (1.4.1)
206
- parser (>= 2.7.1.5)
216
+ rubocop-ast (1.10.0)
217
+ parser (>= 3.0.1.1)
207
218
  ruby-progressbar (1.11.0)
208
- ruby2_keywords (0.0.4)
219
+ ruby2_keywords (0.0.5)
209
220
  safe_yaml (1.0.5)
210
- sass (3.7.4)
211
- sass-listen (~> 4.0.0)
212
- sass-listen (4.0.0)
213
- rb-fsevent (~> 0.9, >= 0.9.4)
214
- rb-inotify (~> 0.9, >= 0.9.7)
221
+ sassc (2.4.0)
222
+ ffi (~> 1.9)
215
223
  simplecov (0.21.2)
216
224
  docile (~> 1.1)
217
225
  simplecov-html (~> 0.11)
218
226
  simplecov_json_formatter (~> 0.1)
219
227
  simplecov-html (0.12.3)
220
228
  simplecov-lcov (0.8.0)
221
- simplecov_json_formatter (0.1.2)
229
+ simplecov_json_formatter (0.1.3)
222
230
  simply_serializable (1.5.1)
223
231
  fingerprintable (>= 1.2.1)
224
232
  term-ansicolor (1.2.2)
225
233
  tins (~> 0.8)
234
+ terminal-table (2.0.0)
235
+ unicode-display_width (~> 1.1, >= 1.1.1)
226
236
  thor (0.18.1)
227
- thread_safe (0.3.6)
228
237
  tins (0.13.2)
229
- tzinfo (1.2.9)
230
- thread_safe (~> 0.1)
238
+ tzinfo (2.0.4)
239
+ concurrent-ruby (~> 1.0)
231
240
  unicode-display_width (1.7.0)
232
- webmock (3.12.2)
233
- addressable (>= 2.3.6)
241
+ webmock (3.14.0)
242
+ addressable (>= 2.8.0)
234
243
  crack (>= 0.3.2)
235
244
  hashdiff (>= 0.4.0, < 2.0.0)
236
245
  zeitwerk (2.4.2)
@@ -247,10 +256,10 @@ DEPENDENCIES
247
256
  coveralls
248
257
  dotenv
249
258
  factory_bot (~> 6.1.0)
250
- jekyll (~> 3.8.4)
251
- jekyll-menus (~> 0.6.0)
259
+ jekyll (~> 4.2.0)
260
+ jekyll-menus (~> 0.6.1)
252
261
  jekyll-paginate (~> 1.1)
253
- jekyll-paginate-v2 (~> 1.9)
262
+ jekyll-paginate-v2 (~> 3.0)
254
263
  ledger_sync!
255
264
  overcommit (~> 0.57.0)
256
265
  rake (~> 13.0)
@@ -261,4 +270,4 @@ DEPENDENCIES
261
270
  webmock
262
271
 
263
272
  BUNDLED WITH
264
- 2.1.4
273
+ 2.2.3
data/ledger_sync.gemspec CHANGED
@@ -38,10 +38,10 @@ Gem::Specification.new do |spec|
38
38
  spec.add_development_dependency('coveralls')
39
39
  spec.add_development_dependency('dotenv')
40
40
  spec.add_development_dependency('factory_bot', '~> 6.1.0')
41
- spec.add_development_dependency('jekyll', '~> 3.8.4')
42
- spec.add_development_dependency('jekyll-menus', '~> 0.6.0')
41
+ spec.add_development_dependency('jekyll', '~> 4.2.0')
42
+ spec.add_development_dependency('jekyll-menus', '~> 0.6.1')
43
43
  spec.add_development_dependency('jekyll-paginate', '~> 1.1')
44
- spec.add_development_dependency('jekyll-paginate-v2', '~> 1.9')
44
+ spec.add_development_dependency('jekyll-paginate-v2', '~> 3.0')
45
45
  spec.add_development_dependency('overcommit', '~> 0.57.0')
46
46
  spec.add_development_dependency('rake', '~> 13.0')
47
47
  spec.add_development_dependency('rspec', '~> 3.2')
@@ -58,9 +58,11 @@ module LedgerSync
58
58
  attr_reader :resource
59
59
 
60
60
  def initialize(*args, resource:, **keywords)
61
+ @resource = resource
62
+
61
63
  super(
62
64
  *args,
63
- {
65
+ **{
64
66
  message: "Unknown URL format for #{resource.class}"
65
67
  }.merge(keywords)
66
68
  )
@@ -56,8 +56,8 @@ module LedgerSync
56
56
  )
57
57
  end
58
58
 
59
- def searcher_class_for(*args)
60
- self.class.searcher_class_for(*args)
59
+ def searcher_class_for(*args, **keywords)
60
+ self.class.searcher_class_for(*args, **keywords)
61
61
  end
62
62
 
63
63
  def url_for(*_args)
@@ -93,8 +93,8 @@ module LedgerSync
93
93
  {}
94
94
  end
95
95
 
96
- def operation_class_for(*args)
97
- Client.operation_class_for(*args)
96
+ def operation_class_for(*args, **keywords)
97
+ Client.operation_class_for(*args, **keywords)
98
98
  end
99
99
 
100
100
  def resource_from_ledger_type(type:, converter: nil)
@@ -57,7 +57,7 @@ module LedgerSync
57
57
  # Initialize empty values
58
58
  resource_attributes.each_key { |e| instance_variable_set("@#{e}", nil) }
59
59
 
60
- assign_attributes(data)
60
+ assign_attributes(**data)
61
61
 
62
62
  super()
63
63
  end
@@ -3,12 +3,12 @@
3
3
  module LedgerSync
4
4
  module ResultBase
5
5
  module HelperMethods
6
- def Success(value = nil, *args) # rubocop:disable Naming/MethodName
7
- self::Success.new(value, *args)
6
+ def Success(value = nil, *args, **keywords) # rubocop:disable Naming/MethodName
7
+ self::Success.new(value, *args, **keywords)
8
8
  end
9
9
 
10
- def Failure(error = nil, *args) # rubocop:disable Naming/MethodName
11
- self::Failure.new(error, *args)
10
+ def Failure(error = nil, *args, **keywords) # rubocop:disable Naming/MethodName
11
+ self::Failure.new(error, *args, **keywords)
12
12
  end
13
13
  end
14
14
 
@@ -24,6 +24,12 @@ module LedgerSync
24
24
  end
25
25
 
26
26
  class Result
27
+ module ResultTypeBase
28
+ def initialize(*args, **keywords) # rubocop:disable Lint/UnusedMethodArgument
29
+ super(*args)
30
+ end
31
+ end
32
+
27
33
  include ResultBase
28
34
  end
29
35
 
@@ -37,10 +43,10 @@ module LedgerSync
37
43
  end
38
44
  end
39
45
 
40
- def initialize(*args, operation:, resource:, response:)
41
- @operation = operation
42
- @resource = resource
43
- @response = response
46
+ def initialize(*args, **keywords)
47
+ @operation = keywords.fetch(:operation)
48
+ @resource = keywords.fetch(:resource)
49
+ @response = keywords.fetch(:response)
44
50
  super(*args)
45
51
  end
46
52
  end
@@ -63,10 +69,10 @@ module LedgerSync
63
69
  end
64
70
  end
65
71
 
66
- def initialize(*args, searcher:, **keywords)
72
+ def initialize(*args, searcher:, **keywords) # rubocop:disable Lint/UnusedMethodArgument
67
73
  @resources = searcher.resources
68
74
  @searcher = searcher
69
- super(*args, **keywords)
75
+ super(*args)
70
76
  end
71
77
 
72
78
  def next_searcher
@@ -99,7 +105,7 @@ module LedgerSync
99
105
  end
100
106
  end
101
107
 
102
- def initialize(validator:)
108
+ def initialize(validator, **keywords) # rubocop:disable Lint/UnusedMethodArgument
103
109
  raise 'The argument must be a validator' unless validator.is_a?(Util::Validator)
104
110
 
105
111
  @validator = validator
@@ -84,7 +84,7 @@ end
84
84
 
85
85
  FactoryBot.define do
86
86
  skip_create
87
- initialize_with { new(attributes) } # Allows initializing read-only attrs
87
+ initialize_with { new(**attributes) } # Allows initializing read-only attrs
88
88
  end
89
89
 
90
90
  module FactoryBot
@@ -32,7 +32,8 @@ module LedgerSync
32
32
  :reference_many
33
33
  end
34
34
 
35
- def valid?(value:)
35
+ def valid?(args = {})
36
+ value = args.fetch(:value)
36
37
  return false unless value.is_a?(Array)
37
38
  return true if (resource_classes & value.map(&:class)).any?
38
39
  return true if value.is_a?(Array) && value.empty?
@@ -40,11 +40,11 @@ module LedgerSync
40
40
  end
41
41
 
42
42
  def failure
43
- ValidationResult.Failure(validator: self)
43
+ ValidationResult.Failure(self)
44
44
  end
45
45
 
46
46
  def success
47
- ValidationResult.Success(validator: self)
47
+ ValidationResult.Success(self)
48
48
  end
49
49
  end
50
50
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  # :nocov:
4
4
  module LedgerSync
5
- VERSION = '2.0.2'
5
+ VERSION = '2.2.0'
6
6
 
7
7
  def self.version
8
8
  if ENV['PRE_RELEASE']
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ledger_sync
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Jackson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
11
  date: 2019-05-21 00:00:00.000000000 Z
@@ -128,28 +128,28 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 3.8.4
131
+ version: 4.2.0
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: 3.8.4
138
+ version: 4.2.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: jekyll-menus
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 0.6.0
145
+ version: 0.6.1
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.6.0
152
+ version: 0.6.1
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: jekyll-paginate
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: '1.9'
173
+ version: '3.0'
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: '1.9'
180
+ version: '3.0'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: overcommit
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -833,7 +833,7 @@ homepage: https://github.com/LedgerSync/ledger_sync
833
833
  licenses:
834
834
  - MIT
835
835
  metadata: {}
836
- post_install_message:
836
+ post_install_message:
837
837
  rdoc_options: []
838
838
  require_paths:
839
839
  - lib
@@ -848,8 +848,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
848
848
  - !ruby/object:Gem::Version
849
849
  version: '0'
850
850
  requirements: []
851
- rubygems_version: 3.1.6
852
- signing_key:
851
+ rubyforge_project:
852
+ rubygems_version: 2.7.6.2
853
+ signing_key:
853
854
  specification_version: 4
854
855
  summary: Sync common objects to accounting software.
855
856
  test_files: []