folio_client 1.1.0 → 1.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
  SHA256:
3
- metadata.gz: 38e080519e200ca466c29ce2aff8f3e1d9940a7d6f4ea0b5eb559e6a75b4b44c
4
- data.tar.gz: a92ff5b5fa997ab8515cab2669914c4c283e323db39bb3c2ae2c3c1ee7a6aac4
3
+ metadata.gz: e374f053307ee51d65ddfb9ee59796f1544686be6921ee52dbc08a21d570c5f1
4
+ data.tar.gz: 36fe9cb668791aff197898b78ddf51da0cec7924b5933c33a35a752b8873951b
5
5
  SHA512:
6
- metadata.gz: 27b02c487f0179288265f738c2ba674b7670e0f1a0859152ffff5a934b10a1bfdf6a1152b235126ce6e60a71584b333d5b19c8f792fc3aa3015bdbb1d810551e
7
- data.tar.gz: 43b31dccad99d032255cd3376d281e558674baf69f6bb486cc118a621f0453dba652f969e610c931a7ddb0903ce6578c8bf455d37842aceafd91a4659fe1ea69
6
+ metadata.gz: a45652bb503b98551e65a306512e24410a629056a2f41a9239e3e75c7ef88f4f565e3045e7007d96639e110e0d0a171dbf2a6ca0c311b2ecb0fafb511e3e3568
7
+ data.tar.gz: cf5cdfd3864e239674dee3654b714d2a7e1b3c2b56b7d7664ec08ae72b92b753f1813228634c80eb0d4330cd32b30dcb01de2a8428f7191f21d0943a4398b4d2
data/.rubocop.yml CHANGED
@@ -55,15 +55,15 @@ RSpecRails/HaveHttpStatus: # new in 2.12
55
55
  Enabled: true
56
56
  RSpecRails/InferredSpecType: # new in 2.14
57
57
  Enabled: true
58
- Capybara/MatchStyle: # new in 2.17
58
+ Capybara/RSpec/MatchStyle: # new in 2.17
59
59
  Enabled: true
60
- Capybara/NegationMatcher: # new in 2.14
60
+ Capybara/RSpec/NegationMatcher: # new in 2.14
61
61
  Enabled: true
62
62
  Capybara/SpecificActions: # new in 2.14
63
63
  Enabled: true
64
64
  Capybara/SpecificFinders: # new in 2.13
65
65
  Enabled: true
66
- Capybara/SpecificMatcher: # new in 2.12
66
+ Capybara/RSpec/SpecificMatcher: # new in 2.12
67
67
  Enabled: true
68
68
  RSpec/DuplicatedMetadata: # new in 2.16
69
69
  Enabled: true
@@ -294,8 +294,6 @@ Style/SwapValues: # new in 1.1
294
294
  Enabled: true
295
295
  Style/YAMLFileRead: # new in 1.53
296
296
  Enabled: true
297
- Capybara/ClickLinkOrButtonStyle: # new in 2.19
298
- Enabled: true
299
297
  Capybara/RedundantWithinFind: # new in 2.20
300
298
  Enabled: true
301
299
  Capybara/RSpec/HaveSelector: # new in 2.19
@@ -443,7 +441,7 @@ RSpec/IncludeExamples: # new in 3.6
443
441
  Enabled: true
444
442
  Capybara/FindAllFirst: # new in 2.22
445
443
  Enabled: true
446
- Capybara/NegationMatcherAfterVisit: # new in 2.22
444
+ Capybara/RSpec/NegationMatcherAfterVisit: # new in 2.22
447
445
  Enabled: true
448
446
  Gemspec/AttributeAssignment: # new in 1.77
449
447
  Enabled: true
@@ -493,3 +491,6 @@ Style/SelectByRange: # new in 1.85
493
491
  Enabled: true
494
492
  Style/TallyMethod: # new in 1.85
495
493
  Enabled: true
494
+ Capybara/AmbiguousClick: # new in 2.21
495
+ Enabled: true
496
+
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- folio_client (1.1.0)
4
+ folio_client (1.2.0)
5
5
  activesupport (>= 4.2)
6
6
  deprecation
7
7
  dry-monads
@@ -31,13 +31,12 @@ GEM
31
31
  public_suffix (>= 2.0.2, < 8.0)
32
32
  ast (2.4.3)
33
33
  base64 (0.3.0)
34
- bigdecimal (4.1.1)
35
- concurrent-ruby (1.3.6)
34
+ bigdecimal (4.1.2)
35
+ concurrent-ruby (1.3.7)
36
36
  connection_pool (3.0.2)
37
37
  crack (1.0.1)
38
38
  bigdecimal
39
39
  rexml
40
- date (3.5.1)
41
40
  debug (1.11.1)
42
41
  irb (~> 1.10)
43
42
  reline (>= 0.3.8)
@@ -51,66 +50,68 @@ GEM
51
50
  concurrent-ruby (~> 1.0)
52
51
  logger
53
52
  zeitwerk (~> 2.6)
54
- dry-monads (1.9.0)
53
+ dry-monads (1.10.0)
55
54
  concurrent-ruby (~> 1.0)
56
55
  dry-core (~> 1.1)
57
56
  zeitwerk (~> 2.6)
58
- erb (6.0.2)
59
- faraday (2.14.1)
57
+ erb (6.0.4)
58
+ faraday (2.14.3)
60
59
  faraday-net_http (>= 2.0, < 3.5)
61
60
  json
62
61
  logger
63
62
  faraday-cookie_jar (0.0.8)
64
63
  faraday (>= 0.8.0)
65
64
  http-cookie (>= 1.0.0)
66
- faraday-net_http (3.4.2)
65
+ faraday-net_http (3.4.4)
67
66
  net-http (~> 0.5)
68
67
  hashdiff (1.2.1)
69
- http-cookie (1.1.4)
68
+ http-cookie (1.1.6)
70
69
  domain_name (~> 0.5)
71
- i18n (1.14.8)
70
+ i18n (1.15.2)
72
71
  concurrent-ruby (~> 1.0)
73
72
  io-console (0.8.2)
74
- irb (1.17.0)
73
+ irb (1.18.0)
75
74
  pp (>= 0.6.0)
76
75
  prism (>= 1.3.0)
77
76
  rdoc (>= 4.0.0)
78
77
  reline (>= 0.4.2)
79
- json (2.19.3)
78
+ json (2.20.0)
80
79
  language_server-protocol (3.17.0.5)
81
80
  lint_roller (1.1.0)
82
81
  logger (1.7.0)
83
82
  marc (1.4.0)
84
83
  nokogiri (~> 1.0)
85
84
  rexml
86
- minitest (6.0.3)
85
+ minitest (6.0.6)
87
86
  drb (~> 2.0)
88
87
  prism (~> 1.5)
89
88
  net-http (0.9.1)
90
89
  uri (>= 0.11.1)
91
- nokogiri (1.19.2-arm64-darwin)
90
+ nokogiri (1.19.4-arm64-darwin)
92
91
  racc (~> 1.4)
93
- nokogiri (1.19.2-x86_64-linux-gnu)
92
+ nokogiri (1.19.4-x86_64-linux-gnu)
94
93
  racc (~> 1.4)
95
94
  ostruct (0.6.3)
96
- parallel (2.0.1)
95
+ parallel (2.1.0)
97
96
  parser (3.3.11.1)
98
97
  ast (~> 2.4.1)
99
98
  racc
100
- pp (0.6.3)
99
+ pp (0.6.4)
101
100
  prettyprint
102
101
  prettyprint (0.2.0)
103
102
  prism (1.9.0)
104
- psych (5.3.1)
105
- date
106
- stringio
107
103
  public_suffix (7.0.5)
108
104
  racc (1.8.1)
109
105
  rainbow (3.1.1)
110
- rake (13.3.1)
111
- rdoc (7.2.0)
106
+ rake (13.4.2)
107
+ rbs (4.0.3)
108
+ logger
109
+ prism (>= 1.6.0)
110
+ tsort
111
+ rdoc (8.0.0)
112
112
  erb
113
- psych (>= 4.0.0)
113
+ prism (>= 1.6.0)
114
+ rbs (>= 4.0.0)
114
115
  tsort
115
116
  regexp_parser (2.12.0)
116
117
  reline (0.6.3)
@@ -129,7 +130,7 @@ GEM
129
130
  diff-lcs (>= 1.2.0, < 2.0)
130
131
  rspec-support (~> 3.13.0)
131
132
  rspec-support (3.13.7)
132
- rubocop (1.86.1)
133
+ rubocop (1.88.0)
133
134
  json (~> 2.3)
134
135
  language_server-protocol (~> 3.17.0.2)
135
136
  lint_roller (~> 1.1.0)
@@ -143,9 +144,9 @@ GEM
143
144
  rubocop-ast (1.49.1)
144
145
  parser (>= 3.3.7.2)
145
146
  prism (~> 1.7)
146
- rubocop-capybara (2.22.1)
147
+ rubocop-capybara (3.0.0)
147
148
  lint_roller (~> 1.1)
148
- rubocop (~> 1.72, >= 1.72.1)
149
+ rubocop (~> 1.81)
149
150
  rubocop-factory_bot (2.28.0)
150
151
  lint_roller (~> 1.1)
151
152
  rubocop (~> 1.72, >= 1.72.1)
@@ -153,9 +154,10 @@ GEM
153
154
  lint_roller (~> 1.1)
154
155
  rubocop (>= 1.75.0, < 2.0)
155
156
  rubocop-ast (>= 1.47.1, < 2.0)
156
- rubocop-rspec (3.9.0)
157
+ rubocop-rspec (3.10.2)
157
158
  lint_roller (~> 1.1)
158
- rubocop (~> 1.81)
159
+ regexp_parser (>= 2.0)
160
+ rubocop (~> 1.86, >= 1.86.2)
159
161
  rubocop-rspec_rails (2.32.0)
160
162
  lint_roller (~> 1.1)
161
163
  rubocop (~> 1.72, >= 1.72.1)
@@ -168,7 +170,6 @@ GEM
168
170
  simplecov_json_formatter (~> 0.1)
169
171
  simplecov-html (0.13.2)
170
172
  simplecov_json_formatter (0.1.4)
171
- stringio (3.2.0)
172
173
  tsort (0.2.0)
173
174
  tzinfo (2.0.6)
174
175
  concurrent-ruby (~> 1.0)
@@ -180,7 +181,7 @@ GEM
180
181
  addressable (>= 2.8.0)
181
182
  crack (>= 0.3.2)
182
183
  hashdiff (>= 0.4.0, < 2.0.0)
183
- zeitwerk (2.7.5)
184
+ zeitwerk (2.8.2)
184
185
 
185
186
  PLATFORMS
186
187
  arm64-darwin-23
@@ -203,4 +204,4 @@ DEPENDENCIES
203
204
  webmock
204
205
 
205
206
  BUNDLED WITH
206
- 4.0.10
207
+ 4.0.15
@@ -30,9 +30,11 @@ class FolioClient
30
30
  record_json['relatedRecordVersion'] = version
31
31
  record_json['_actionType'] = 'edit'
32
32
 
33
+ original_record_json = record_json.deep_dup
34
+
33
35
  yield record_json
34
36
 
35
- client.put("/records-editor/records/#{parsed_record_id}", record_json)
37
+ client.put("/records-editor/records/#{parsed_record_id}", record_json) unless record_json == original_record_json
36
38
  end
37
39
 
38
40
  private
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class FolioClient
4
- VERSION = '1.1.0'
4
+ VERSION = '1.2.0'
5
5
  end
data/lib/folio_client.rb CHANGED
@@ -3,6 +3,7 @@
3
3
  require 'http/cookie' # Workaround for https://github.com/sparklemotion/http-cookie/issues/62
4
4
  require 'active_support/core_ext/module/delegation'
5
5
  require 'active_support/core_ext/object/blank'
6
+ require 'active_support/core_ext/object/deep_dup'
6
7
  require 'deprecation'
7
8
  require 'faraday'
8
9
  require 'faraday-cookie_jar'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: folio_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Mangiafico
@@ -309,7 +309,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
309
309
  - !ruby/object:Gem::Version
310
310
  version: '0'
311
311
  requirements: []
312
- rubygems_version: 4.0.8
312
+ rubygems_version: 4.0.6
313
313
  specification_version: 4
314
314
  summary: Interface for interacting with the Folio ILS API.
315
315
  test_files: []