hyrax-v5.0.0
What's Changed
tl;dr Valkyrie!
Hyrax v5 is the culmination of effort over the past several years by numerous members of the Samvera community to convert Hyrax to use Valkyrie and move away from ActiveFedora. There have been over 1200 commits since Hyrax v4, but the effort began well before that release. Thank you everyone who has contributed to this massive effort!
When generating a new Hyrax application, Valkyrie is now the default. Use of ActiveFedora is deprecated and will be removed in a future major release. Hyrax v5 is intended to be the bridge with which existing repositories can migrate their data. Postgres is the supported Valkyrie persistence adapter in v5.0. The Fedora 6 adapter is still experimental, and will be promoted to supported in a forthcoming v5.x release along with improved migration tooling.
This release also raises the minimum supported version of Ruby to 3.2 and Rails to 6.1
Upgrade Notes
- Valkyrie resources are now the default model type specified in
Hyrax.config
. Applications using ActiveFedora will need to specify the correct models for collections, admin sets, and file sets.
Major Changes (Potentially breaking changes)
- remove fallback behavior for dropped InitializeWorkflowActor in #6144
- rename object.file.updated to file.updated in #6167
- remove deprecated Collections::MigrationService in #6201
- remove various deprecated methods with 4.0 and earlier time horizons in #6203
- drop support for Ruby before 3.2 in #6183
- Fix file manager sorting for Koppie in #6217
- Hide versioning UI when unsupported by adapter in #6257
- Bump min rails version to 6.1 and align dassie/koppie gems in #6315
- Improve the Hyrax form API in #6419
- Refactor Valkyrie indexer API (to match forms) in #6441
- Set valkyrie models as default in Hyrax.config in #6715
- Make generated app use Valkyrie in #6687
New Features and Non-breaking Changes
- add extension behavior for FileSet show view partials in #6076
- Hyrax-5933 - Review submission support paging in #5999
- Stop testing middle ruby versions in #6105
- use TimeService in batch edits in #6149
- retain the default listeners for future unsubscribing in #5781
- add 4 new fields to hyrax counter metric table in #6158
- Fits Servlet is a Substantial Speed Bump in #6160
- Set geonames usernames using environment variable in #6159
- Counter metrics table in #6124
- use locally defined conf to map mime_types derivative methods in #6238
- Add method to VersioningService to detect support in #6239
- Refactor mime types lookup to ignore Dry::Types::Result::Failure in #6292
- refine Hyrax::EmbargoSearch behavior to find only enforced embargoes in #6241
- Enable access of form classes, not just instances in #6317
- Default sort order of notifications page in #6327
- Add additional aria-labels to form elements in #6328
- port most FileSetPresenter specs to Valkyrie in #6285
- Redis current is depericated, replace in a similar manner to other gems in #6322
- Valkyrie Fedora metadata/storage adapter compatibility in #6329
- Fix based_near/Location for resource models in #6335
- Upgrade Valkyrie to 3.1.1 in #6340
- update dry-rb dependencies in #6363
- Perform characterization on valkyrie resources in a job in #6370
- Use a hashed version identifier in IIIF manifest in #6368
- add a listener generator in #6385
- Make form classes configurable in #6395
- Clarify purpose of FileSetFileService in #6399
- Added 'generator' meta-tag to main layout 'head' partial in #6397
- ♻️ Extract Hyrax::GroupBehavior in #6427
- Collection Location field fixes; Valkyrize collection dashboard feature spec in #6439
- Valkyrize downloads_controller_spec; Improved Range and Cache-Control features in #6447
- Support all PCDM terms in
Hyrax::FileMetadata::Use
in #6499 - Use member_ids_ssim instead of file_set_ids_ssim in #6513
- ♻️ Remove lonely mixin in #6636
- ♻️ Extract Action Logic for improved composibility in #6644
- ♻️ Leverage more of Blacklight's Solr URL in #6647
- 🧹 Make public a method used in Hyku in #6656
- 🎁 Expose Hyrax's factories to downstream apps in #6664
- 🧹 Add current_year for Copyright in #6665
- Extract hyku solr connection in #6666
- Extract fault tolerant event handling in #6658
- keep the config info handy so you can do things like DigitalInstantia… in #6659
- 🐛 Restore
qt: 'standard'
to SolrService in #6677 - form save failure error message improvements in #6679
- Adding feature limit class attribute in #6680
- 🧹 Expose Hyrax.config.use_valkyrie= in #6686
- ♻️ Extracting naming container in #6694
- ♻️ Favor existing method call over custom in #6705
- 🎁 Publish membership update event in #6711
Deprecation Notices
- remove deprecated OrcidValidator.match in #6230
- remove deprecated argument from CollectionBrandingInfo#delete in #6231
- Remove deprecated .create_default_admin_set method in #6350
- Remove deprecated
available_child_collections
andavailable_parent_collections
in #6375 - Deprecate use of ActiveFedora and Wings in #6374
- Remove deprecated
reset_access_controls!
in #6376 - Remove deprecated
Collection#collection_type
in #6377 - deprecate
Statistics::QueryService
in #6400
Bug Fixes
- contribute back: missing user graph in #6092
- Initialize query_service before tests in #6106
- 5844 deactivated embargoes in #6098
- 5844-save-embargoes-better in #6118
- Let Rails CLI that Hyrax is still an Engine in #6123
- 5844-set-embargo-date-as-datetime in #6117
- 5573-one-step-workflow in #6112
- Remove
bin/rails
to fix nurax deploys in #6146 - add PermissionTemplate application to the
work_create
transaction in #6145 - cast form_params[:admin_set_id] to a single value before using in #6151
- wings: bootstrap DefaultWork with CoreMetadata in #6150
- Don't clear embargo dates while adding user to admin participants list. in #6163
- Fix db_migrate service failing to find db-migrate-seed.sh in #6220
- Revert "dassie: update pg image, use admin user to install pg extensions" in #6219
- Reindex the work during derivative creation if it is the work's thumbnail in #6212
- test behavior after a published Fixity check failure on Valkyrie in #6259
- Don't force "Collection" model filter from the view in #6273
- remove bin/rails from dockerfile copy in #6288
- Wings reflections handling in #6298
- do not fall back to generic resourceform if there is a syntax error in #6299
- bump dry logic to a version that is ruby 3.x compatibile in #6313
- make valkyrie solr adapter take full url argument in #6300
- Delete unused _user_util_links_extra.html.erb in #6320
- refine Hyrax::LeaseService behavior to find only enforced leases in #6330
- Fix work deletion in #6336
- Provide default for characterization_options in #6356
- Collection and sidebar style fixes in #6360
- Review and Approval panel style fixes in #6364
- Fixes the swapping of Thumbnail and Rep. Media per work (#6361). in #6371
- Fix link to user's works on dashboard in #6373
- Fix user links menu running off right side of page in #6381
- drop explicit dry-struct dependency in #6383
- Sidebar entry focus color fix in #6382
- support legacy "Collection" and "AdminSet" in SolrDocumentBehavior in #6394
- Fix instance variable used for admin set form in #6398
- Fix collection sort by drop down in #6408
- Valkyrize collection feature spec in #6412
- Don’t require
::Collection
forfilter_by_type
in #6414 - Only default admin_set_id when it is unset in #6440
- Rows not explicitly set warning for FileSets in #6442
- Valkyrize admin_sets_controller_spec; Fixes default AdminSet check in #6449
- Fix form/indexer builder configuration in #6462
- Don’t require
::Collection
for search builders in #6479 - Move riiif dependent code to the generated riiif initializer in #6495
- Add support for valkyrie resources to Ability in #6502
- Use the catalog's facet_limit partial in #6515
- Add change_depositor step to fix valkyrie batch deposit as a proxy depositor in #6524
- Fix save button remaining inactive after upload completes (with passive deposit agreements) in #6530
- Remove empty “find_by_collection_type” custom query in #6538
- Update Gemfile for bundler 2.5 in #6570
- Fix search results for works with matching fileset keywords in #6645
- Add FileMetadata.to_rdf_representation matching recent Resource change in #6646
- 🐛 Favor Hyrax::SolrService where possible in #6651
- Change embargo/lease ID types to fix nil values being converted to blank strings in #6652
- Rescue exception when collection is missing in #6667
- 🐛 Fix Hyrax::ChangeSet.inspect method in #6668
- 🐛 Remove subtle timing error in ActorStack coercion in #6670
- 🧹 Add title to CollapsableSectionPresenter in #6657
- ♻️ Favor Hyrax.query_service over method chaining in #6671
- ♻️ Remove bug when no date given; and improve error messaging in #6672
- Quality of life view improvements in #6663
- Repurpose
MemberCleanupListener
for parent/child in #6674 - Adjust job enqueue timing in #6681
- Fixes for Zeitwerk code loading in #6682
- 🧹 Add autoload for Forms in #6685
- 🐛 internal_resource and to_rdf_representation are assumptive in #6683
- 🐛 Favor helper method over instance variable in #6691
- Add conditional to
.fileset_for_directives
in #6695 - 🐛 Create admin set of configured type in #6701
- 🐛 Favor fault tolerant comparison in #6706
- ♻️ Favor source_type config check in #6707
- 🐛 Odds and Ends in #6708
- ♻️ DefaultWork coercion leverages valkyrie_class in #6710
- 🐛 Account for String and Valkyrie::ID Permissions in #6712
- 🐛 Fix typo in #6713
- New query strategy to join FileSet solr documents in #6727
- Prevent unauthenticated access to /dashboard/collections/ in #6726
- Application generation fixes in #6728
Valkyrie Progress
- add Hyrax::FileSet to FileSetSearchBuilder model search filter in #6083
- Fix counts of works and collections on a user's show page - #5568 in #6087
- #5567 View All Collections button in #6082
- 5594-single-membership-error-messages in #6089
- thumbnails and other derivatives were not stored in the path we expected them to be in #6091
- 5794 download file redux in #5987
- 5575 item actions edit in #6090
- Valkyrie: populate correct collection when depositing new works through collection in #6084
- Hyrax-5844 - Cannot remove embargo from work - 2 in #5871
- thumbnails are by id in pg version, not by alternate id in #6101
- #5798 Valkyrie: Show all collection descriptive metadata in #6103
- Give IIIF Manifests Some Wings in #6102
- 5592 dashboard statistics page error in #6088
- 6126 deactivated leases in #6127
- 5844 embargo specs in #6114
- extracted text for valkyrie and wings in #6110
- never try to clean ActiveFedora if Wings is disabled in #6147
- Fix IIIF manifests when the presenter model is a SolrDocument in #6152
- Valkyrize batch editing in #6148
- skip ActiveFedora specs if
disable_wings
is on in #6169 - don't run AF Works::MigrationService specs if
disable_wings
in #6202 - disable
spec/wings_spec.rb
whendisable_wings
is true in #6191 - disable CreateDerivativesJob tests when
disable_wings
is true in #6192 - refactor ChangeDepositorService specs to use valkyrie for setup in #6199
- skip Actor Stack specs when disable_wings is flagged in #6184
- disable generated Controller specs for AF models if
disable_wings
in #6188 - skip AF model specs when disable_wings is flagged in #6185
- refactor CollectionMemberService specs to use Valkyrie for setup in #6173
- don't test AF path in
InheritPermissionsJob
whendisable_wings
in #6214 - disable
AttachFilesToWorkJob
specs ifdisable_wings
in #6213 - don't test AF path in
FileSetAttachedEventJob
whendisable_wings
in #6215 - skip
MembersPermissionJobBehavior
AF tests whendisable_wings
in #6216 - disable AF integration specs for ThumbnailPathService if
disable_wings
in #6200 - refactor MulitpleMembershipChecker specs to always use valkyrie setup in #6209
- use Valkryie for all test setup in edit_permissions_service_spec in #6172
- Valkyrie publish file.characterized event for derivative creation in #6180
- Fix single use links for Valkyrie. in #6226
- use Valkyrie for test setup on SolrQueryService specs in #6233
- use Valkyrie to setup AdminSetService specs in #6240
- mark generic_work_abilities_spec ActiveFedora only in #6243
- mark GenericWorkIndexer specs as ActiveFedora only in #6246
- mark Hyrax Callbacks tests as :active_fedora in #6247
- mark JobIoWrapper specs as ActiveFedora only in #6245
- Revert PR 6103: #5798 Valkyrie: Show all collection descriptive metadata in #6250
- make hyrax_helper_spec pass on .koppie in #6248
- make SingleUseLinksController use valkyrie for spec setup in #6244
- use Valkyrie for setup on PermissionTemplateApplicator in #6251
- Save permission attributes for FileSet edit. in #6236
- never set
metadata/storage_adapter
to wings or AF if disable_wings in #6256 - don't test legacy CharacterizeJob in
.koppie
in #6263 - don't test ActiveFedora specific VersioningService tests on
.koppie
in #6264 - skip ActiveFedora specific setup and tests for CollectionAbility in #6262
- skip more Wings specs in #6258
- skip
IngestLocalFileJob
in.koppie
in #6260 - only use specialized
Wings::WorkSearchBuilder
if Wings is enabled in #6261 - Display all descriptive metadata for collections on koppie. in #6267
- remove Hyrax::RoleManagement from
.koppie
in #6272 - update UserProfilePresenter to use Valkyrie setup in #6275
- Correctly format file set id in data label attribute in #6278
- use Valkyrie for test setup on Collections:PremissionsService specs in #6274
- mark AF tests for PropagateChangeDepositorJob as
:active_fedora
in #6282 - fix remaining test errors for collection type on koppie in #6268
- use valkyrie for setup on _form_relationships partial spec in #6281
- make ResourceVisibilityPropagator use Valkyrie for setup in #6279
- disable AF only specs for
Hyrax::ChildTypes
in #6287 - skip Wings specific
SolrDocumentBehavior
tests ifdisable_wings
in #6187 - Generate terms and build permitted params for valkyrie ResourceBatchEditForm dynamically. in #6289
- Add correct mime type to a/v derivatives saved via valkyrie in #6296
- Fix audio and video playback through valkyrie codepaths in #6297
- Fix batch add new works doesn't add new works in #6266
- update CollectionType GlobalID update task to use valkyrie in #6242
- make
Hyrax::Identifier::Dispatcher
support Valkryie in #6252 - Show basic metadata fields for generic work in #6321
- Versioning w/ Valkyrie in #6316
- disable WorkFormService specs in .koppie in #6255
- Add config for valkyrie fedora and "sirenia" compose file in #6331
- Fix lease/embargo controller and specs in koppie in #6341
- Adds a permissive schema to the Fedora Valkyrie adapter (#6332). in #6338
- Pass our ch12n config to the ch12n service and enable fits_servlet in #6345
- Fix Valkyrie base view specs in #6344
- Convert items API to wings/valkyrie in #6346
- Make fileset representative_id and thumbnail_id readonly in form in #6355
- Removes FileSet related objects when work deleted (#6334). in #6357
- Fix formatter specs in #6365
- Fixes the deletion of collections 500 (#6362). in #6367
- Fix valkyrie resource json response in #6372
- refactor features/delete_work_spec to use valkyrie setup in #6386
- use valkyrie for setup in fixity_checks_controller_spec in #6387
- disable
work_form_spec
when AF is disabled in #6388 - Fix by_resource_type_spec.rb when using Valkyrie in #6389
- #5098 Valkyrize FileSet Generator in #6392
- disable Hyrax::FileSetVisibilityPropagator unless using ActiveFedora in #6393
- flag FileSetForm specs as :active_fedora in #6401
- Updates the works in proxies and abilities spec to valkyrie. in #6403
- use valkyrie factories to setup WorkflowListener specs in #6402
- use valkyrie for setup on spec/features/browse_dashboard_works_spec in #6404
- use #to_a in monographs_controller_spec for enumerable compatibility in #6405
- flag legacy tests in work_form_helper_spec in #6406
- flag legacy specs in thumbnail_path_service_spec in #6407
- Fix embargo expiry job spec in #6410
- Turns off AF testing in koppie testing for nested_collections_search_builder_spec. in #6409
- Attempts to fix the failing specs for shares_controller_spec. in #6411
- Skip work_usage_spec.rb tests for Valkyrie in #6417
- Updates tests where mock_model errs. in #6420
- Updates select_type_presenter_spec.rb for both valkyrie and AF. in #6418
- Updates create_work_spec for both valkyrie and AF. in #6416
- Use class methods for Valkyrie model duck‐typing in #6421
- Fixes more mock model complications in #6422
- Fix search_spec.rb in #6423
- Last batch of mock_model rspec fixes. in #6425
- Adds :active_fedora tag to batch_upload_form_spec. in #6434
- Adds :active_fedora tag to revoke_edit_job_spec for AF-specific test. in #6432
- Adds :active_fedora tag to change_content_depositor_service_spec again. in #6431
- Refactors collection_presenter_spec to cleanly split AF and Valkyrie testing. in #6430
- Fix ownership_transfer_spec.rb tests for Valkyrie in #6429
- Refactors _subject.html.erb_spec.rb to cleanly split AF and Valkyrie testing. in #6433
- Updates create_child_work_spec.rb for valkyrie. in #6428
- Adapt more record view specs for valkyrie in #6438
- Fix trophies_controller_spec.rb tests for Valkyrie in #6426
- Valkyrie conversion of collection_members_controller_spec in #6444
- Valkyrie conversion of permission_template_accesses_controller_spec.rb in #6445
- Edit catalog_search_spec.rb for Valkyrie compatibility in #6443
- Updates nest_collection_form_spec with :active_fedora tag. in #6448
- Fix content_deposit_event_job_spec.rb in #6452
- Valkyrizes spec/authorities/qa/authorities/collections_spec.rb. in #6450
- Valkyrizes spec/abilities/ability_spec.rb. in #6454
- Fix content_delete_event_job_spec.rb in #6451
- Edit content_deposit_event_job_spec.rb in #6455
- Fix managed_works_service_spec.rb in #6456
- Updates iiif_manifest_presenter_spec for Valkyrie. in #6446
- Valkyrizes spec/models/hyrax/permission_template_spec.rb. in #6457
- Valkyrizes spec/helpers/hyrax/file_set_helper_spec.rb. in #6458
- Utilizes Valkyrie patterns for grant_edit_to_depositor_spec. in #6472
- Utilizes Valkyrie patterns for find_works_spec. in #6471
- Swaps out Global ID call to Valkyrie-friendly method. in #6465
- Updates tested collection objects to Valkyrie-compliant (spec/search_builders/hyrax/collection_search_builder_spec.rb). in #6453
- Updates find_works_search_builder to allow for both id strings as well as Valkyrie id objects. in #6460
- Valkyrization: Fix failing tests in solr_service_spec.rb in #6463
- Swaps to create so that IDs are minted, allowing queries to perform. in #6466
- Marks test suite as ActiveFedora-only, since importer has no Valkyrization. in #6467
- Valkyrization: Fix failing tests in featured_work_list_spec.rb in #6468
- Valkyrization: Fix failing tests in content_update_event_job_spec.rb in #6469
- Valkyrization: Fix failing tests in content_new_version_event_job_spec.rb in #6470
- Utilizes Valkyrie patterns for collection_type_spec. in #6473
- Utilizes Valkyrie patterns for collection_types_controller_spec. in #6474
- Marks test suite as ActiveFedora-only, since indexer is only used with AF objects. in #6475
- Adds switches between AF and Valkyrie expected classes. in #6476
- Marks test suite as ActiveFedora-only, since writer relies on AF methods. in #6477
- Enqueues Job that wasn't calling. in #6478
- Utilizes Valkyrie patterns for edit_work_spec. in #6480
- Adds active_fedora tag to AF-specific test in batch_edits_controller_spec. in #6481
- Adapt citations controller spec for valkyrie resources in #6483
- Updates lease_service_spec.rb for valkyrie. in #6436
- Marks test suite as ActiveFedora-only, since presenter calls to multiple classes not Valkyrized. in #6484
- Adds active_fedora tag to AF-specific test in grant_read_job_spec. in #6485
- Valkyrization: Fix failing tests in
spec/lib/hyrax/analytics_spec.rb
in #6487 - Utilizes Valkyrie patterns for nested_collection_query_service_spec. in #6488
- Utilizes Valkyrie patterns for catalog_controller_spec. in #6482
- Adds active_fedora tag to AF-specific tests in transfers_controller_spec. in #6489
- Valkyrization: Fix failing tests in
users_spec.rb
in #6491 - Valkyrization: Fix failing tests in
admin_set_member_service_spec.rb
in #6492 - Makes spec/services/hyrax/file_set_fixity_check_service_spec.rb Dassie-only. in #6459
- Marks test suite as ActiveFedora-only, since controller calls to multiple classes not Valkyrized. in #6490
- Marks test suite as ActiveFedora-only because the alternative Valkyrie form class has its own suite. in #6494
- Valkyrization: Fix failing tests in
select_type_list_presenter_spec.rb
in #6493 - Valkyrization: Fix failing tests in
grant_edit_job_spec.rb
in #6496 - Valkyrization: Fix failing tests in
change_depositor_event_job_spec.rb
in #6497 - Valkyrization: Fix failing tests in
homepage_spec.rb
in #6504 - Adapt permission_template_form_spec for valkyire in #6508
- Fix broken attempt to intercept persister save calls in #6507
- Adapt misc controller specs for valkyrie in #6509
- Valkyrization: Fix failing tests in
solr_query_builder_service_spec.rb
in #6506 - Valkyrization: Fix failing tests in
work_create_spec.rb
in #6511 - Marks test suite as ActiveFedora-only since class is marked for deprecation. in #6512
- Adds active_fedora tag to AF-specific tests in spec/helpers/hyrax/embargo_helper_spec.rb. in #6514
- Adds active_fedora tag to AF-specific tests in collection_member_search_builder_spec and refactors. in #6516
- Adds work class swapping to spec/services/hyrax/workflow/pending_review_notification_spec.rb. in #6522
- Splits testing for spec/features/embargo_spec.rb to highlight bug. in #6520
- Valkyrizes
spec/services/hyrax/collections_service_spec.rb
. in #6527 - Marks the right form ActiveFedora only. in #6529
- Valkyrizes
spec/services/hyrax/custom_queries/navigators/parent_collections_navigator_spec.rb
. in #6531 - Valkyrization: Fix failing tests in browse_catalog_spec.rb in #6532
- Addresses Postgres' further date/time parsing (
spec/hyrax/transactions/apply_change_set_spec.rb
). in #6533 - Valkyrizes
spec/services/hyrax/statistics/depositors/summary_spec.rb
. in #6528 - Adds fileset class swapping and refactoring to
spec/models/checksum_audit_log_spec.rb
. in #6539 - Adds active_fedora tag to AF-specific tests in
spec/hyrax/transactions/steps/set_default_admin_set_spec.rb
. in #6541 - Tweaks
spec/forms/hyrax/forms/resource_form_spec.rb
to play nice with Enumerators. in #6543 - Moves test that checks AF objects with Valkyrie Ids, then Valkyrizes it in original location. in #6544
- Fixes
spec/services/hyrax/simple_schema_loader_spec.rb
by copying over sample_metadata.yaml. in #6545 - Marks
spec/views/hyrax/batch_uploads/_form.html.erb_spec.rb
as ActiveFedora-only. in #6546 - Marks
spec/jobs/fixity_check_job_spec.rb
as ActiveFedora-only. in #6547 - Adds work class swapping and refactoring to
spec/views/shared/select_work_type_modal.html.erb_spec.rb
. in #6548 - Moves test that checks AF objects with Valkyrie Ids, then Valkyries it at
spec/services/hyrax/custom_queries/navigators/child_file_sets_navigator_spec.rb
. in #6549 - Alters objects and tests to play well in Koppie for spec/services/hyrax/admin_set_create_service_spec.rb. in #6523
- Valkyrization: Fix failing tests in
by_depositor_spec.rb
in #6550 - Moves test that checks AF objects with Valkyrie Ids, then Valkyries it at
spec/services/hyrax/custom_queries/navigators/child_collections_navigator_spec.rb
. in #6551 - Valkyrizes
spec/services/hyrax/statistics/file_sets/by_format_spec.rb
. in #6552 - Valkyrizes
spec/services/hyrax/file_set_csv_service_spec.rb
. in #6553 - Marks
spec/services/hyrax/graph_exporter_spec.rb
as ActiveFedora-only. in #6554 - Valkyrizes
spec/services/hyrax/characterization/valkyrie_characterization_service_spec.rb
. in #6555 - Adds work class swapping to
spec/services/hyrax/workflow/changes_required_notification_spec.rb
. in #6556 - Allows for multiple Deprecation calls. in #6558
- Fixes enumerator comparisons and refactors. in #6560
- Valkyrizes
spec/views/hyrax/homepage/_sortable_featured.html.erb_spec.rb
. in #6562 - Requeries collection and admin_set objects in
spec/services/hyrax/collections/permissions_create_service_spec.rb
. in #6564 - Updates FileMetadata objects across environments for
spec/models/hyrax/file_metadata_spec.rb
. in #6565 - Marks ActiveFedora tests in
spec/jobs/import_url_job_spec.rb
. in #6566 - Marks ActiveFedora tests in
spec/services/hyrax/workflow/workflow_factory_spec.rb
. in #6563 - Marks ActiveFedora tests in
spec/jobs/content_restored_version_event_job_spec.rb
. in #6568 - Marks ActiveFedora tests in
spec/models/concerns/hyrax/collection_behavior_spec.rb
. in #6569 - Valkyrizes
spec/models/sipity/entity_spec.rb
. in #6561 - Converts enumerators into arrays for
spec/services/hyrax/collections/nested_collection_persistence_service_spec.rb
. in #6567 - Marks
spec/services/hyrax/statistics/collections/over_time_spec.rb
as ActiveFedora-only. in #6557 - Marks ActiveFedora tests in
spec/services/hyrax/find_objects_via_solr_service_spec.rb
. in #6571 - Marks ActiveFedora tests in
spec/indexers/hyrax/deep_indexing_service_spec.rb
. in #6572 - Marks ActiveFedora tests in
spec/indexers/hyrax/file_set_indexer_spec.rb
. in #6573 - Valkyrizes
spec/services/hyrax/collections/collection_member_search_service_spec.rb
. in #6574 - Fixes
spec/services/hyrax/workflow/grant_edit_to_depositor_spec.rb
for dassie-valkyrie-test. in #6575 - Valkyrizes
spec/views/hyrax/file_sets/_permission_form.html.erb_spec.rb
. in #6576 - Valkyrizes
spec/views/hyrax/file_sets/_permission.html.erb_spec.rb
. in #6577 - Valkyrization: Fix failing tests in
deposited_notification_spec.rb
in #6579 - Fixes failing test in
spec/views/hyrax/file_sets/media_display/_video.html.erb_spec.rb
. in #6580 - Fixes failing test in
spec/views/hyrax/file_sets/media_display/_audio.html.erb_spec.rb
. in #6581 - Makes application_name dynamically tested in
spec/views/hyrax/users/index.html.erb_spec.rb
. in #6582 - Valkyrization: Edit edit_file_spec.rb in #6526
- Valkyrizes
spec/helpers/hyrax/collections_helper_spec.rb
. in #6583 - Marks
spec/search_builders/hyrax/work_relation_spec.rb
as ActiveFedora-only. in #6585 - Marks ActiveFedora tests in
spec/features/work_show_spec.rb
. in #6584 - Valkyrizes
spec/search_builders/hyrax/dashboard/collections_search_builder_spec.rb
. in #6586 - Valkyrization: Fix failing tests in
transfers_presenter_spec.rb
in #6587 - Marks
spec/jobs/attach_files_to_work_with_ordered_members_job_spec.rb
as ActiveFedora-only. in #6588 - Accounts for Koppie-specific behavior in
spec/features/create_collection_spec.rb
. in #6589 - Marks
spec/services/hyrax/visibility_intention_applicator_spec.rb
as ActiveFedora-only. in #6590 - Makes
spec/services/hyrax/valkyrie_upload_spec.rb
friendly for both Koppie and Dassie. in #6591 - Marks ActiveFedora tests in
spec/presenters/hyrax/model_proxy_spec.rb
. in #6592 - Marks
spec/jobs/import_export_job_spec.rb
as ActiveFedora-only. in #6593 - Valkyrization: Mark
persist_directly_contained_output_file_service_spec.rb
as ActiveFedora only in #6594 - Marks
spec/services/hyrax/repository_fixity_check_service_spec.rb
as ActiveFedora-only. in #6595 - Addresses
spec/jobs/lease_expiry_job_spec.rb
and associated factories. in #6596 - Valkyrizes
spec/features/dashboard/my_works_spec.rb
. in #6598 - Marks
spec/models/concerns/hyrax/solr_document/ordered_members_spec.rb
as ActiveFedora-only. in #6597 - Valkyrization: Mark
work_query_service_spec.rb
as ActiveFedora only in #6599 - Valkyrization: Mark
move_all_works_to_admin_set_spec.rb
as ActiveFedora only in #6600 - Valkyrization: Fix failing tests in
spec/models/sipity_spec.rb
in #6601 - Valkyrizes
spec/features/iiif_manifest_spec.rb
. in #6602 - Accounts for Koppie's config in
spec/models/flipflop_spec.rb
. in #6603 - Valkyrizes
spec/services/hyrax/embargo_service_spec.rb
. in #6604 - Valkyrization: Fix failing tests in
spec/features/create_work_admin_spec.rb
in #6605 - Valkyrization: Fix failing tests in
iiif_manifest_cache_prewarm_job_spec.rb
in #6606 - Marks
spec/presenters/hyrax/member_presenter_factory_spec.rb
as ActiveFedora-only. in #6607 - Corrects
spec/search_builders/hyrax/my/collections_search_builder_spec.rb
after environment behaviors alignment. in #6608 - Adds switch for expected solr cor in
spec/valkyrie/indexing/solr/indexing_adapter_spec.rb
. in #6609 - Marks
spec/forms/hyrax/forms/batch_edit_form_spec.rb
as ActiveFedora-only. in #6610 - Valkyrization: Mark batch upload form related specs in
work_form_helper_spec.rb
as ActiveFedora only in #6615 - Accounts for Valkyrie's schema parsing dates differently in
spec/hyrax/schema_spec.rb
. in #6614 - Valkyrizes
spec/views/hyrax/batch_edits/edit.html.erb_spec.rb
. in #6613 - Converts collection in
spec/features/collection_type_spec.rb
and highlights bug. in #6612 - Valkyrizes
spec/hyrax/transactions/steps/ensure_admin_set_spec.rb
. in #6620 - Swaps to :pcdm_collection in
spec/forms/hyrax/forms/admin/collection_type_form_spec.rb
. in #6618 - Adds class name switch in
spec/services/hyrax/solr_query_service_spec.rb
. in #6619 - Marks
spec/services/hyrax/import_url_failure_service_spec.rb
as ActiveFedora-only. in #6617 - Valkyrizes
spec/features/read_only_mode_spec.rb
. in #6621 - generalize Sipity::Entity() test for solr documents over classes in #6625
- Marks ActiveFedora test in
spec/models/sipity_spec.rb
. in #6626 - Adds creator to
spec/features/lease_spec.rb
. in #6628 - Converts collections in
spec/tasks/rake_spec.rb
. in #6629 - Changes enum to array in
spec/forms/hyrax/forms/administrative_set_form_spec.rb
. in #6631 - Marks
spec/lib/hyrax/resource_sync/resource_list_writer_spec.rb
as ActiveFedora-only. in #6632 - Marks ActiveFedora tests in
spec/services/hyrax/workflow/status_list_service_spec.rb
. in #6630 - Valkyrization: Fix inconsistent test in
lease_expiry_job_spec.rb
in #6634 - Valkyrizes
spec/services/hyrax/statistics/works/count_spec.rb
. in #6633 - Valkyrizes
spec/support/features/batch_edit_actions.rb
. in #6637 - Fixes flaky test in
spec/jobs/embargo_expiry_job_spec.rb
. in #6638 - Valkyrization: Fix failing tests in
display_admin_dashboard_spec.rb
for Koppie in #6640 - Valkyrizes
spec/requests/riiif_spec.rb
. in #6641 - Valkyrization: Fix failing tests in
spec/valkyrie/indexing/solr/indexing_adapter_spec.rb
in #6639 - Switches object types based on Wings activity in
spec/features/workflow_state_changes_spec.rb
. in #6642 - Allows pending test that passes in CI but fails locally (
spec/services/hyrax/statistics/collections/over_time_spec.rb
). in #6643 - ci: add koppie build and test in #6186
- reindexing a record will clear acls and permission groups in #6324
- Valkyrization: Fix Collection Type Deletion Bug in #6654
Documentation
- Update PULL_REQUEST_TEMPLATE.md in #6094
- Prep 5.0.0.rc1 in #6224
- Document FileSet & Work Relationships in #6301
- Prep 5.0.0.rc2 in #6379
- Update CONTAINERS.md in #6390
- Update README.md in #6697
- Prep 5.0.0.rc3 in #6716
- Prep 5.0.0 in #6730
Containerization
- Bump dockerfile alpine and ruby versions in #6205
- Update Hyrax chart in #5768
- update bitnami chart dependencies in #6223
- Add postgresql port helm chart helper template in #6228
- dev-docker: only run bundle/yarn during build in #6237
- Use updated fitsservlet image in #6270
- chart: use fits chart 0.2.0 in #6271
- dassie/koppie alignment and added bundle caching in #6325
- Fix sirenia fcrepo volume location in #6358
- Dassie/Koppie/Sirenia tweaks in #6369
- chart: set default value for nginx.service in #6518
- chart: bump version to 3.5.1 in #6540
- Update Dockerfile to Ruby 3.2.3, Alpine to 3.19 in #6648
- chart: fcrepo updates, version bumps in #6692
- The helm chart says it evaluates extraEnvVars but it was not actually doing so in #6718
Tests and CI Process
- fix-solr-in-ci in #6119
- get-ci-green in #6120
- inline collections_controller_resource_spec to existing tests in #6139
- ensure
work_requires_file?
istrue
in specs that depend on it in #6142 - switch docker-compose browser engines to multiarch
seleniarm
in #6168 - test Ruby 3.2 with docker/dassie in #6174
- Update postgres in CI in #6222
- Run javascript specs on remote browser in #6210
- mark ActiveFedora-specific AdminSet ability tests as :active_fedroa in #6249
- remove tests for test only code (Factories) in #6265
- Fix several work_show_presenter specs on koppie in #6225
- Fix the failed unit test with _show_actions partial for koppie. in #6269
- Remove engine_cart in #6280
- Fix rubocop errors and add rubocop job to CircleCI config in #6284
- refactor Hyrax::LeaseHelper specs to work under koppie in #6197
- Fix kaniko builds of forked PRs in #6318
- Koppie: Short circuit specs loading of wings files in #6347
- Fix collection view specs for koppie in #6348
- Fix unreliability of batch_edit_spec.rb in #6413
- Fix valk specs and mark AF specs in #6343
- Fix flaky spec by not redefining File and YAML responses in #6384
- Fix loading outdated FileSet causing flakiness in #6380
- rework
:with_files
factory to work with ActiveFedora/Wings in #6391 - Switch to Capybara's animation disabler in #6437
- Remove leftover collection model setter causing flakes in #6505
- 🧹 Removing low-value spec in #6622
- 🧹 Avoid direct
allow(File).to receive(:exist?)
in #6669 - ♻️ Attempt to squash a flaky test in #6678
- ✂ Remove useless test in #6688
- ☑️ Allow downstream apps to re-use Hyrax factories and support in #6696
- Enable class names for factories in #6700
- 🧹 Favor explicit FactoryBot.create in #6704
- ♻️ Favor using to_rdf_representation in #6709
Full Changelog: hyrax-v4.0.0...hyrax-v5.0.0