active-fedora 12.2.3 → 12.2.4

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: 28cd0068c4a25635baa09d34627ae1d91950a1a2a3a9afa0f5dd1f301f3f6d1d
4
- data.tar.gz: 99c7119d7fbc4c48de5c5feeff9d5be80f900a870652b29505c4a81da52a9139
3
+ metadata.gz: d1a57319331ca1e0be39acbb5b59e6e2c5e9c3ccbd55dad26455cd6e0bb63b54
4
+ data.tar.gz: 7e77d61dfb2cea447e9f60ecf5c9a61d0c7b4011a1b46139e0a71914cda5edd9
5
5
  SHA512:
6
- metadata.gz: 7c78a7bca25217d723d12a665831d1e27344e6cd2748befb268e57c92c2e4c038269264a0e5a024baa200e901441f67fef2cca0c81afde4426b1832bc4a260a2
7
- data.tar.gz: 05a4dbb9d8ed4a65e19e214be481c8bcc6ff0912593cc01bcb2fbbfcd72afe9004c0f452d424c9fdb31991192550e89bbcbbf86ab9c48c40e67e65f8f7eb7a47
6
+ metadata.gz: 92b28ccf174ca95f2d8cdf0b6d17c594f3e9717cba879babcf53fae1b9871d7bded7f40c15dbd69267480c9e15a85bb3a77d919aa9e48bbf556b9584861aefa1
7
+ data.tar.gz: 431456f315b9602012acc2fae788aa4c2b15f1f7e1e6ff8cc2b35609fdaeeb947eaef3b4a06a2d0930539225e831c6f437958c88bc132e4b5021c8c2ac985c9f
@@ -25,18 +25,20 @@ Gem::Specification.new do |s|
25
25
  s.add_dependency 'faraday', '~> 0.12'
26
26
  s.add_dependency 'faraday-encoding', '0.0.4'
27
27
 
28
- s.add_development_dependency "rails"
28
+ s.add_development_dependency "equivalent-xml"
29
+ s.add_development_dependency 'fcrepo_wrapper', '~> 0.2'
30
+ s.add_development_dependency "github_changelog_generator"
29
31
  s.add_development_dependency "rdoc"
30
- s.add_development_dependency "yard"
32
+ s.add_development_dependency "psych", "< 4" # Restricted because 4.0+ do not work with rubocop 0.56.x
33
+ s.add_development_dependency "rails"
31
34
  s.add_development_dependency "rake"
32
- s.add_development_dependency "solr_wrapper", "~> 2.0"
33
- s.add_development_dependency 'fcrepo_wrapper', '~> 0.2'
34
35
  s.add_development_dependency "rspec", "~> 3.5"
35
36
  s.add_development_dependency "rspec-its"
36
- s.add_development_dependency "equivalent-xml"
37
- s.add_development_dependency "simplecov", '~> 0.8'
38
37
  s.add_development_dependency "rubocop", '~> 0.56.0'
39
38
  s.add_development_dependency "rubocop-rspec", '~> 1.12.0'
39
+ s.add_development_dependency "simplecov", '~> 0.8'
40
+ s.add_development_dependency "solr_wrapper", "~> 2.0"
41
+ s.add_development_dependency "yard"
40
42
 
41
43
  s.files = `git ls-files`.split("\n")
42
44
  s.test_files = `git ls-files -- {spec}/*`.split("\n")
@@ -2,7 +2,7 @@ module ActiveFedora::Core
2
2
  class FedoraIdTranslator
3
3
  SLASH = '/'.freeze
4
4
  def self.call(id)
5
- id = URI.escape(id, '[]'.freeze)
5
+ id = URI::DEFAULT_PARSER.escape(id, '[]'.freeze)
6
6
  id = "/#{id}" unless id.start_with? SLASH
7
7
  unless ActiveFedora.fedora.base_path == SLASH || id.start_with?("#{ActiveFedora.fedora.base_path}/")
8
8
  id = ActiveFedora.fedora.base_path + id
@@ -179,7 +179,7 @@ module ActiveFedora
179
179
 
180
180
  def ldp_headers
181
181
  headers = { 'Content-Type'.freeze => mime_type, 'Content-Length'.freeze => content.size.to_s }
182
- headers['Content-Disposition'.freeze] = "attachment; filename=\"#{URI.encode(@original_name)}\"" if @original_name
182
+ headers['Content-Disposition'.freeze] = "attachment; filename=\"#{URI::DEFAULT_PARSER.escape(@original_name)}\"" if @original_name
183
183
  headers
184
184
  end
185
185
 
@@ -1,3 +1,3 @@
1
1
  module ActiveFedora
2
- VERSION = '12.2.3'.freeze
2
+ VERSION = '12.2.4'.freeze
3
3
  end
data/lib/active_fedora.rb CHANGED
@@ -11,9 +11,11 @@ require 'active_triples'
11
11
  # Monkey patching RDF::Literal::DateTime to support fractional seconds.
12
12
  # See https://github.com/samvera/active_fedora/issues/497
13
13
  # Also monkey patches in a fix for timezones to be stored properly.
14
+ # This is needed in both RDF <= 3.2.4 and RDF >= 3.2.5
15
+ # TODO: Figure out how to contribute something upstream to avoid monkey-patching
14
16
  module RDF
15
17
  class Literal
16
- class DateTime < Literal
18
+ class DateTime
17
19
  ALTERNATIVE_FORMAT = '%Y-%m-%dT%H:%M:%S'.freeze
18
20
  DOT = '.'.freeze
19
21
  EMPTY = ''.freeze
@@ -33,9 +33,33 @@ describe ActiveFedora::Base do
33
33
 
34
34
  describe 'serializing' do
35
35
  let(:object) { Foo.new(date: [date]) }
36
- let(:triple) { object.resource.query(predicate: ::RDF::Vocab::DC.date).to_a.first }
36
+ let(:triple) { object.resource.query(predicate: ::RDF::Vocab::DC.date).to_a.first.object }
37
37
  it 'time zone must have semicolin to be a cannonical XMLSchema#dateTime' do
38
38
  expect(triple.to_s).to match(/\+01:00/)
39
39
  end
40
+
41
+ context 'nanoseconds' do
42
+ let(:date) { DateTime.parse("2015-10-22T10:20:03.653991025+01:00") }
43
+
44
+ it 'includes nanosecond precision' do
45
+ expect(triple.to_s).to eq "2015-10-22T10:20:03.653991025+01:00"
46
+ end
47
+
48
+ context 'with trailing zeros' do
49
+ let(:date) { DateTime.parse("2015-10-22T15:34:20.97800000-11:00") }
50
+
51
+ it 'trims trailing zeros' do
52
+ expect(triple.to_s).to eq "2015-10-22T15:34:20.978-11:00"
53
+ end
54
+
55
+ context 'and only zero nanoseconds' do
56
+ let(:date) { DateTime.parse("2015-10-22T15:34:20.000000000-11:00") }
57
+
58
+ it 'trims trailing zeros and dot if nanoseconds are all 0' do
59
+ expect(triple.to_s).to eq "2015-10-22T15:34:20-11:00"
60
+ end
61
+ end
62
+ end
63
+ end
40
64
  end
41
65
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active-fedora
3
3
  version: !ruby/object:Gem::Version
4
- version: 12.2.3
4
+ version: 12.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Zumwalt
8
8
  - McClain Looney
9
9
  - Justin Coyne
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-03-25 00:00:00.000000000 Z
13
+ date: 2022-03-07 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rsolr
@@ -183,7 +183,7 @@ dependencies:
183
183
  - !ruby/object:Gem::Version
184
184
  version: 0.0.4
185
185
  - !ruby/object:Gem::Dependency
186
- name: rails
186
+ name: equivalent-xml
187
187
  requirement: !ruby/object:Gem::Requirement
188
188
  requirements:
189
189
  - - ">="
@@ -197,21 +197,21 @@ dependencies:
197
197
  - !ruby/object:Gem::Version
198
198
  version: '0'
199
199
  - !ruby/object:Gem::Dependency
200
- name: rdoc
200
+ name: fcrepo_wrapper
201
201
  requirement: !ruby/object:Gem::Requirement
202
202
  requirements:
203
- - - ">="
203
+ - - "~>"
204
204
  - !ruby/object:Gem::Version
205
- version: '0'
205
+ version: '0.2'
206
206
  type: :development
207
207
  prerelease: false
208
208
  version_requirements: !ruby/object:Gem::Requirement
209
209
  requirements:
210
- - - ">="
210
+ - - "~>"
211
211
  - !ruby/object:Gem::Version
212
- version: '0'
212
+ version: '0.2'
213
213
  - !ruby/object:Gem::Dependency
214
- name: yard
214
+ name: github_changelog_generator
215
215
  requirement: !ruby/object:Gem::Requirement
216
216
  requirements:
217
217
  - - ">="
@@ -225,7 +225,7 @@ dependencies:
225
225
  - !ruby/object:Gem::Version
226
226
  version: '0'
227
227
  - !ruby/object:Gem::Dependency
228
- name: rake
228
+ name: rdoc
229
229
  requirement: !ruby/object:Gem::Requirement
230
230
  requirements:
231
231
  - - ">="
@@ -239,33 +239,47 @@ dependencies:
239
239
  - !ruby/object:Gem::Version
240
240
  version: '0'
241
241
  - !ruby/object:Gem::Dependency
242
- name: solr_wrapper
242
+ name: psych
243
243
  requirement: !ruby/object:Gem::Requirement
244
244
  requirements:
245
- - - "~>"
245
+ - - "<"
246
246
  - !ruby/object:Gem::Version
247
- version: '2.0'
247
+ version: '4'
248
248
  type: :development
249
249
  prerelease: false
250
250
  version_requirements: !ruby/object:Gem::Requirement
251
251
  requirements:
252
- - - "~>"
252
+ - - "<"
253
253
  - !ruby/object:Gem::Version
254
- version: '2.0'
254
+ version: '4'
255
255
  - !ruby/object:Gem::Dependency
256
- name: fcrepo_wrapper
256
+ name: rails
257
257
  requirement: !ruby/object:Gem::Requirement
258
258
  requirements:
259
- - - "~>"
259
+ - - ">="
260
260
  - !ruby/object:Gem::Version
261
- version: '0.2'
261
+ version: '0'
262
262
  type: :development
263
263
  prerelease: false
264
264
  version_requirements: !ruby/object:Gem::Requirement
265
265
  requirements:
266
- - - "~>"
266
+ - - ">="
267
267
  - !ruby/object:Gem::Version
268
- version: '0.2'
268
+ version: '0'
269
+ - !ruby/object:Gem::Dependency
270
+ name: rake
271
+ requirement: !ruby/object:Gem::Requirement
272
+ requirements:
273
+ - - ">="
274
+ - !ruby/object:Gem::Version
275
+ version: '0'
276
+ type: :development
277
+ prerelease: false
278
+ version_requirements: !ruby/object:Gem::Requirement
279
+ requirements:
280
+ - - ">="
281
+ - !ruby/object:Gem::Version
282
+ version: '0'
269
283
  - !ruby/object:Gem::Dependency
270
284
  name: rspec
271
285
  requirement: !ruby/object:Gem::Requirement
@@ -295,19 +309,33 @@ dependencies:
295
309
  - !ruby/object:Gem::Version
296
310
  version: '0'
297
311
  - !ruby/object:Gem::Dependency
298
- name: equivalent-xml
312
+ name: rubocop
299
313
  requirement: !ruby/object:Gem::Requirement
300
314
  requirements:
301
- - - ">="
315
+ - - "~>"
302
316
  - !ruby/object:Gem::Version
303
- version: '0'
317
+ version: 0.56.0
304
318
  type: :development
305
319
  prerelease: false
306
320
  version_requirements: !ruby/object:Gem::Requirement
307
321
  requirements:
308
- - - ">="
322
+ - - "~>"
309
323
  - !ruby/object:Gem::Version
310
- version: '0'
324
+ version: 0.56.0
325
+ - !ruby/object:Gem::Dependency
326
+ name: rubocop-rspec
327
+ requirement: !ruby/object:Gem::Requirement
328
+ requirements:
329
+ - - "~>"
330
+ - !ruby/object:Gem::Version
331
+ version: 1.12.0
332
+ type: :development
333
+ prerelease: false
334
+ version_requirements: !ruby/object:Gem::Requirement
335
+ requirements:
336
+ - - "~>"
337
+ - !ruby/object:Gem::Version
338
+ version: 1.12.0
311
339
  - !ruby/object:Gem::Dependency
312
340
  name: simplecov
313
341
  requirement: !ruby/object:Gem::Requirement
@@ -323,33 +351,33 @@ dependencies:
323
351
  - !ruby/object:Gem::Version
324
352
  version: '0.8'
325
353
  - !ruby/object:Gem::Dependency
326
- name: rubocop
354
+ name: solr_wrapper
327
355
  requirement: !ruby/object:Gem::Requirement
328
356
  requirements:
329
357
  - - "~>"
330
358
  - !ruby/object:Gem::Version
331
- version: 0.56.0
359
+ version: '2.0'
332
360
  type: :development
333
361
  prerelease: false
334
362
  version_requirements: !ruby/object:Gem::Requirement
335
363
  requirements:
336
364
  - - "~>"
337
365
  - !ruby/object:Gem::Version
338
- version: 0.56.0
366
+ version: '2.0'
339
367
  - !ruby/object:Gem::Dependency
340
- name: rubocop-rspec
368
+ name: yard
341
369
  requirement: !ruby/object:Gem::Requirement
342
370
  requirements:
343
- - - "~>"
371
+ - - ">="
344
372
  - !ruby/object:Gem::Version
345
- version: 1.12.0
373
+ version: '0'
346
374
  type: :development
347
375
  prerelease: false
348
376
  version_requirements: !ruby/object:Gem::Requirement
349
377
  requirements:
350
- - - "~>"
378
+ - - ">="
351
379
  - !ruby/object:Gem::Version
352
- version: 1.12.0
380
+ version: '0'
353
381
  description: ActiveFedora provides for creating and managing objects in the Fedora
354
382
  Repository Architecture.
355
383
  email:
@@ -731,7 +759,7 @@ homepage: https://github.com/samvera/active_fedora
731
759
  licenses:
732
760
  - Apache-2.0
733
761
  metadata: {}
734
- post_install_message:
762
+ post_install_message:
735
763
  rdoc_options: []
736
764
  require_paths:
737
765
  - lib
@@ -746,8 +774,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
746
774
  - !ruby/object:Gem::Version
747
775
  version: '0'
748
776
  requirements: []
749
- rubygems_version: 3.1.4
750
- signing_key:
777
+ rubygems_version: 3.1.6
778
+ signing_key:
751
779
  specification_version: 4
752
780
  summary: A convenience libary for manipulating documents in the Fedora Repository.
753
781
  test_files: []