cul_hydra 1.5.3 → 1.6.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
- SHA1:
3
- metadata.gz: eb64e93822e5e1c522e9240134661dc4df7e90ab
4
- data.tar.gz: eb272b2a854d45c9eda69120baf5ffb876f4c2bd
2
+ SHA256:
3
+ metadata.gz: ffa2987939cbe48601c881d32aa95983659b6762107c42b8e987d48d49f41a09
4
+ data.tar.gz: 5ea4f078e5d9f24cce630aa288780e3a3b9212ad2c18a3e38fac9c53e30ae9b9
5
5
  SHA512:
6
- metadata.gz: 2d096d188afc10a31bf06c177639f2784cd253a83cfa0570fbf7943a914c4f735021e30935758224a56823cc8304585fba9adbf48f0b2792cba87215e852e69e
7
- data.tar.gz: c1c7e9190b48b5e8ad7afa72edd9190ac881a5563d4dc296e55a8ff97536b14ff46cf495aef782129d52637be713a1208a54dbff6f799ce756ccbc7238a49c3c
6
+ metadata.gz: 2f01913cd99c93b5835d585bcd41a726b2cf173f32909178287ce0696091f0b224353b585ae5ec19436a564af26bc7502198f9e4aee4a09ba4a81928befa73a7
7
+ data.tar.gz: fa1a836d6bb025713d2514149b756e9ea03d75aeb6777fbd6070ec33141fcff48bb58623896b089d0565b8a766d9dc8b3b97d2feb7a53e29133d68e99a4e9b5f
@@ -151,6 +151,8 @@ class ModsDocument < ::ActiveFedora::OmDatastream
151
151
  t.edition(:index_as=>[:displayable])
152
152
  }
153
153
  t.lib_publisher(:proxy=>[:mods, :origin_info, :publisher], :index_as=>[:displayable])
154
+ t.genre(:path=>"genre[@authority]",:index_as=>[])
155
+ t.lib_genre(:proxy=>[:mods,:genre],:index_as=>[:facetable, :textable])
154
156
  end
155
157
 
156
158
  def self.xml_template
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0"?>
2
+ <mods:mods xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mods="http://www.loc.gov/mods/v3" version="3.6" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd">
3
+ <mods:titleInfo>
4
+ <mods:title>Agreement between Gunnar Myrdal and Harper &amp; Brothers for the publication of "An American Dilemma," January 8, 1943</mods:title>
5
+ </mods:titleInfo>
6
+ <mods:relatedItem type="host" displayLabel="Project">
7
+ <mods:titleInfo>
8
+ <mods:title>Carnegie Digital Past and Future</mods:title>
9
+ </mods:titleInfo>
10
+ </mods:relatedItem>
11
+ <mods:relatedItem type="host" displayLabel="Collection">
12
+ <mods:titleInfo valueURI="http://id.library.columbia.edu/term/72fcfd07-f7db-4a18-bdb2-beb0abce071c">
13
+ <mods:title>Carnegie Corporation of New York Records</mods:title>
14
+ </mods:titleInfo>
15
+ <mods:identifier type="CLIO">4079753</mods:identifier>
16
+ <mods:part>
17
+ <mods:detail>
18
+ <mods:title type="series" level="1">Series II. Files on Microfilm</mods:title>
19
+ </mods:detail>
20
+ <mods:detail>
21
+ <mods:title type="subseries" level="2">Subseries II.C: Carnegie-Myrdal Study, The Negro in America: Correspondence and research memoranda for use in the preparation of Gunnar Myrdal's An American Dilemma 1939-1953</mods:title>
22
+ </mods:detail>
23
+ </mods:part>
24
+ </mods:relatedItem>
25
+ </mods:mods>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0"?>
2
+ <mods:mods xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mods="http://www.loc.gov/mods/v3" version="3.6" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd">
3
+ <mods:genre type="text" valueURI="http://id.loc.gov/authorities/genreForms/gf2014026163" authority="lcgft">Records (Documents)</mods:genre>
4
+ </mods:mods>
@@ -0,0 +1,26 @@
1
+ [
2
+ {
3
+ "@context": {
4
+ "dc": "http://purl.org/dc/terms/"
5
+ },
6
+ "@id": "http://id.library.columbia.edu/term/72fcfd07-f7db-4a18-bdb2-beb0abce071c",
7
+ "@type": "fixture",
8
+ "dc:title": "Carnegie Corporation of New York Records",
9
+ "dc:bibliographicCitation": {
10
+ "@id": "https://clio.columbia.edu/catalog/4079753",
11
+ "@type": "dc:BibliographicResource"
12
+ },
13
+ "dc:coverage": [
14
+ {
15
+ "dc:type": "series",
16
+ "dc:title": "Series II. Files on Microfilm",
17
+ "@id": "_:n0",
18
+ "dc:hasPart": {
19
+ "dc:type": "subseries",
20
+ "dc:title": "Subseries II.C: Carnegie-Myrdal Study, The Negro in America: Correspondence and research memoranda for use in the preparation of Gunnar Myrdal's An American Dilemma 1939-1953",
21
+ "@id": "_:n1"
22
+ }
23
+ }
24
+ ]
25
+ }
26
+ ]
@@ -1,5 +1,5 @@
1
1
  module Cul::Hydra::Solrizer
2
- module ModsFieldable
2
+ module ModsFieldable
3
3
  extend ActiveSupport::Concern
4
4
  include Solrizer::DefaultDescriptors::Normal
5
5
 
@@ -47,10 +47,10 @@ module Cul::Hydra::Solrizer
47
47
  n_t
48
48
  end
49
49
 
50
- def role_text_to_solr_field_name(role_text)
51
- role_text = normalize(role_text, false)
52
- ('role_' + role_text.gsub(/[^A-z]/, '_').downcase + '_ssim').gsub(/_+/, '_')
53
- end
50
+ def role_text_to_solr_field_name(role_text)
51
+ role_text = normalize(role_text, false)
52
+ ('role_' + role_text.gsub(/[^A-z]/, '_').downcase + '_ssim').gsub(/_+/, '_')
53
+ end
54
54
  end
55
55
 
56
56
  extend ClassMethods
@@ -121,7 +121,7 @@ module Cul::Hydra::Solrizer
121
121
  end
122
122
  end
123
123
 
124
- def clio_ids(node=mods)
124
+ def clio_ids(node=mods)
125
125
  node.xpath('./mods:identifier[@type="CLIO"]', MODS_NS).collect do |t|
126
126
  ModsFieldable.normalize(t.text)
127
127
  end
@@ -278,24 +278,27 @@ module Cul::Hydra::Solrizer
278
278
  end
279
279
  end
280
280
 
281
- def date_notes(node=mods)
282
- date_notes = []
283
- node.xpath("./mods:note[@type = 'date' or @type = 'date source']", MODS_NS).collect do |n|
284
- date_notes << ModsFieldable.normalize(n.text, true)
281
+ def notes_by_type(node=mods)
282
+ results = {}
283
+ normal_date_types = ['date','date_source']
284
+ node.xpath("./mods:note", MODS_NS).collect do |n|
285
+ type = n.attr('type')
286
+ type = 'untyped' if type.blank?
287
+ normal_type = type.downcase
288
+ normal_type.gsub!(/\s/,'_')
289
+ normal_type = 'date' if normal_date_types.include?(normal_type)
290
+ field_name = "lib_#{normal_type}_notes_ssm"
291
+ results[field_name] ||= []
292
+ results[field_name] << ModsFieldable.normalize(n.text, true)
285
293
  end
286
- return date_notes
294
+ results
287
295
  end
288
296
 
289
- def non_date_notes(node=mods)
290
- non_date_notes = []
291
- node.xpath("./mods:note[not(@type) or (@type != 'date' and @type != 'date source' and @type != 'filename')]", MODS_NS).collect do |n|
292
- if n.attr('type') == 'view direction'
293
- non_date_notes << 'View Direction: ' + ModsFieldable.normalize(n.text, true)
294
- else
295
- non_date_notes << ModsFieldable.normalize(n.text, true)
296
- end
297
+ def add_notes_by_type!(solr_doc, node=mods)
298
+ notes_by_type(mods).each do |solr_field_name, values|
299
+ solr_doc[solr_field_name] ||= []
300
+ solr_doc[solr_field_name].concat(values)
297
301
  end
298
- return non_date_notes
299
302
  end
300
303
 
301
304
  def item_in_context_url(node=mods)
@@ -307,12 +310,12 @@ module Cul::Hydra::Solrizer
307
310
  end
308
311
 
309
312
  def non_item_in_context_url(node=mods)
310
- non_item_in_context_url_val = []
313
+ non_item_in_context_url_val = []
311
314
  node.xpath("./mods:location/mods:url[not(@access='object in context')]", MODS_NS).collect do |n|
312
315
  non_item_in_context_url_val << ModsFieldable.normalize(n.text, true)
313
316
  end
314
317
  non_item_in_context_url_val
315
- end
318
+ end
316
319
 
317
320
  def project_url(node=mods)
318
321
  project_url_val = []
@@ -372,13 +375,13 @@ module Cul::Hydra::Solrizer
372
375
  return places
373
376
  end
374
377
 
375
- def classification_other(node=mods)
376
- classification_other_values = []
378
+ def classification_other(node=mods)
379
+ classification_other_values = []
377
380
  node.xpath("./mods:classification[@authority='z']", MODS_NS).collect do |n|
378
381
  classification_other_values << ModsFieldable.normalize(n.text, true)
379
382
  end
380
383
  return classification_other_values
381
- end
384
+ end
382
385
 
383
386
  def origin_info_place_for_display(node=mods)
384
387
  # If there are multiple origin_info place elements, choose only the ones without valueURI attributes. Otherwise show the others.
@@ -411,32 +414,68 @@ module Cul::Hydra::Solrizer
411
414
  end.first
412
415
  end
413
416
 
414
- def add_names_by_text_role!(solr_doc)
415
- # Note: These roles usually come from http://www.loc.gov/marc/relators/relaterm.html,
416
- # but there are known cases when non-marc relator values are used (e.g. 'Owner/Agent'),
417
- # and those roles won't have marcrelator codes.
418
- # e.g. author_ssim = ['Author 1', 'Author 2'] or project_director_ssim = ['Director 1', 'Director 2']
419
- roleterm_xpath_segment = "mods:roleTerm[@type='text' and string-length(text()) > 0]"
420
- names_with_roles_xpath = "./mods:name/mods:role/#{roleterm_xpath_segment}/ancestor::mods:name"
417
+ def add_names_by_text_role!(solr_doc)
418
+ # Note: These roles usually come from http://www.loc.gov/marc/relators/relaterm.html,
419
+ # but there are known cases when non-marc relator values are used (e.g. 'Owner/Agent'),
420
+ # and those roles won't have marcrelator codes.
421
+ # e.g. author_ssim = ['Author 1', 'Author 2'] or project_director_ssim = ['Director 1', 'Director 2']
422
+ roleterm_xpath_segment = "mods:roleTerm[@type='text' and string-length(text()) > 0]"
423
+ names_with_roles_xpath = "./mods:name/mods:role/#{roleterm_xpath_segment}/ancestor::mods:name"
421
424
  mods.xpath(names_with_roles_xpath, MODS_NS).collect do |node|
422
425
  name_text = node.xpath('./mods:namePart', MODS_NS).collect { |c| c.text }.join(' ')
423
426
  name_text = ModsFieldable.normalize(name_text, true)
424
- solr_role_fields = Set.new
425
- node.xpath("./mods:role/#{roleterm_xpath_segment}", MODS_NS).collect do |role_node|
426
- solr_role_fields << ModsFieldable.role_text_to_solr_field_name(role_node.text)
427
- end
427
+ solr_role_fields = Set.new
428
+ node.xpath("./mods:role/#{roleterm_xpath_segment}", MODS_NS).collect do |role_node|
429
+ solr_role_fields << ModsFieldable.role_text_to_solr_field_name(role_node.text)
430
+ end
428
431
 
429
- solr_role_fields.each do |solr_field_name|
430
- solr_doc[solr_field_name] ||= []
431
- solr_doc[solr_field_name] << name_text
432
- end
432
+ solr_role_fields.each do |solr_field_name|
433
+ solr_doc[solr_field_name] ||= []
434
+ solr_doc[solr_field_name] << name_text
435
+ end
433
436
  end
434
- end
437
+ end
438
+
439
+ def archival_context_json(node=mods)
440
+ node.xpath("./mods:relatedItem[@displayLabel='Collection']", MODS_NS).map do |collection|
441
+ collection_title = collection.xpath("./mods:titleInfo/mods:title", MODS_NS).text
442
+ collection_id = collection.xpath("./mods:titleInfo/@valueURI", MODS_NS).text
443
+ collection_bib_id = collection.xpath("./mods:identifier[@type='CLIO']", MODS_NS).text
444
+ collection_org = collection.xpath("./mods:part/mods:detail/mods:title", MODS_NS).map do |title|
445
+ {
446
+ 'ead:level' => title[:level],
447
+ 'dc:type' => title[:type],
448
+ 'dc:title' => title.text
449
+ }
450
+ end
451
+ unless collection_org.empty?
452
+ collection_org.sort! { |a,b| a['ead:level'] <=> b['ead:level'] }
453
+ collection_org.each_with_index {|node, ix| node['@id'] = "_:n#{ix}"}
454
+ collection_org[0].delete('ead:level')
455
+ while collection_org.length > 1 do
456
+ collection_org[-1].delete('ead:level')
457
+ tail = collection_org.pop
458
+ tail.delete('ead:level')
459
+ collection_org[-1]['dc:hasPart'] = tail
460
+ end
461
+ end
462
+ {
463
+ '@context': {'dc': "http://purl.org/dc/terms/"},
464
+ '@id' => collection_id,
465
+ 'dc:title' => collection_title,
466
+ 'dc:bibliographicCitation' => {
467
+ '@id' => "https://clio.columbia.edu/catalog/#{collection_bib_id}",
468
+ '@type' => 'dc:BibliographicResource'
469
+ },
470
+ 'dc:coverage' => collection_org
471
+ }
472
+ end
473
+ end
435
474
 
436
475
  def to_solr(solr_doc={})
437
476
  solr_doc = (defined? super) ? super : solr_doc
438
477
 
439
- return solr_doc if mods.nil? # There is no mods. Return because there is nothing to process, otherwise NoMethodError will be raised by subsequent lines.
478
+ return solr_doc if mods.nil? # There is no mods. Return because there is nothing to process, otherwise NoMethodError will be raised by subsequent lines.
440
479
 
441
480
  solr_doc["all_text_teim"] ||= []
442
481
 
@@ -444,7 +483,7 @@ module Cul::Hydra::Solrizer
444
483
  solr_doc["title_ssm"] = titles
445
484
  solr_doc["alternative_title_ssm"] = alternative_titles
446
485
  solr_doc["all_text_teim"] += solr_doc["alternative_title_ssm"]
447
- solr_doc["clio_ssim"] = clio_ids
486
+ solr_doc["clio_ssim"] = clio_ids
448
487
  solr_doc["archive_org_identifier_ssi"] = archive_org_identifier
449
488
  solr_doc["lib_collection_sim"] = collections
450
489
  solr_doc["lib_name_sim"] = names
@@ -465,15 +504,13 @@ module Cul::Hydra::Solrizer
465
504
  solr_doc['lib_sublocation_ssm'] = solr_doc['lib_sublocation_sim']
466
505
  solr_doc["all_text_teim"] += solr_doc['lib_sublocation_sim']
467
506
  solr_doc["lib_date_textual_ssm"] = textual_dates
468
- solr_doc["lib_date_notes_ssm"] = date_notes
469
- solr_doc["lib_non_date_notes_ssm"] = non_date_notes
470
507
  solr_doc["lib_item_in_context_url_ssm"] = item_in_context_url
471
508
  solr_doc["lib_non_item_in_context_url_ssm"] = non_item_in_context_url
472
509
  solr_doc["location_url_json_ss"] = JSON.generate(url_locations)
473
510
  solr_doc["lib_project_url_ssm"] = project_url
474
511
  solr_doc["origin_info_place_ssm"] = origin_info_place
475
512
  solr_doc["origin_info_place_for_display_ssm"] = origin_info_place_for_display
476
- solr_doc["classification_other_ssim"] = classification_other
513
+ solr_doc["classification_other_ssim"] = classification_other
477
514
 
478
515
  repo_marc_code = repository_code
479
516
  unless repo_marc_code.nil?
@@ -502,36 +539,36 @@ module Cul::Hydra::Solrizer
502
539
 
503
540
  if start_date.present?
504
541
 
505
- start_year = nil
506
- end_year = nil
542
+ start_year = nil
543
+ end_year = nil
507
544
 
508
- start_date = nil if start_date == 'uuuu'
509
- end_date = nil if end_date == 'uuuu'
510
- start_date = start_date.gsub('u', '0') unless start_date.nil?
511
- end_date = end_date.gsub('u', '0') unless end_date.nil?
545
+ start_date = nil if start_date == 'uuuu'
546
+ end_date = nil if end_date == 'uuuu'
547
+ start_date = start_date.gsub('u', '0') unless start_date.nil?
548
+ end_date = end_date.gsub('u', '0') unless end_date.nil?
512
549
 
513
550
  end_date = start_date if end_date.blank?
514
551
  start_date = end_date if start_date.blank?
515
552
 
516
553
  year_regex = /^(-?\d{1,4}).*/
517
554
 
518
- unless start_date.blank?
519
- start_year_match = start_date.match(year_regex)
520
- if start_year_match && start_year_match.captures.length > 0
521
- start_year = start_year_match.captures[0]
522
- start_year = zero_pad_year(start_year)
523
- solr_doc["lib_start_date_year_itsi"] = start_year.to_i # TrieInt version for searches
524
- end
525
- end
526
-
527
- unless end_date.blank?
528
- end_year_match = end_date.match(year_regex)
529
- if end_year_match && end_year_match.captures.length > 0
530
- end_year = end_year_match.captures[0]
531
- end_year = zero_pad_year(end_year)
532
- solr_doc["lib_end_date_year_itsi"] = end_year.to_i # TrieInt version for searches
533
- end
534
- end
555
+ unless start_date.blank?
556
+ start_year_match = start_date.match(year_regex)
557
+ if start_year_match && start_year_match.captures.length > 0
558
+ start_year = start_year_match.captures[0]
559
+ start_year = zero_pad_year(start_year)
560
+ solr_doc["lib_start_date_year_itsi"] = start_year.to_i # TrieInt version for searches
561
+ end
562
+ end
563
+
564
+ unless end_date.blank?
565
+ end_year_match = end_date.match(year_regex)
566
+ if end_year_match && end_year_match.captures.length > 0
567
+ end_year = end_year_match.captures[0]
568
+ end_year = zero_pad_year(end_year)
569
+ solr_doc["lib_end_date_year_itsi"] = end_year.to_i # TrieInt version for searches
570
+ end
571
+ end
535
572
 
536
573
  solr_doc["lib_date_year_range_si"] = start_year + '-' + end_year if start_year && end_year
537
574
  solr_doc["lib_date_year_range_ss"] = solr_doc["lib_date_year_range_si"]
@@ -553,8 +590,15 @@ module Cul::Hydra::Solrizer
553
590
  solr_doc['language_language_term_code_ssim'] ||= []
554
591
  solr_doc['language_language_term_code_ssim'] +=languages_iso639_2_code
555
592
 
556
- # Add names to role-derived keys
557
- add_names_by_text_role!(solr_doc)
593
+ archival_context = archival_context_json
594
+ solr_doc['archival_context_json_ss'] = JSON.generate(archival_context) if archival_context.present?
595
+
596
+
597
+ # Add names to role-derived keys
598
+ add_names_by_text_role!(solr_doc)
599
+
600
+ # Add names to type-derived keys
601
+ add_notes_by_type!(solr_doc)
558
602
 
559
603
  solr_doc.each do |k, v|
560
604
  if self.class.maps_field? k
@@ -1,6 +1,6 @@
1
1
  module Cul
2
2
  module Hydra
3
- VERSION = '1.5.3'
3
+ VERSION = '1.6.0'
4
4
  def self.version
5
5
  VERSION
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cul_hydra
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.3
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Armintor
@@ -9,8 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-01-03 00:00:00.000000000 Z
12
+ date: 2019-03-28 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bootstrap-sass
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: 3.3.7
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: 3.3.7
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: blacklight
16
30
  requirement: !ruby/object:Gem::Requirement
@@ -57,16 +71,16 @@ dependencies:
57
71
  name: active-fedora
58
72
  requirement: !ruby/object:Gem::Requirement
59
73
  requirements:
60
- - - "~>"
74
+ - - ">="
61
75
  - !ruby/object:Gem::Version
62
- version: '7.0'
76
+ version: 7.3.1
63
77
  type: :runtime
64
78
  prerelease: false
65
79
  version_requirements: !ruby/object:Gem::Requirement
66
80
  requirements:
67
- - - "~>"
81
+ - - ">="
68
82
  - !ruby/object:Gem::Version
69
- version: '7.0'
83
+ version: 7.3.1
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: active-triples
72
86
  requirement: !ruby/object:Gem::Requirement
@@ -169,16 +183,16 @@ dependencies:
169
183
  name: sparql
170
184
  requirement: !ruby/object:Gem::Requirement
171
185
  requirements:
172
- - - '='
186
+ - - ">="
173
187
  - !ruby/object:Gem::Version
174
- version: 1.1.4
188
+ version: '0'
175
189
  type: :runtime
176
190
  prerelease: false
177
191
  version_requirements: !ruby/object:Gem::Requirement
178
192
  requirements:
179
- - - '='
193
+ - - ">="
180
194
  - !ruby/object:Gem::Version
181
- version: 1.1.4
195
+ version: '0'
182
196
  - !ruby/object:Gem::Dependency
183
197
  name: json
184
198
  requirement: !ruby/object:Gem::Requirement
@@ -222,35 +236,35 @@ dependencies:
222
236
  - !ruby/object:Gem::Version
223
237
  version: 2.0.0
224
238
  - !ruby/object:Gem::Dependency
225
- name: cancancan
239
+ name: sqlite3
226
240
  requirement: !ruby/object:Gem::Requirement
227
241
  requirements:
228
242
  - - "~>"
229
243
  - !ruby/object:Gem::Version
230
- version: 1.12.0
231
- type: :runtime
244
+ version: 1.3.9
245
+ type: :development
232
246
  prerelease: false
233
247
  version_requirements: !ruby/object:Gem::Requirement
234
248
  requirements:
235
249
  - - "~>"
236
250
  - !ruby/object:Gem::Version
237
- version: 1.12.0
251
+ version: 1.3.9
238
252
  - !ruby/object:Gem::Dependency
239
- name: autoprefixer-rails
253
+ name: rspec-rails
240
254
  requirement: !ruby/object:Gem::Requirement
241
255
  requirements:
242
- - - "<="
256
+ - - "~>"
243
257
  - !ruby/object:Gem::Version
244
- version: 6.1.1
245
- type: :runtime
258
+ version: 3.4.0
259
+ type: :development
246
260
  prerelease: false
247
261
  version_requirements: !ruby/object:Gem::Requirement
248
262
  requirements:
249
- - - "<="
263
+ - - "~>"
250
264
  - !ruby/object:Gem::Version
251
- version: 6.1.1
265
+ version: 3.4.0
252
266
  - !ruby/object:Gem::Dependency
253
- name: sqlite3
267
+ name: rspec-json_expectations
254
268
  requirement: !ruby/object:Gem::Requirement
255
269
  requirements:
256
270
  - - ">="
@@ -263,34 +277,6 @@ dependencies:
263
277
  - - ">="
264
278
  - !ruby/object:Gem::Version
265
279
  version: '0'
266
- - !ruby/object:Gem::Dependency
267
- name: rspec
268
- requirement: !ruby/object:Gem::Requirement
269
- requirements:
270
- - - "~>"
271
- - !ruby/object:Gem::Version
272
- version: '2.10'
273
- type: :development
274
- prerelease: false
275
- version_requirements: !ruby/object:Gem::Requirement
276
- requirements:
277
- - - "~>"
278
- - !ruby/object:Gem::Version
279
- version: '2.10'
280
- - !ruby/object:Gem::Dependency
281
- name: rspec-rails
282
- requirement: !ruby/object:Gem::Requirement
283
- requirements:
284
- - - "~>"
285
- - !ruby/object:Gem::Version
286
- version: '2.10'
287
- type: :development
288
- prerelease: false
289
- version_requirements: !ruby/object:Gem::Requirement
290
- requirements:
291
- - - "~>"
292
- - !ruby/object:Gem::Version
293
- version: '2.10'
294
280
  - !ruby/object:Gem::Dependency
295
281
  name: jettywrapper
296
282
  requirement: !ruby/object:Gem::Requirement
@@ -319,20 +305,6 @@ dependencies:
319
305
  - - ">="
320
306
  - !ruby/object:Gem::Version
321
307
  version: 0.2.4
322
- - !ruby/object:Gem::Dependency
323
- name: rbx-require-relative
324
- requirement: !ruby/object:Gem::Requirement
325
- requirements:
326
- - - ">="
327
- - !ruby/object:Gem::Version
328
- version: '0'
329
- type: :development
330
- prerelease: false
331
- version_requirements: !ruby/object:Gem::Requirement
332
- requirements:
333
- - - ">="
334
- - !ruby/object:Gem::Version
335
- version: '0'
336
308
  description: Hydra implementations for CUL repository apps
337
309
  email: armintor@gmail.com
338
310
  executables: []
@@ -483,6 +455,7 @@ files:
483
455
  - fixtures/spec/CUL_DC/dc.xml
484
456
  - fixtures/spec/CUL_MODS/mods-001.xml
485
457
  - fixtures/spec/CUL_MODS/mods-all.xml
458
+ - fixtures/spec/CUL_MODS/mods-archival-context.xml
486
459
  - fixtures/spec/CUL_MODS/mods-bad-repo.xml
487
460
  - fixtures/spec/CUL_MODS/mods-date-created-range.xml
488
461
  - fixtures/spec/CUL_MODS/mods-date-created-single.xml
@@ -495,6 +468,7 @@ files:
495
468
  - fixtures/spec/CUL_MODS/mods-date-start-with-all-u-characters.xml
496
469
  - fixtures/spec/CUL_MODS/mods-dates-with-all-u-characters.xml
497
470
  - fixtures/spec/CUL_MODS/mods-dates-with-some-u-characters.xml
471
+ - fixtures/spec/CUL_MODS/mods-genre.xml
498
472
  - fixtures/spec/CUL_MODS/mods-item.xml
499
473
  - fixtures/spec/CUL_MODS/mods-languages.xml
500
474
  - fixtures/spec/CUL_MODS/mods-names.xml
@@ -513,6 +487,7 @@ files:
513
487
  - fixtures/spec/CUL_MODS/mods-titles.xml
514
488
  - fixtures/spec/CUL_MODS/mods-top-level-location-vs-relateditem-location.xml
515
489
  - fixtures/spec/CUL_MODS/mods-unmapped-project.xml
490
+ - fixtures/spec/CUL_SOLR/archival-context.json
516
491
  - fixtures/spec/CUL_SOLR/mods-001.xml
517
492
  - fixtures/spec/CUL_SOLR/mods-001.yml
518
493
  - fixtures/spec/FOXML/concept.xml.erb
@@ -595,7 +570,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
595
570
  version: '0'
596
571
  requirements: []
597
572
  rubyforge_project:
598
- rubygems_version: 2.6.11
573
+ rubygems_version: 2.7.9
599
574
  signing_key:
600
575
  specification_version: 4
601
576
  summary: ActiveFedora, OM, and Solrizer implementations for CUL repository apps