Skip to content

Releases: samvera/hyrax

hyrax-v5.0.1

29 Mar 20:32
351e32b
Compare
Choose a tag to compare

What's Changed

New Features and Non-breaking Changes

  • ♻️ Liberating Factories in #6742
  • avoid n+1 query on file_metadata delete in #6747
  • use the Hyrax::FileSetFileService to determine "primary file" in #6752

Bug Fixes

  • Use compact, not flatten, in the model registry in #6737
  • Allow removal of Location fields, and related QOL fixes in #6720
  • 🐛 Use configured class instead of hard-coded in #6717
  • Fix typo for the raise statement in #6754
  • SingleUseLinksViewerController current_ability behavior fixes in #6739
  • Fix “::Collection” definition with autoloading in #6758
  • Pin sprockets to fix feature specs in #6762
  • fix blueimp file upload progress bars in #6735

Documentation

  • prepare release 5.0.1 in #6751

Containerization

  • chart: add support for startupProbe in #6750

Tests and CI Process

  • ♻️ Ensure setting permission template for work factories in #6723
  • use find_files(file_set: file_set) in various specs in #6748
  • make default_workflow_spec.rb order independent in #6753

Other

  • move file related listeners to their own space in #6743

Full Changelog: hyrax-v5.0.0...hyrax-v5.0.1

hyrax-v5.0.0

01 Mar 18:34
c571eda
Compare
Choose a tag to compare

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 and available_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 generi...
Read more

hyrax-v5.0.0.rc3

23 Feb 14:47
e9141b8
Compare
Choose a tag to compare
hyrax-v5.0.0.rc3 Pre-release
Pre-release

What's Changed

Major Changes (Potentially breaking changes)

  • 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 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

  • deprecate Statistics::QueryService in #6400

Bug Fixes

  • refine Hyrax::LeaseService behavior to find only enforced leases in #6330
  • 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 for filter_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

Valkyrie Progress

  • 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
  • use valkyrie factories to setup WorkflowListener specs in #6402
  • Updates the works in proxies and abilities spec to valkyrie. in #6403
  • 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 https://github.com/samvera/hyr...
Read more

hyrax-v5.0.0.rc2

20 Oct 21:33
3dd8134
Compare
Choose a tag to compare
hyrax-v5.0.0.rc2 Pre-release
Pre-release

What's Changed

Major Changes (Potentially breaking changes)

  • Hide versioning UI when unsupported by adapter in #6257
  • Bump min rails version to 6.1 and align dassie/koppie gems in #6315

New Features and Non-breaking Changes

  • add 4 new fields to hyrax counter metric table in #6158
  • 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

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 and available_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

Bug Fixes

  • 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
  • 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

Valkyrie Progress

  • 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 if disable_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

Documentation

  • Document FileSet & Work Relationships in #6301
  • Prep 5.0.0.rc2 in #6379

Containerization

  • 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 ...
Read more

hyrax-v5.0.0.rc1

25 Aug 21:12
966951f
Compare
Choose a tag to compare
hyrax-v5.0.0.rc1 Pre-release
Pre-release

What's Changed

Major Changes (Potentially breaking changes)

  • remove fallback behavior for dropped InitializeWorkflowActor in #6144
  • [semver-major] 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
  • [semver-major] drop support for Ruby before 3.2 in #6183
  • Fix file manager sorting for Koppie in #6217

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
  • Fits Servlet is a Substantial Speed Bump in #6160
  • Set geonames usernames using environment variable in #6159

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

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 when disable_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 when disable_wings in #6214
  • disable AttachFilesToWorkJob specs if disable_wings in #6213
  • don't test AF path in FileSetAttachedEventJob when disable_wings in #6215
  • skip MembersPermissionJobBehavior AF tests when disable_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

Documentation

  • Update PULL_REQUEST_TEMPLATE.md in #6094
  • Prep 5.0.0.rc1 in #6224

Containerization

  • Bump dockerfile alpine and ruby versions in #6205
  • Update Hyrax chart in #5768
  • update bitnami chart dependencies in #6223

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? is true 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

Other

  • Bump loader-utils from 1.4.0 to 1.4.2 in /.koppie in #5911
  • Bump qs from 6.5.2 to 6.5.3 in /.koppie in #5934
  • Bump jszip from 3.7.1 to 3.10.1 in /.koppie in #5954
  • Bump json5 from 1.0.1 to 1.0.2 in /.koppie in #5940

Full Changelog: hyrax-v4.0.0...hyrax-v5.0.0.rc1

hyrax-v3.6.0

27 Jun 20:44
f7a3fcd
Compare
Choose a tag to compare

Hyrax 3.6.0 adds support for reporting site usage to Google Analytics 4 (GA4). Existing users of the prior version of Google Analytics (UA) will need to update their applications as it will soon be retired.

Note: Hyrax's analytics dashboard features are disabled in this release when using the GA4 provider. These will be restored once Hyrax has been updated to use the new Google Analytics Data API to access GA4 data.

What's Changed

  • Disable analytics dashboard for GA4 until support is done in #6097
  • Hyrax-5933 - Review submission support paging (hyrax 3.x version) in #6000
  • Delete github workflows from old nurax deployment in #6073
  • Refactor analytics_events.js in #6095
  • [3.x] Google Analytics 4 Reporting in #6074
  • Backport #6063 (Google privkey in ENV) to 3.x in #6093
  • Update GA4 param name in #6096

Full Changelog: hyrax-v3.5.0...hyrax-v3.6.0

hyrax-v4.0.0

30 May 19:30
815e0ab
Compare
Choose a tag to compare

Hyrax 4.0 Highlights

Hyrax 4 has seen major upgrades to its dependencies. It now runs on Ruby 3.2 and Rails 6.1. Blacklight has been updated to version 7, and the Bootstrap style framework to version 4.

What's Changed

Major Changes (Potentially breaking changes)

  • Min Ruby version, CircleCI updates, Jasmine refactor in #5665
    • Minimum Ruby version is now 2.7
  • Upgrade to Blacklight 7, Bootstrap 4 and Rails 6.0 in #5730
  • Favoring Hyrax.logger over Rails.logger in #5880
  • Use solr's graph query builder for nested collection queries in #5850
    • The graph parser only works in single node Solr installations, or with SolrCloud collections that use exactly 1 shard. See Solr Graph Query documentation.

New Features

  • correctly derive paths for UploadedFileUploader in #5755
  • Add a generic interface for ACL keys to Group and User in #5761
  • test model sensitive collection behavior for relationships views in #5759
  • Require rubygems multi-factor authentication in #5754
  • don't show analytics in the sidebar if it is turned off in #5769
  • update Samvera copyright date to 2022 in #5767
  • comet: decouple Derivatives from Characterization in #5778
  • add bibliographic_citation to work form in #5774
  • raise a useful error when setting an unknown visibility in #5801
  • Pessimistic handling of non-Date objects in #5819
  • Upgrade to rails 6.1 in #5786
  • Exposing Hyrax.config.derivative_services in #5867
  • Convert dashboard facets to use Dropdown facet components instead of overriding upstream in #5785
  • Use VisibilityComponent for FileSet permissions in #5892
  • reinstate support for ActiveFedora to WorkflowActionsController in #5915
  • Hyrax config option for solr http method in #5937
  • Expanding method interface in #5941
  • support enumerators in FindFiles "navigator" queries in #6054
  • add pool based redis connections #6056 in #6060
  • Migrate LockManager to #then for better ConnectionPool support in #6061
  • Make Google Private Key accessible from the ENV. in #6063
  • Add a note containing the configured file upload limits in #6079
  • make the VisibilityMap configurable in #6009

Deprecations

  • remove deprecated transaction code in #5725
  • remove deprecated code from PermissionTemplate in #5726
  • wings: remove deprecated classes in #5723
  • remove deprecated WithFileSets module in #5745
  • remove deprecated InitializeWorkflowActor in #5741
  • remove deprecated ContentDepositorChangeEventJob in #5739
  • remove deprecated methods from Hyrax::Configuration in #5737
  • remove deprecated use_valkyrie argument from InheritPermissionsJob in #5738
  • remove deprecated #whitelisted? method in #5740
  • remove deprecated method from InAdminSet in #5743
  • remove deprecated argument/attribute from GraphExporter in #5747
  • remove WorksControllerBehavior#curation_concern_from_search_results in #5750
  • remove deprecated MyController#query_solr method in #5751
  • remove deprecated methods from NestCollectionsController in #5752
  • always pull repo file if filepath param is missing in #5694
  • remove deprecated method from CollectionsControllerBehavior in #5748
  • Use FileSetsController to access the presenter and deprecate FileSetBehavior#to_presenter in #5895
  • remove deprecated code from FileMetadata in #5727
  • remove deprecated class attribute from CollectionType in #5742
  • remove deprecated methods from CollectionBehavior in #5744
  • Remove deprecated power_converters gem in #5980
  • remove deprecated #to_sipity_entity in #5746
  • remove Blacklight 6 compatibility methods in #5749

Bug Fixes

  • CharacterizeJob non-ASCII filename bug in #5673
  • make CollectionsSearchBuilder tests less strict in #5762
  • Fix application generation in #5765
  • hard code collection model in actor stack in #5760
  • Unpin Blacklight in #5784
  • AdminSet needs to fall back to an id if noid is false in #5790
  • soften dependendy on search_state_class for app generation in #5808
  • support newer versions of FactoryBot in #5806
  • don't load_and_authorize a model when indexing Embargoes in #5809
  • provide default PermissionBadge presenter behavior when nil in #5807
  • Remove whitespace from jsonld spec in #5821
  • check json, not string equality for JSON-LD output in #5822
  • Improving file handle life cycle in #5831
  • add an explicit dependency on Redis in #5838
  • stop using separate JS uploader configuration in development in #5855
  • Switch to parameters required by selenium 4 in #5872
  • Ensuring Hyrax::UserStatImporter returns false on exception in #5874
  • Remove unneeded variables in FileSet permission_form in #5889
  • remove dependency on dry-transaction in #5901
  • Adjust size of collection input in #5908
  • Pin view_component pending updated blacklight in #5910
  • Fix misspelling bug in propagator in #5917
  • Fixes the missing sort call in add_sorting_to_solr (#5905). in #5920
  • 401 if an unauthorized user attempts to download a workflow restricted file in #5921
  • Refreeze FileMetadata type with note to not << in #5944
  • Don't throw an error if depositor field isn't present in #5952
  • always force original_name to UTF-8 encoding in #5942
  • Limit redlock to versions < 2.0, as these cause sidekiq jobs to fail in #5961
  • Require rails/generators explicitly in #5967
  • display on work page bibliographic_citation in #5964
  • Hyrax-5856 - Collection and Work count numbers not displaying correct… in #5965
  • Hyrax-151 - I can add a proxy that already exists when I accept a tra… in #5966
  • add alternative_title to item and collection view. in #5968
  • Hyrax-5969 - Fix dashboard Works page "Add to collection" issue in #5972
  • Fix missing work id in file-set-in-work-download events in #5959
  • remove funny display when batch loading files. in #5973
  • display banner and logo file and info at file selection. in #5974
  • place radio button to right of collection type in modal. in #5975
  • Updates to CircleCI config in #5981
  • update the cc license config file for koppie in #5977
  • Fix method not found error for File analytics page in #5958
  • place save work section on right side of page regardless of language in #5...
Read more

hyrax-v4.0.0.rc3

15 May 19:36
bf8c3a8
Compare
Choose a tag to compare
hyrax-v4.0.0.rc3 Pre-release
Pre-release

Release Highlights

The way redis connections are configured has been refactored to avoid using the deprecated Redis.current method.

What's Changed

New Features

  • support enumerators in FindFiles "navigator" queries in #6054
  • add pool based redis connections #6056 in #6060
  • Migrate LockManager to #then for better ConnectionPool support in #6061

Bug Fixes

  • reinstate breadcrumb styling in #6055

Containerization

  • Don't always restart docker pg service in #6057

Other

  • bump version to 4.0.0-rc3 in #6058

Full Changelog: hyrax-v4.0.0.rc2...hyrax-v4.0.0.rc3

hyrax-v4.0.0.rc2

01 May 23:09
e5e446b
Compare
Choose a tag to compare
hyrax-v4.0.0.rc2 Pre-release
Pre-release

Release Highlights

Ruby 3.2 support!

What's Changed

New Features

  • make the VisibilityMap configurable in #6009

Bug Fixes

  • support flipflop 2.7.1 in #6003
  • allow flipflop parameters in controller test in #6014
  • Fix missing metadata in IIIF manifest in #6053

Documentation

  • Update .github/CONTRIBUTING.md in #6015

Ruby 3 Support

  • remove unused Samevera::NestingIndexer dependency in #6010
  • bump ActiveFedora version to 14 for Ruby 3 support in #6011
  • bump support for noid-rails to 3.x in #6013
  • bump support for hydra-file_characterization to 1.x in #6012
  • adapt **options in ContentBlockHelperBehavior for Ruby 3 in #6017
  • splatify unused _options argument in PcdmCollectionForm in #6018
  • make PresenterFactory Ruby 3 kwargs friendly in #6019
  • make Hyrax::SolrService kwargs friendly for ruby 3 in #6020
  • Hyrax::Transactions::Transaction#with_step_args Ruby 3 compatibility in #6021
  • don't rely on Ruby 2 {}/opt handling in VisibilityIntention specs in #6022
  • splatify opts passed by CollectionMembershipValidator in #6024
  • expect the options hash style actually passed in #6025
  • splatify options passed along by CollectionMemberShipValidator in #6027
  • don't try to use rpsec mocks on $CHILD_STATUS!!! in #6026
  • Convert lambda to proc to allow missing argument in Ruby 3 in #6030
  • Hyrax::Ability#user_is_depositor? Ruby 3 Compatibility in #6032
  • make Wings::Valkyrie::Storage ruby 3 compatible in #6029
  • ControlledVocabularies::ResourceLabelCaching ruby 3 compatibility in #6028
  • test options hash where the client is using it in #6035
  • Use same initialize method signature as ActiveModel::Validator in #6038
  • fix transfers controller behavior in #6036
  • update blacklight 6 compatibility behavior to support Ruby 3 in #6039
  • test correct options style in FileSetHelper specs in #6040
  • more breadcrumb test parameter fixes in #6041
  • be explicit about #reduce behavior in PermissionQuery in #6042
  • splatify arguments from CreateWithFilesActor to job in #6043
  • allow optional **_options arguments in AdminSetMembersPopulator in #6044
  • avoid kwargs solr_doc from dashboard_helper_behavior_spec setup in #6045
  • splatify render locals in IiifHelper in #6046
  • fix query style in GraphExporter specs in #6047
  • Splatify AttachFilesToWorkWithOrderedMembersJob spec attributes for ruby 3 in #6049
  • Match CreateWithFilesActor spec to splatted method in #6050
  • Refactor CollectionBrandingInfo#initialize for Ruby 3 in #6034
  • Replace kaminari_route_prefix gem with initializer patch in #6048
  • test ruby 3.0, 3.1, 3.2 in #6016
  • Test valkyrie mode with Ruby 3.2 in #6052

Other

  • bump Version to Hyrax 4.0.0-rc2 in #6051

Full Changelog: hyrax-v4.0.0.rc1...hyrax-v4.0.0.rc2

hyrax-v4.0.0.rc1

31 Mar 19:28
2b807fe
Compare
Choose a tag to compare
hyrax-v4.0.0.rc1 Pre-release
Pre-release

Release Highlights

  • Reinstate support for ActiveFedora in workflows
  • Add Hyrax configuration option for solr http method
  • Switch to jemalloc in the Hyrax Docker image to improve ingest performance
  • Support for Valkyrie 3.x

What's Changed Since v4.0.0.beta2

New Features

  • reinstate support for ActiveFedora to WorkflowActionsController in #5915
  • Hyrax config option for solr http method in #5937
  • Expanding method interface in #5941

Deprecations

  • remove deprecated code from FileMetadata in #5727
  • remove deprecated class attribute from CollectionType in #5742
  • remove deprecated methods from CollectionBehavior in #5744
  • Remove deprecated power_converters gem in #5980
  • remove deprecated #to_sipity_entity in #5746
  • remove Blacklight 6 compatibility methods in #5749

Bug Fixes

  • remove dependency on dry-transaction in #5901
  • Adjust size of collection input in #5908
  • Pin view_component pending updated blacklight in #5910
  • Fix misspelling bug in propagator in #5917
  • Fixes the missing sort call in add_sorting_to_solr (#5905). in #5920
  • 401 if an unauthorized user attempts to download a workflow restricted file in #5921
  • Refreeze FileMetadata type with note to not << in #5944
  • Don't throw an error if depositor field isn't present in #5952
  • always force original_name to UTF-8 encoding in #5942
  • Limit redlock to versions < 2.0, as these cause sidekiq jobs to fail in #5961
  • Require rails/generators explicitly in #5967
  • display on work page bibliographic_citation in #5964
  • Hyrax-5856 - Collection and Work count numbers not displaying correct… in #5965
  • Hyrax-151 - I can add a proxy that already exists when I accept a tra… in #5966
  • add alternative_title to item and collection view. in #5968
  • Hyrax-5969 - Fix dashboard Works page "Add to collection" issue in #5972
  • Fix missing work id in file-set-in-work-download events in #5959
  • remove funny display when batch loading files. in #5973
  • display banner and logo file and info at file selection. in #5974
  • place radio button to right of collection type in modal. in #5975
  • Updates to CircleCI config in #5981
  • update the cc license config file for koppie in #5977
  • Fix method not found error for File analytics page in #5958
  • place save work section on right side of page regardless of language in #5978

Valkyrie Progress

  • valkyrie: use storage adapters for derivatives in #5626
  • Use the ResourceForm for FileSets in #5894
  • use valkyrie 3.x in #5948

Documentation

  • fix Samvera Slack badge in README in #5931
  • Updates samvera logo in #5936
  • Add maintenance policy document in #5950
  • Readme update per Developer Onboarding Working Group recommendations in #5953
  • Updated old URLs in #5960
  • fix github issues link in #5939

Containerization

  • [Helm] separate the worker and web selectors in #5907
  • ci: update to 2.7.7 in #5949
  • Dispatch workflow events to samvera-labs/nurax instead of curationexperts/nurax in #5982
  • chart: bump the solr version for current kubernetes support in #5983
  • chart: update CronJob api version in #5984
  • bump jvm to 17. this fixes a problem where fits freezes randomly on arm64 in #5986
  • chart: upgrade dependencies in #5985
  • chart: update helpers and secrets configs for dependency updates in #5988
  • helm: fix more helper values, bump chart version to 3.0.1 in #5991
  • Only trigger nurax deploy for main branch in #5992
  • Deploy stable nurax only on latest published release in #5993
  • Dockerfile revisions in #5994
  • chart: add extraDeploy template variable for extensibility in #5996
  • Remove MALLOC_ARENA_MAX=2 in #5997

Full Changelog: v4.0.0.beta2...hyrax-v4.0.0.rc1