active-fedora 12.2.4 → 13.0.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: d1a57319331ca1e0be39acbb5b59e6e2c5e9c3ccbd55dad26455cd6e0bb63b54
4
- data.tar.gz: 7e77d61dfb2cea447e9f60ecf5c9a61d0c7b4011a1b46139e0a71914cda5edd9
3
+ metadata.gz: 61e9e73d569fd4d2c553d84d8edf1005cceb73912478bd45bd5b7ae451d28d63
4
+ data.tar.gz: 82d9d52da4b6cb81bb2ef1748542305dce3a6ffd5ed81fc2bae598cb6114a405
5
5
  SHA512:
6
- metadata.gz: 92b28ccf174ca95f2d8cdf0b6d17c594f3e9717cba879babcf53fae1b9871d7bded7f40c15dbd69267480c9e15a85bb3a77d919aa9e48bbf556b9584861aefa1
7
- data.tar.gz: 431456f315b9602012acc2fae788aa4c2b15f1f7e1e6ff8cc2b35609fdaeeb947eaef3b4a06a2d0930539225e831c6f437958c88bc132e4b5021c8c2ac985c9f
6
+ metadata.gz: 526c020760edeb2703961ad0a34e85ddfcd2de5535a753c15598afd45c503640c89527dc5ad239522d051d522e1072cbd10f8a054361bbee437f70378f317940
7
+ data.tar.gz: 9c6a6b796268853d5b594804dd5036e82d2cf085888f82eac0924108cdce8f152ddc5de85fae385f03590c5ee857345cf031df529684df1490eeae746869b71b
@@ -20,25 +20,22 @@ Gem::Specification.new do |s|
20
20
  s.add_dependency "active-triples", '>= 0.11.0', '< 2.0.0'
21
21
  s.add_dependency "deprecation"
22
22
  s.add_dependency "ldp", '>= 0.7.0', '< 2'
23
- s.add_dependency 'rdf-vocab', '< 3.1.5'
24
23
  s.add_dependency "ruby-progressbar", '~> 1.0'
25
24
  s.add_dependency 'faraday', '~> 0.12'
26
25
  s.add_dependency 'faraday-encoding', '0.0.4'
27
26
 
28
- s.add_development_dependency "equivalent-xml"
29
- s.add_development_dependency 'fcrepo_wrapper', '~> 0.2'
30
- s.add_development_dependency "github_changelog_generator"
31
- s.add_development_dependency "rdoc"
32
- s.add_development_dependency "psych", "< 4" # Restricted because 4.0+ do not work with rubocop 0.56.x
33
27
  s.add_development_dependency "rails"
28
+ s.add_development_dependency "rdoc"
29
+ s.add_development_dependency "yard"
34
30
  s.add_development_dependency "rake"
31
+ s.add_development_dependency "solr_wrapper", "~> 2.0"
32
+ s.add_development_dependency 'fcrepo_wrapper', '~> 0.2'
35
33
  s.add_development_dependency "rspec", "~> 3.5"
36
34
  s.add_development_dependency "rspec-its"
35
+ s.add_development_dependency "equivalent-xml"
36
+ s.add_development_dependency "simplecov", '~> 0.8'
37
37
  s.add_development_dependency "rubocop", '~> 0.56.0'
38
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"
42
39
 
43
40
  s.files = `git ls-files`.split("\n")
44
41
  s.test_files = `git ls-files -- {spec}/*`.split("\n")
@@ -61,16 +61,6 @@ module ActiveFedora
61
61
  ["ActiveFedora::Aggregation::ListSource"]
62
62
  end
63
63
 
64
- # Short circuit ActiveModel::Dirty which attempts to load the whole ordered list when calling nodes_will_change!
65
- # which leads to a stack level too deep exception in some cases
66
- # See https://github.com/samvera/hyrax/issues/4581
67
- # This approach was also taken in ActiveFedora::File:
68
- # See https://github.com/samvera/active_fedora/pull/1312/commits/7c8bbbefdacefd655a2ca653f5950c991e1dc999#diff-28356c4daa0d55cbaf97e4269869f510R100-R103
69
- def attribute_will_change!(attr)
70
- return super unless attr == 'nodes'
71
- attributes_changed_by_setter[:nodes] = true
72
- end
73
-
74
64
  private
75
65
 
76
66
  def persist_ordered_self
@@ -2,7 +2,7 @@ module ActiveFedora::Core
2
2
  class FedoraIdTranslator
3
3
  SLASH = '/'.freeze
4
4
  def self.call(id)
5
- id = URI::DEFAULT_PARSER.escape(id, '[]'.freeze)
5
+ id = URI.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::DEFAULT_PARSER.escape(@original_name)}\"" if @original_name
182
+ headers['Content-Disposition'.freeze] = "attachment; filename=\"#{URI.encode(@original_name)}\"" if @original_name
183
183
  headers
184
184
  end
185
185
 
@@ -196,7 +196,9 @@ module ActiveFedora
196
196
  end
197
197
 
198
198
  def local_or_remote_content(ensure_fetch = true)
199
- @content ||= ensure_fetch ? remote_content : @ds_content unless new_record?
199
+ return @content if new_record?
200
+
201
+ @content ||= ensure_fetch ? remote_content : @ds_content
200
202
  @content.rewind if behaves_like_io?(@content)
201
203
  @content
202
204
  end
@@ -1,3 +1,3 @@
1
1
  module ActiveFedora
2
- VERSION = '12.2.4'.freeze
2
+ VERSION = "13.0.0".freeze
3
3
  end
data/lib/active_fedora.rb CHANGED
@@ -11,11 +11,9 @@ 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
16
14
  module RDF
17
15
  class Literal
18
- class DateTime
16
+ class DateTime < Literal
19
17
  ALTERNATIVE_FORMAT = '%Y-%m-%dT%H:%M:%S'.freeze
20
18
  DOT = '.'.freeze
21
19
  EMPTY = ''.freeze
@@ -7,7 +7,7 @@ module ActiveFedora
7
7
  def generate
8
8
  # Overwrite the configuration files that Blacklight has installed
9
9
  copy_file 'solr.yml', 'config/solr.yml', force: true
10
- directory 'solr', 'solr'
10
+ directory 'solr', 'solr', force: true
11
11
  end
12
12
 
13
13
  def solr_wrapper_config
@@ -33,33 +33,9 @@ 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.object }
36
+ let(:triple) { object.resource.query(predicate: ::RDF::Vocab::DC.date).to_a.first }
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
64
40
  end
65
41
  end
@@ -192,23 +192,6 @@ describe ActiveFedora::File do
192
192
  end
193
193
  end
194
194
 
195
- context 'when file is new and content behaves like io' do
196
- let(:file_content) { "hello world" }
197
-
198
- before do
199
- af_file.uri = "http://localhost:8983/fedora/rest/test/1234/abcd"
200
- af_file.content = StringIO.new(file_content)
201
- allow(af_file).to receive(:new_record?).and_return(true)
202
- end
203
-
204
- describe "#content" do
205
- it 'can be re-read' do
206
- expect(af_file.content.read).to eq file_content
207
- expect(af_file.content.read).to eq file_content
208
- end
209
- end
210
- end
211
-
212
195
  describe "#mime_type" do
213
196
  let(:parent) { ActiveFedora::Base.create }
214
197
  before do
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.4
4
+ version: 13.0.0
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: 2022-03-07 00:00:00.000000000 Z
13
+ date: 2019-08-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rsolr
@@ -126,20 +126,6 @@ dependencies:
126
126
  - - "<"
127
127
  - !ruby/object:Gem::Version
128
128
  version: '2'
129
- - !ruby/object:Gem::Dependency
130
- name: rdf-vocab
131
- requirement: !ruby/object:Gem::Requirement
132
- requirements:
133
- - - "<"
134
- - !ruby/object:Gem::Version
135
- version: 3.1.5
136
- type: :runtime
137
- prerelease: false
138
- version_requirements: !ruby/object:Gem::Requirement
139
- requirements:
140
- - - "<"
141
- - !ruby/object:Gem::Version
142
- version: 3.1.5
143
129
  - !ruby/object:Gem::Dependency
144
130
  name: ruby-progressbar
145
131
  requirement: !ruby/object:Gem::Requirement
@@ -183,7 +169,7 @@ dependencies:
183
169
  - !ruby/object:Gem::Version
184
170
  version: 0.0.4
185
171
  - !ruby/object:Gem::Dependency
186
- name: equivalent-xml
172
+ name: rails
187
173
  requirement: !ruby/object:Gem::Requirement
188
174
  requirements:
189
175
  - - ">="
@@ -197,21 +183,7 @@ dependencies:
197
183
  - !ruby/object:Gem::Version
198
184
  version: '0'
199
185
  - !ruby/object:Gem::Dependency
200
- name: fcrepo_wrapper
201
- requirement: !ruby/object:Gem::Requirement
202
- requirements:
203
- - - "~>"
204
- - !ruby/object:Gem::Version
205
- version: '0.2'
206
- type: :development
207
- prerelease: false
208
- version_requirements: !ruby/object:Gem::Requirement
209
- requirements:
210
- - - "~>"
211
- - !ruby/object:Gem::Version
212
- version: '0.2'
213
- - !ruby/object:Gem::Dependency
214
- name: github_changelog_generator
186
+ name: rdoc
215
187
  requirement: !ruby/object:Gem::Requirement
216
188
  requirements:
217
189
  - - ">="
@@ -225,7 +197,7 @@ dependencies:
225
197
  - !ruby/object:Gem::Version
226
198
  version: '0'
227
199
  - !ruby/object:Gem::Dependency
228
- name: rdoc
200
+ name: yard
229
201
  requirement: !ruby/object:Gem::Requirement
230
202
  requirements:
231
203
  - - ">="
@@ -239,47 +211,47 @@ dependencies:
239
211
  - !ruby/object:Gem::Version
240
212
  version: '0'
241
213
  - !ruby/object:Gem::Dependency
242
- name: psych
214
+ name: rake
243
215
  requirement: !ruby/object:Gem::Requirement
244
216
  requirements:
245
- - - "<"
217
+ - - ">="
246
218
  - !ruby/object:Gem::Version
247
- version: '4'
219
+ version: '0'
248
220
  type: :development
249
221
  prerelease: false
250
222
  version_requirements: !ruby/object:Gem::Requirement
251
223
  requirements:
252
- - - "<"
224
+ - - ">="
253
225
  - !ruby/object:Gem::Version
254
- version: '4'
226
+ version: '0'
255
227
  - !ruby/object:Gem::Dependency
256
- name: rails
228
+ name: solr_wrapper
257
229
  requirement: !ruby/object:Gem::Requirement
258
230
  requirements:
259
- - - ">="
231
+ - - "~>"
260
232
  - !ruby/object:Gem::Version
261
- version: '0'
233
+ version: '2.0'
262
234
  type: :development
263
235
  prerelease: false
264
236
  version_requirements: !ruby/object:Gem::Requirement
265
237
  requirements:
266
- - - ">="
238
+ - - "~>"
267
239
  - !ruby/object:Gem::Version
268
- version: '0'
240
+ version: '2.0'
269
241
  - !ruby/object:Gem::Dependency
270
- name: rake
242
+ name: fcrepo_wrapper
271
243
  requirement: !ruby/object:Gem::Requirement
272
244
  requirements:
273
- - - ">="
245
+ - - "~>"
274
246
  - !ruby/object:Gem::Version
275
- version: '0'
247
+ version: '0.2'
276
248
  type: :development
277
249
  prerelease: false
278
250
  version_requirements: !ruby/object:Gem::Requirement
279
251
  requirements:
280
- - - ">="
252
+ - - "~>"
281
253
  - !ruby/object:Gem::Version
282
- version: '0'
254
+ version: '0.2'
283
255
  - !ruby/object:Gem::Dependency
284
256
  name: rspec
285
257
  requirement: !ruby/object:Gem::Requirement
@@ -309,33 +281,19 @@ dependencies:
309
281
  - !ruby/object:Gem::Version
310
282
  version: '0'
311
283
  - !ruby/object:Gem::Dependency
312
- name: rubocop
313
- requirement: !ruby/object:Gem::Requirement
314
- requirements:
315
- - - "~>"
316
- - !ruby/object:Gem::Version
317
- version: 0.56.0
318
- type: :development
319
- prerelease: false
320
- version_requirements: !ruby/object:Gem::Requirement
321
- requirements:
322
- - - "~>"
323
- - !ruby/object:Gem::Version
324
- version: 0.56.0
325
- - !ruby/object:Gem::Dependency
326
- name: rubocop-rspec
284
+ name: equivalent-xml
327
285
  requirement: !ruby/object:Gem::Requirement
328
286
  requirements:
329
- - - "~>"
287
+ - - ">="
330
288
  - !ruby/object:Gem::Version
331
- version: 1.12.0
289
+ version: '0'
332
290
  type: :development
333
291
  prerelease: false
334
292
  version_requirements: !ruby/object:Gem::Requirement
335
293
  requirements:
336
- - - "~>"
294
+ - - ">="
337
295
  - !ruby/object:Gem::Version
338
- version: 1.12.0
296
+ version: '0'
339
297
  - !ruby/object:Gem::Dependency
340
298
  name: simplecov
341
299
  requirement: !ruby/object:Gem::Requirement
@@ -351,33 +309,33 @@ dependencies:
351
309
  - !ruby/object:Gem::Version
352
310
  version: '0.8'
353
311
  - !ruby/object:Gem::Dependency
354
- name: solr_wrapper
312
+ name: rubocop
355
313
  requirement: !ruby/object:Gem::Requirement
356
314
  requirements:
357
315
  - - "~>"
358
316
  - !ruby/object:Gem::Version
359
- version: '2.0'
317
+ version: 0.56.0
360
318
  type: :development
361
319
  prerelease: false
362
320
  version_requirements: !ruby/object:Gem::Requirement
363
321
  requirements:
364
322
  - - "~>"
365
323
  - !ruby/object:Gem::Version
366
- version: '2.0'
324
+ version: 0.56.0
367
325
  - !ruby/object:Gem::Dependency
368
- name: yard
326
+ name: rubocop-rspec
369
327
  requirement: !ruby/object:Gem::Requirement
370
328
  requirements:
371
- - - ">="
329
+ - - "~>"
372
330
  - !ruby/object:Gem::Version
373
- version: '0'
331
+ version: 1.12.0
374
332
  type: :development
375
333
  prerelease: false
376
334
  version_requirements: !ruby/object:Gem::Requirement
377
335
  requirements:
378
- - - ">="
336
+ - - "~>"
379
337
  - !ruby/object:Gem::Version
380
- version: '0'
338
+ version: 1.12.0
381
339
  description: ActiveFedora provides for creating and managing objects in the Fedora
382
340
  Repository Architecture.
383
341
  email:
@@ -759,7 +717,7 @@ homepage: https://github.com/samvera/active_fedora
759
717
  licenses:
760
718
  - Apache-2.0
761
719
  metadata: {}
762
- post_install_message:
720
+ post_install_message:
763
721
  rdoc_options: []
764
722
  require_paths:
765
723
  - lib
@@ -774,8 +732,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
774
732
  - !ruby/object:Gem::Version
775
733
  version: '0'
776
734
  requirements: []
777
- rubygems_version: 3.1.6
778
- signing_key:
735
+ rubygems_version: 3.0.1
736
+ signing_key:
779
737
  specification_version: 4
780
738
  summary: A convenience libary for manipulating documents in the Fedora Repository.
781
739
  test_files: []