hyrax 3.0.0.pre.beta1 → 3.0.0.pre.beta2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (170) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +157 -68
  3. data/.travis.yml +4 -1
  4. data/Gemfile +1 -0
  5. data/README.md +3 -3
  6. data/app/actors/hyrax/actors/collections_membership_actor.rb +5 -55
  7. data/app/actors/hyrax/actors/create_with_remote_files_ordered_members_actor.rb +6 -8
  8. data/app/actors/hyrax/actors/environment.rb +15 -0
  9. data/app/actors/hyrax/actors/interpret_visibility_actor.rb +22 -37
  10. data/app/assets/javascripts/hyrax/editor/controlled_vocabulary.es6 +1 -1
  11. data/app/assets/stylesheets/hyrax/_collections.scss +5 -3
  12. data/app/assets/stylesheets/hyrax/dashboard.scss +3 -3
  13. data/app/controllers/concerns/hyrax/works_controller_behavior.rb +21 -2
  14. data/app/controllers/hyrax/homepage_controller.rb +1 -1
  15. data/app/forms/hyrax/forms/work_form.rb +1 -1
  16. data/app/helpers/hyrax/collections_helper.rb +13 -0
  17. data/app/helpers/hyrax/hyrax_helper_behavior.rb +3 -3
  18. data/app/indexers/hyrax/admin_set_indexer.rb +1 -1
  19. data/app/indexers/hyrax/basic_metadata_indexer.rb +1 -1
  20. data/app/indexers/hyrax/collection_indexer.rb +3 -3
  21. data/app/indexers/hyrax/deep_indexing_service.rb +12 -12
  22. data/app/indexers/hyrax/file_set_indexer.rb +1 -1
  23. data/app/indexers/hyrax/indexes_workflow.rb +4 -4
  24. data/app/indexers/hyrax/work_indexer.rb +1 -1
  25. data/app/models/concerns/hyrax/basic_metadata.rb +2 -0
  26. data/app/models/concerns/hyrax/collection_behavior.rb +3 -3
  27. data/app/models/concerns/hyrax/file_set/querying.rb +1 -1
  28. data/app/models/concerns/hyrax/human_readable_type.rb +2 -2
  29. data/app/models/concerns/hyrax/solr_document/characterization.rb +23 -23
  30. data/app/models/concerns/hyrax/solr_document/metadata.rb +3 -2
  31. data/app/models/concerns/hyrax/solr_document_behavior.rb +3 -3
  32. data/app/models/concerns/hyrax/user.rb +10 -2
  33. data/app/presenters/hyrax/work_show_presenter.rb +2 -2
  34. data/app/renderers/hyrax/renderers/faceted_attribute_renderer.rb +1 -1
  35. data/app/search_builders/hyrax/collection_search_builder.rb +1 -1
  36. data/app/search_builders/hyrax/deposit_search_builder.rb +1 -1
  37. data/app/search_builders/hyrax/embargo_search_builder.rb +1 -1
  38. data/app/search_builders/hyrax/lease_search_builder.rb +1 -1
  39. data/app/services/hyrax/default_middleware_stack.rb +0 -4
  40. data/app/services/hyrax/statistics/file_sets/by_format.rb +1 -1
  41. data/app/services/hyrax/statistics/works/by_resource_type.rb +1 -1
  42. data/app/services/hyrax/visibility_intention.rb +78 -0
  43. data/app/views/catalog/_index_list_default.html.erb +3 -3
  44. data/app/views/catalog/_thumbnail_list_collection.html.erb +3 -2
  45. data/app/views/hyrax/base/_attribute_rows.html.erb +1 -0
  46. data/app/views/hyrax/base/_form_files.html.erb +2 -2
  47. data/app/views/hyrax/base/_form_visibility_component.html.erb +1 -1
  48. data/app/views/hyrax/base/_show_actions.html.erb +6 -6
  49. data/app/views/hyrax/base/show.html.erb +2 -2
  50. data/app/views/hyrax/batch_edits/_check_all.html.erb +1 -1
  51. data/app/views/hyrax/batch_edits/_delete_selected.html.erb +1 -1
  52. data/app/views/hyrax/collections/_show_document_list_row.html.erb +1 -1
  53. data/app/views/hyrax/dashboard/collections/_show_document_list_row.html.erb +1 -1
  54. data/app/views/hyrax/dashboard/show_admin.html.erb +4 -4
  55. data/app/views/records/show_fields/_based_near.html.erb +1 -1
  56. data/app/views/records/show_fields/_creator.html.erb +1 -1
  57. data/app/views/records/show_fields/_keyword.html.erb +1 -1
  58. data/app/views/records/show_fields/_language.html.erb +1 -1
  59. data/app/views/records/show_fields/_publisher.html.erb +1 -1
  60. data/app/views/records/show_fields/_resource_type.html.erb +1 -1
  61. data/app/views/records/show_fields/_subject.html.erb +1 -1
  62. data/config/initializers/samvera-nesting_indexer_initializer.rb +3 -3
  63. data/config/locales/hyrax.de.yml +35 -22
  64. data/config/locales/hyrax.en.yml +22 -2
  65. data/config/locales/hyrax.es.yml +21 -1
  66. data/config/locales/hyrax.fr.yml +21 -1
  67. data/config/locales/hyrax.it.yml +21 -1
  68. data/config/locales/hyrax.pt-BR.yml +21 -1
  69. data/config/locales/hyrax.zh.yml +21 -1
  70. data/hyrax.gemspec +7 -9
  71. data/lib/generators/hyrax/templates/catalog_controller.rb +1 -1
  72. data/lib/generators/hyrax/templates/config/locales/hyrax.pt-BR.yml +10 -10
  73. data/lib/generators/hyrax/work/templates/locale.pt-BR.yml.erb +1 -1
  74. data/lib/hyrax/configuration.rb +18 -0
  75. data/lib/hyrax/engine.rb +8 -0
  76. data/lib/hyrax/transactions/container.rb +6 -0
  77. data/lib/hyrax/transactions/destroy_work.rb +21 -0
  78. data/lib/hyrax/transactions/steps/destroy_work.rb +24 -0
  79. data/lib/hyrax/version.rb +1 -1
  80. data/lib/wings.rb +45 -0
  81. data/lib/wings/active_fedora_converter.rb +56 -0
  82. data/lib/wings/model_transformer.rb +158 -0
  83. data/lib/wings/resource_factory.rb +8 -0
  84. data/lib/wings/valkyrie/metadata_adapter.rb +29 -0
  85. data/lib/wings/valkyrie/persister.rb +50 -0
  86. data/lib/wings/valkyrie/query_service.rb +43 -0
  87. data/lib/wings/valkyrie/resource_factory.rb +45 -0
  88. data/lib/wings/valkyrizable.rb +24 -0
  89. data/lib/wings/value_mapper.rb +59 -0
  90. data/spec/abilities/collection_ability_spec.rb +5 -5
  91. data/spec/abilities/permission_template_ability_spec.rb +1 -1
  92. data/spec/actors/hyrax/actors/collections_membership_actor_spec.rb +6 -175
  93. data/spec/actors/hyrax/actors/create_with_remote_files_ordered_members_actor_spec.rb +30 -22
  94. data/spec/actors/hyrax/actors/interpret_visibility_actor_spec.rb +2 -0
  95. data/spec/controllers/catalog_controller_spec.rb +1 -1
  96. data/spec/controllers/hyrax/admin/collection_types_controller_spec.rb +1 -1
  97. data/spec/controllers/hyrax/batch_edits_controller_spec.rb +9 -9
  98. data/spec/controllers/hyrax/collections_controller_spec.rb +5 -5
  99. data/spec/controllers/hyrax/dashboard/collection_members_controller_spec.rb +16 -13
  100. data/spec/controllers/hyrax/dashboard/collections_controller_spec.rb +9 -9
  101. data/spec/controllers/hyrax/dashboard/nest_collections_controller_spec.rb +1 -1
  102. data/spec/controllers/hyrax/generic_works_controller_spec.rb +10 -1
  103. data/spec/controllers/hyrax/homepage_controller_spec.rb +3 -3
  104. data/spec/controllers/hyrax/my/shares_controller_spec.rb +1 -1
  105. data/spec/features/actor_stack_spec.rb +48 -0
  106. data/spec/features/catalog_search_spec.rb +2 -2
  107. data/spec/features/collection_multi_membership_spec.rb +2 -2
  108. data/spec/features/collection_spec.rb +7 -7
  109. data/spec/features/collection_type_spec.rb +2 -2
  110. data/spec/features/dashboard/collection_spec.rb +18 -18
  111. data/spec/features/delete_work_spec.rb +1 -1
  112. data/spec/features/search_spec.rb +2 -2
  113. data/spec/features/work_show_spec.rb +5 -2
  114. data/spec/forms/hyrax/forms/batch_upload_form_spec.rb +1 -0
  115. data/spec/forms/hyrax/forms/collection_form_spec.rb +5 -5
  116. data/spec/forms/hyrax/forms/permission_template_form_spec.rb +1 -1
  117. data/spec/forms/hyrax/forms/work_form_spec.rb +2 -0
  118. data/spec/helpers/blacklight_helper_spec.rb +3 -1
  119. data/spec/helpers/hyrax/collections_helper_spec.rb +42 -0
  120. data/spec/helpers/hyrax/dashboard_helper_behavior_spec.rb +4 -4
  121. data/spec/helpers/hyrax_helper_spec.rb +8 -4
  122. data/spec/hyrax/transactions/destroy_work_spec.rb +35 -0
  123. data/spec/hyrax/transactions/steps/destroy_work_spec.rb +33 -0
  124. data/spec/indexers/hyrax/collection_indexer_spec.rb +1 -1
  125. data/spec/jobs/characterize_job_spec.rb +1 -1
  126. data/spec/lib/hyrax/resource_sync/change_list_writer_spec.rb +35 -21
  127. data/spec/lib/hyrax/resource_sync/resource_list_writer_spec.rb +1 -1
  128. data/spec/models/collection_spec.rb +18 -18
  129. data/spec/models/concerns/hyrax/collection_nesting_spec.rb +2 -2
  130. data/spec/models/file_set_spec.rb +2 -2
  131. data/spec/models/hyrax/collection_type_spec.rb +2 -2
  132. data/spec/models/user_spec.rb +26 -1
  133. data/spec/presenters/hyrax/collection_presenter_spec.rb +11 -11
  134. data/spec/presenters/hyrax/work_show_presenter_spec.rb +11 -0
  135. data/spec/search_builders/hyrax/collection_member_search_builder_spec.rb +1 -1
  136. data/spec/search_builders/hyrax/collection_search_builder_spec.rb +1 -1
  137. data/spec/search_builders/hyrax/dashboard/nested_collections_search_builder_spec.rb +1 -1
  138. data/spec/search_builders/hyrax/work_relation_spec.rb +1 -1
  139. data/spec/services/hyrax/adapters/nesting_index_adapter_spec.rb +2 -2
  140. data/spec/services/hyrax/collections/collection_member_service_spec.rb +2 -2
  141. data/spec/services/hyrax/collections/migration_service_spec.rb +27 -27
  142. data/spec/services/hyrax/collections/nested_collection_persistence_service_spec.rb +1 -1
  143. data/spec/services/hyrax/collections/nested_collection_query_service_spec.rb +38 -38
  144. data/spec/services/hyrax/curation_concern_spec.rb +1 -1
  145. data/spec/services/hyrax/default_middleware_stack_spec.rb +1 -2
  146. data/spec/services/hyrax/statistics/depositors/summary_spec.rb +1 -1
  147. data/spec/services/hyrax/statistics/works/by_resource_type_spec.rb +11 -4
  148. data/spec/services/hyrax/visibility_intention_spec.rb +144 -0
  149. data/spec/services/hyrax/workflow/changes_required_notification_spec.rb +1 -1
  150. data/spec/spec_helper.rb +10 -8
  151. data/spec/support/selectors.rb +10 -1
  152. data/spec/test_app_templates/Gemfile.extra +2 -0
  153. data/spec/test_app_templates/lib/generators/test_app_generator.rb +6 -0
  154. data/spec/views/catalog/_index_list_default.html.erb_spec.rb +3 -2
  155. data/spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb +38 -5
  156. data/spec/views/hyrax/base/_attributes.html.erb_spec.rb +1 -1
  157. data/spec/views/hyrax/base/_show_actions.html.erb_spec.rb +9 -9
  158. data/spec/views/hyrax/base/show.html.erb_spec.rb +3 -2
  159. data/spec/views/hyrax/collections/_show_document_list_row.html.erb_spec.rb +3 -2
  160. data/spec/views/hyrax/dashboard/collections/_show_document_list_row.html.erb_spec.rb +3 -2
  161. data/spec/wings/active_fedora_converter_spec.rb +31 -0
  162. data/spec/wings/model_transformer_spec.rb +288 -0
  163. data/spec/wings/valkyrie/metadata_adapter_spec.rb +10 -0
  164. data/spec/wings/valkyrie/persister_spec.rb +71 -0
  165. data/spec/wings/valkyrie/query_service_spec.rb +81 -0
  166. data/spec/wings/valkyrie/resource_factory_spec.rb +32 -0
  167. data/spec/wings/value_mapper_spec.rb +60 -0
  168. data/spec/wings_spec.rb +8 -0
  169. data/template.rb +3 -1
  170. metadata +86 -36
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::MetadataAdapter do
7
+ let(:adapter) { described_class.new }
8
+
9
+ it_behaves_like "a Valkyrie::MetadataAdapter"
10
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::Persister do
7
+ before do
8
+ class Book < ActiveFedora::Base
9
+ property :title, predicate: ::RDF::Vocab::DC.title, multiple: true
10
+ end
11
+ end
12
+
13
+ after do
14
+ Object.send(:remove_const, :Book)
15
+ end
16
+
17
+ subject(:persister) { described_class.new(adapter: adapter) }
18
+ let(:adapter) { Wings::Valkyrie::MetadataAdapter.new }
19
+ let(:query_service) { adapter.query_service }
20
+ let(:af_resource_class) { Book }
21
+ let(:resource_class) { Wings::ModelTransformer.to_valkyrie_resource_class(klass: af_resource_class) }
22
+ let(:resource) { resource_class.new(title: ['Foo']) }
23
+
24
+ # it_behaves_like "a Valkyrie::Persister"
25
+
26
+ it { is_expected.to respond_to(:save).with_keywords(:resource) }
27
+ xit { is_expected.to respond_to(:save_all).with_keywords(:resources) }
28
+ xit { is_expected.to respond_to(:delete).with_keywords(:resource) }
29
+
30
+ it "can save a resource" do
31
+ expect(resource).not_to be_persisted
32
+ saved = persister.save(resource: resource)
33
+ # expect(saved).to be_persisted
34
+ expect(saved.id).not_to be_blank
35
+ end
36
+
37
+ xit "stores created_at/updated_at" do
38
+ book = persister.save(resource: resource)
39
+ book.title = ["test"]
40
+ book = persister.save(resource: book)
41
+ expect(book.created_at).not_to be_blank
42
+ expect(book.updated_at).not_to be_blank
43
+ expect(book.created_at).not_to be_kind_of Array
44
+ expect(book.updated_at).not_to be_kind_of Array
45
+ expect(book.updated_at > book.created_at).to eq true
46
+ end
47
+
48
+ xit "can override default id generation with a provided id" do
49
+ id = SecureRandom.uuid
50
+ book = persister.save(resource: resource_class.new(id: id, title: ['Foo']))
51
+ reloaded = query_service.find_by(id: book.id)
52
+ expect(reloaded.id).to eq Valkyrie::ID.new(id)
53
+ expect(reloaded).to be_persisted
54
+ expect(reloaded.created_at).not_to be_blank
55
+ expect(reloaded.updated_at).not_to be_blank
56
+ expect(reloaded.created_at).not_to be_kind_of Array
57
+ expect(reloaded.updated_at).not_to be_kind_of Array
58
+ end
59
+
60
+ it "doesn't override a resource that already has an ID" do
61
+ book = persister.save(resource: resource_class.new(title: ['Foo']))
62
+ id = book.id
63
+ output = persister.save(resource: book)
64
+ expect(output.id).to eq id
65
+ end
66
+
67
+ it "can find that resource again" do
68
+ id = persister.save(resource: resource).id
69
+ expect(query_service.find_by(id: id).internal_resource).to eq resource.internal_resource
70
+ end
71
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::QueryService do
7
+ before do
8
+ class Book < ActiveFedora::Base
9
+ property :title, predicate: ::RDF::Vocab::DC.title, multiple: true
10
+ end
11
+ end
12
+
13
+ after do
14
+ Object.send(:remove_const, :Book)
15
+ end
16
+
17
+ subject(:query_service) { described_class.new(adapter: adapter) }
18
+ let(:adapter) { Wings::Valkyrie::MetadataAdapter.new }
19
+ let(:persister) { Wings::Valkyrie::Persister.new(adapter: adapter) }
20
+ let(:af_resource_class) { Book }
21
+ let(:resource_class) { Wings::ModelTransformer.to_valkyrie_resource_class(klass: af_resource_class) }
22
+ let(:resource) { resource_class.new(title: ['Foo']) }
23
+
24
+ # it_behaves_like "a Valkyrie query provider"
25
+
26
+ it 'responds to expected methods' do
27
+ expect(subject).to respond_to(:find_by).with_keywords(:id)
28
+ expect(subject).to respond_to(:resource_factory)
29
+ end
30
+
31
+ describe ".find_by" do
32
+ it "returns a resource by id or string representation of an id" do
33
+ book = persister.save(resource: resource)
34
+
35
+ found = query_service.find_by(id: book.id)
36
+ expect(found.id).to eq book.id
37
+ # expect(found).to be_persisted
38
+
39
+ found = query_service.find_by(id: book.id.to_s)
40
+ expect(found.id).to eq book.id
41
+ # expect(found).to be_persisted
42
+ end
43
+
44
+ it "returns a Valkyrie::Persistence::ObjectNotFoundError for a non-found ID" do
45
+ expect { query_service.find_by(id: ::Valkyrie::ID.new("123123123")) }.to raise_error ::Valkyrie::Persistence::ObjectNotFoundError
46
+ end
47
+
48
+ it 'raises an error if the id is not a Valkyrie::ID or a string' do
49
+ expect { query_service.find_by(id: 123) }.to raise_error ArgumentError
50
+ end
51
+ end
52
+
53
+ describe ".register_query_handler" do
54
+ before do
55
+ class QueryHandler
56
+ def self.queries
57
+ [:find_by_user_id]
58
+ end
59
+
60
+ attr_reader :query_service
61
+ def initialize(query_service:)
62
+ @query_service = query_service
63
+ end
64
+
65
+ def find_by_user_id
66
+ 1
67
+ end
68
+ end
69
+ end
70
+
71
+ after do
72
+ Object.send(:remove_const, :QueryHandler)
73
+ end
74
+
75
+ it "can register a query handler" do
76
+ query_service.custom_queries.register_query_handler(QueryHandler)
77
+ expect(query_service.custom_queries).to respond_to :find_by_user_id
78
+ expect(query_service.custom_queries.find_by_user_id).to eq 1
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'wings'
4
+
5
+ RSpec.describe Wings::Valkyrie::ResourceFactory do
6
+ subject(:factory) { described_class.new(adapter: adapter) }
7
+ let(:adapter) { Valkyrie::Persistence::Memory::MetadataAdapter.new }
8
+ let(:work) { GenericWork.new }
9
+
10
+ describe '#to_resource' do
11
+ it 'returns a valkyrie_resource for the object' do
12
+ expect(factory.to_resource(object: work)).to be_a Valkyrie::Resource
13
+ end
14
+ end
15
+
16
+ describe '#from_resource' do
17
+ let(:resource) { work.valkyrie_resource }
18
+
19
+ it 'returns an ActiveFedora object' do
20
+ expect(factory.from_resource(resource: resource)).to be_a GenericWork
21
+ end
22
+
23
+ context 'with a FileSet' do
24
+ let(:resource) { file_set.valkyrie_resource }
25
+ let(:file_set) { FileSet.new }
26
+
27
+ it 'returns an ActiveFedora object' do
28
+ expect(factory.from_resource(resource: resource)).to be_a FileSet
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'wings/value_mapper'
4
+
5
+ RSpec.describe Wings::ValueMapper do
6
+ subject(:mapper) { described_class.for(value) }
7
+ let(:value) { 'a value' }
8
+ let(:uri) { RDF::URI('http://example.com/moomin') }
9
+
10
+ describe '.for' do
11
+ it 'returns a value mapper' do
12
+ expect(described_class.for(value)).to be_a described_class
13
+ end
14
+ end
15
+
16
+ describe '.result' do
17
+ it 'returns the value by default' do
18
+ expect(mapper.result).to eq value
19
+ end
20
+
21
+ context 'with an ActiveTriples::RDFSource URI value' do
22
+ let(:value) { ActiveTriples::Resource.new(uri) }
23
+
24
+ it 'casts to the RDF term' do
25
+ expect(mapper.result).to eq uri
26
+ end
27
+ end
28
+
29
+ context 'with an ActiveTriples::RDFSource bnode value' do
30
+ let(:value) { ActiveTriples::Resource.new(node) }
31
+ let(:node) { RDF::Node.new }
32
+
33
+ it 'somehow manages to map the node?'
34
+ end
35
+
36
+ context 'with an ActiveTriples::Relation value' do
37
+ let(:value) { work.source }
38
+ let(:work) { GenericWork.new(source: cast_values) }
39
+ let(:cast_values) { ['moomin', 1.125, :moomin, Time.now.utc, false, uri] }
40
+
41
+ it 'casts internal values' do
42
+ expect(mapper.result).to contain_exactly(*cast_values)
43
+ end
44
+ end
45
+
46
+ context 'with a URI value'
47
+ context 'with a blank node value'
48
+ context 'with a boolean value'
49
+ context 'with a date value'
50
+ context 'with a numeric value'
51
+
52
+ context 'with an enumerable value' do
53
+ let(:value) { ['a value'] }
54
+
55
+ it 'maps internal values' do
56
+ expect(mapper.result).to eq value
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,8 @@
1
+ require 'spec_helper'
2
+ require 'wings'
3
+
4
+ RSpec.describe Wings do
5
+ it 'adds mixin to AF::Base' do
6
+ expect(GenericWork.new).to respond_to :valkyrie_resource
7
+ end
8
+ end
@@ -1,4 +1,6 @@
1
- gem 'hyrax', '3.0.0-beta1'
1
+ # Hack for https://github.com/rails/rails/issues/35153
2
+ gsub_file 'Gemfile', /^gem ["']sqlite3["']$/, 'gem "sqlite3", "~> 1.3.0"'
3
+ gem 'hyrax', '3.0.0-beta2'
2
4
  run 'bundle install'
3
5
  generate 'hyrax:install', '-f'
4
6
  rails_command 'db:migrate'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyrax
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0.pre.beta1
4
+ version: 3.0.0.pre.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2018-11-15 00:00:00.000000000 Z
17
+ date: 2019-03-11 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: rails
@@ -36,20 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '11.5'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 11.5.2
39
+ version: '12.0'
43
40
  type: :runtime
44
41
  prerelease: false
45
42
  version_requirements: !ruby/object:Gem::Requirement
46
43
  requirements:
47
44
  - - "~>"
48
45
  - !ruby/object:Gem::Version
49
- version: '11.5'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 11.5.2
46
+ version: '12.0'
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: almond-rails
55
49
  requirement: !ruby/object:Gem::Requirement
@@ -182,14 +176,14 @@ dependencies:
182
176
  requirements:
183
177
  - - "~>"
184
178
  - !ruby/object:Gem::Version
185
- version: '0.1'
179
+ version: '0.4'
186
180
  type: :runtime
187
181
  prerelease: false
188
182
  version_requirements: !ruby/object:Gem::Requirement
189
183
  requirements:
190
184
  - - "~>"
191
185
  - !ruby/object:Gem::Version
192
- version: '0.1'
186
+ version: '0.4'
193
187
  - !ruby/object:Gem::Dependency
194
188
  name: dry-transaction
195
189
  requirement: !ruby/object:Gem::Requirement
@@ -300,14 +294,14 @@ dependencies:
300
294
  requirements:
301
295
  - - ">="
302
296
  - !ruby/object:Gem::Version
303
- version: 10.5.0
297
+ version: 10.6.1
304
298
  type: :runtime
305
299
  prerelease: false
306
300
  version_requirements: !ruby/object:Gem::Requirement
307
301
  requirements:
308
302
  - - ">="
309
303
  - !ruby/object:Gem::Version
310
- version: 10.5.0
304
+ version: 10.6.1
311
305
  - !ruby/object:Gem::Dependency
312
306
  name: hydra-works
313
307
  requirement: !ruby/object:Gem::Requirement
@@ -554,16 +548,22 @@ dependencies:
554
548
  name: qa
555
549
  requirement: !ruby/object:Gem::Requirement
556
550
  requirements:
557
- - - "~>"
551
+ - - ">="
558
552
  - !ruby/object:Gem::Version
559
- version: '2.0'
553
+ version: '2'
554
+ - - "<"
555
+ - !ruby/object:Gem::Version
556
+ version: '4'
560
557
  type: :runtime
561
558
  prerelease: false
562
559
  version_requirements: !ruby/object:Gem::Requirement
563
560
  requirements:
564
- - - "~>"
561
+ - - ">="
565
562
  - !ruby/object:Gem::Version
566
- version: '2.0'
563
+ version: '2'
564
+ - - "<"
565
+ - !ruby/object:Gem::Version
566
+ version: '4'
567
567
  - !ruby/object:Gem::Dependency
568
568
  name: rails_autolink
569
569
  requirement: !ruby/object:Gem::Requirement
@@ -696,6 +696,20 @@ dependencies:
696
696
  - - "~>"
697
697
  - !ruby/object:Gem::Version
698
698
  version: '4.1'
699
+ - !ruby/object:Gem::Dependency
700
+ name: valkyrie
701
+ requirement: !ruby/object:Gem::Requirement
702
+ requirements:
703
+ - - "~>"
704
+ - !ruby/object:Gem::Version
705
+ version: 2.0.0.pre.rc3
706
+ type: :runtime
707
+ prerelease: false
708
+ version_requirements: !ruby/object:Gem::Requirement
709
+ requirements:
710
+ - - "~>"
711
+ - !ruby/object:Gem::Version
712
+ version: 2.0.0.pre.rc3
699
713
  - !ruby/object:Gem::Dependency
700
714
  name: capybara
701
715
  requirement: !ruby/object:Gem::Requirement
@@ -730,6 +744,20 @@ dependencies:
730
744
  - - "~>"
731
745
  - !ruby/object:Gem::Version
732
746
  version: 0.3.0
747
+ - !ruby/object:Gem::Dependency
748
+ name: chromedriver-helper
749
+ requirement: !ruby/object:Gem::Requirement
750
+ requirements:
751
+ - - "~>"
752
+ - !ruby/object:Gem::Version
753
+ version: '2.1'
754
+ type: :development
755
+ prerelease: false
756
+ version_requirements: !ruby/object:Gem::Requirement
757
+ requirements:
758
+ - - "~>"
759
+ - !ruby/object:Gem::Version
760
+ version: '2.1'
733
761
  - !ruby/object:Gem::Dependency
734
762
  name: database_cleaner
735
763
  requirement: !ruby/object:Gem::Requirement
@@ -750,14 +778,14 @@ dependencies:
750
778
  requirements:
751
779
  - - "~>"
752
780
  - !ruby/object:Gem::Version
753
- version: '2.0'
781
+ version: '2.2'
754
782
  type: :development
755
783
  prerelease: false
756
784
  version_requirements: !ruby/object:Gem::Requirement
757
785
  requirements:
758
786
  - - "~>"
759
787
  - !ruby/object:Gem::Version
760
- version: '2.0'
788
+ version: '2.2'
761
789
  - !ruby/object:Gem::Dependency
762
790
  name: equivalent-xml
763
791
  requirement: !ruby/object:Gem::Requirement
@@ -1054,20 +1082,6 @@ dependencies:
1054
1082
  - - "<="
1055
1083
  - !ruby/object:Gem::Version
1056
1084
  version: 3.5.0
1057
- - !ruby/object:Gem::Dependency
1058
- name: chromedriver-helper
1059
- requirement: !ruby/object:Gem::Requirement
1060
- requirements:
1061
- - - "<"
1062
- - !ruby/object:Gem::Version
1063
- version: '2.0'
1064
- type: :development
1065
- prerelease: false
1066
- version_requirements: !ruby/object:Gem::Requirement
1067
- requirements:
1068
- - - "<"
1069
- - !ruby/object:Gem::Version
1070
- version: '2.0'
1071
1085
  description: Hyrax is a featureful Samvera front-end based on the latest and greatest
1072
1086
  Samvera software components.
1073
1087
  email:
@@ -1719,6 +1733,7 @@ files:
1719
1733
  - app/services/hyrax/tolerant_select_service.rb
1720
1734
  - app/services/hyrax/user_stat_importer.rb
1721
1735
  - app/services/hyrax/versioning_service.rb
1736
+ - app/services/hyrax/visibility_intention.rb
1722
1737
  - app/services/hyrax/work_form_service.rb
1723
1738
  - app/services/hyrax/work_query_service.rb
1724
1739
  - app/services/hyrax/work_thumbnail_path_service.rb
@@ -2323,7 +2338,9 @@ files:
2323
2338
  - lib/hyrax/transactions.rb
2324
2339
  - lib/hyrax/transactions/container.rb
2325
2340
  - lib/hyrax/transactions/create_work.rb
2341
+ - lib/hyrax/transactions/destroy_work.rb
2326
2342
  - lib/hyrax/transactions/steps/apply_permission_template.rb
2343
+ - lib/hyrax/transactions/steps/destroy_work.rb
2327
2344
  - lib/hyrax/transactions/steps/ensure_admin_set.rb
2328
2345
  - lib/hyrax/transactions/steps/ensure_permission_template.rb
2329
2346
  - lib/hyrax/transactions/steps/save_work.rb
@@ -2343,6 +2360,16 @@ files:
2343
2360
  - lib/tasks/reindex.rake
2344
2361
  - lib/tasks/stats_tasks.rake
2345
2362
  - lib/tasks/workflow.rake
2363
+ - lib/wings.rb
2364
+ - lib/wings/active_fedora_converter.rb
2365
+ - lib/wings/model_transformer.rb
2366
+ - lib/wings/resource_factory.rb
2367
+ - lib/wings/valkyrie/metadata_adapter.rb
2368
+ - lib/wings/valkyrie/persister.rb
2369
+ - lib/wings/valkyrie/query_service.rb
2370
+ - lib/wings/valkyrie/resource_factory.rb
2371
+ - lib/wings/valkyrizable.rb
2372
+ - lib/wings/value_mapper.rb
2346
2373
  - spec/.gitignore
2347
2374
  - spec/abilities/ability_spec.rb
2348
2375
  - spec/abilities/admin_ability_spec.rb
@@ -2478,6 +2505,7 @@ files:
2478
2505
  - spec/factories/workflows.rb
2479
2506
  - spec/factory_tests/adminsets_factory_spec.rb
2480
2507
  - spec/factory_tests/collections_factory_spec.rb
2508
+ - spec/features/actor_stack_spec.rb
2481
2509
  - spec/features/admin_spec.rb
2482
2510
  - spec/features/batch_create_spec.rb
2483
2511
  - spec/features/batch_edit_spec.rb
@@ -2571,7 +2599,9 @@ files:
2571
2599
  - spec/helpers/hyrax/trophy_helper_spec.rb
2572
2600
  - spec/helpers/hyrax_helper_spec.rb
2573
2601
  - spec/hyrax/transactions/create_work_spec.rb
2602
+ - spec/hyrax/transactions/destroy_work_spec.rb
2574
2603
  - spec/hyrax/transactions/steps/apply_permission_template_spec.rb
2604
+ - spec/hyrax/transactions/steps/destroy_work_spec.rb
2575
2605
  - spec/hyrax/transactions/steps/ensure_admin_set_spec.rb
2576
2606
  - spec/hyrax/transactions/steps/ensure_permission_template_spec.rb
2577
2607
  - spec/hyrax/transactions/steps/save_work_spec.rb
@@ -2859,6 +2889,7 @@ files:
2859
2889
  - spec/services/hyrax/tolerant_select_service_spec.rb
2860
2890
  - spec/services/hyrax/user_stat_importer_spec.rb
2861
2891
  - spec/services/hyrax/versioning_service_spec.rb
2892
+ - spec/services/hyrax/visibility_intention_spec.rb
2862
2893
  - spec/services/hyrax/work_query_service_spec.rb
2863
2894
  - spec/services/hyrax/workflow/action_taken_service_spec.rb
2864
2895
  - spec/services/hyrax/workflow/activate_object_spec.rb
@@ -3040,6 +3071,14 @@ files:
3040
3071
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
3041
3072
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
3042
3073
  - spec/views/shared/select_work_type_modal.html.erb_spec.rb
3074
+ - spec/wings/active_fedora_converter_spec.rb
3075
+ - spec/wings/model_transformer_spec.rb
3076
+ - spec/wings/valkyrie/metadata_adapter_spec.rb
3077
+ - spec/wings/valkyrie/persister_spec.rb
3078
+ - spec/wings/valkyrie/query_service_spec.rb
3079
+ - spec/wings/valkyrie/resource_factory_spec.rb
3080
+ - spec/wings/value_mapper_spec.rb
3081
+ - spec/wings_spec.rb
3043
3082
  - tasks/hyrax_dev.rake
3044
3083
  - template.rb
3045
3084
  - vendor/assets/fonts/fontawesome-webfont.svg
@@ -3079,8 +3118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
3079
3118
  - !ruby/object:Gem::Version
3080
3119
  version: 1.3.1
3081
3120
  requirements: []
3082
- rubyforge_project:
3083
- rubygems_version: 2.6.13
3121
+ rubygems_version: 3.0.1
3084
3122
  signing_key:
3085
3123
  specification_version: 4
3086
3124
  summary: Hyrax is a front-end based on the robust Samvera framework, providing a user
@@ -3224,6 +3262,7 @@ test_files:
3224
3262
  - spec/factories/workflows.rb
3225
3263
  - spec/factory_tests/adminsets_factory_spec.rb
3226
3264
  - spec/factory_tests/collections_factory_spec.rb
3265
+ - spec/features/actor_stack_spec.rb
3227
3266
  - spec/features/admin_spec.rb
3228
3267
  - spec/features/batch_create_spec.rb
3229
3268
  - spec/features/batch_edit_spec.rb
@@ -3317,7 +3356,9 @@ test_files:
3317
3356
  - spec/helpers/hyrax/trophy_helper_spec.rb
3318
3357
  - spec/helpers/hyrax_helper_spec.rb
3319
3358
  - spec/hyrax/transactions/create_work_spec.rb
3359
+ - spec/hyrax/transactions/destroy_work_spec.rb
3320
3360
  - spec/hyrax/transactions/steps/apply_permission_template_spec.rb
3361
+ - spec/hyrax/transactions/steps/destroy_work_spec.rb
3321
3362
  - spec/hyrax/transactions/steps/ensure_admin_set_spec.rb
3322
3363
  - spec/hyrax/transactions/steps/ensure_permission_template_spec.rb
3323
3364
  - spec/hyrax/transactions/steps/save_work_spec.rb
@@ -3605,6 +3646,7 @@ test_files:
3605
3646
  - spec/services/hyrax/tolerant_select_service_spec.rb
3606
3647
  - spec/services/hyrax/user_stat_importer_spec.rb
3607
3648
  - spec/services/hyrax/versioning_service_spec.rb
3649
+ - spec/services/hyrax/visibility_intention_spec.rb
3608
3650
  - spec/services/hyrax/work_query_service_spec.rb
3609
3651
  - spec/services/hyrax/workflow/action_taken_service_spec.rb
3610
3652
  - spec/services/hyrax/workflow/activate_object_spec.rb
@@ -3786,3 +3828,11 @@ test_files:
3786
3828
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
3787
3829
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
3788
3830
  - spec/views/shared/select_work_type_modal.html.erb_spec.rb
3831
+ - spec/wings/active_fedora_converter_spec.rb
3832
+ - spec/wings/model_transformer_spec.rb
3833
+ - spec/wings/valkyrie/metadata_adapter_spec.rb
3834
+ - spec/wings/valkyrie/persister_spec.rb
3835
+ - spec/wings/valkyrie/query_service_spec.rb
3836
+ - spec/wings/valkyrie/resource_factory_spec.rb
3837
+ - spec/wings/value_mapper_spec.rb
3838
+ - spec/wings_spec.rb