Skip to content

Releases: samvera/hyrax

Hyrax 2.1.0.rc3

15 May 17:54
25154c5
Compare
Choose a tag to compare
Hyrax 2.1.0.rc3 Pre-release
Pre-release

See full release notes for 2.1.0.
Changes: v2.0.1...v2.1.0.rc3

Hyrax 2.1.0.rc2

08 May 01:26
0ce6a45
Compare
Choose a tag to compare
Hyrax 2.1.0.rc2 Pre-release
Pre-release

See full release notes for 2.1.0.
Changes: v2.0.1...v2.1.0.rc2

Hyrax 2.1.0.rc1

26 Apr 13:03
Compare
Choose a tag to compare
Hyrax 2.1.0.rc1 Pre-release
Pre-release

See full release notes for 2.1.0.
Changes: v2.0.1...v2.1.0.rc1

Hyrax 2.1.0.beta2

04 Apr 18:04
Compare
Choose a tag to compare
Hyrax 2.1.0.beta2 Pre-release
Pre-release

See full release notes for 2.1.0.
Changes: v2.0.1...v2.1.0.beta2

Hyrax 2.1.0.beta1

28 Feb 03:58
e88981a
Compare
Choose a tag to compare
Hyrax 2.1.0.beta1 Pre-release
Pre-release

See full release notes for 2.1.0.
Changes: v2.0.1...v2.1.0.beta1

Hyrax 2.0.1

13 Dec 16:22
dc1c9ae
Compare
Choose a tag to compare

Hyrax 2.0.1 is a bug fix release that enables Hyrax to be used with Rails 5.1 and MySQL.

Upgrade Notes

Update your Gemfile to use version 2.0.1 and run bundle update --conservative hyrax.

Change Log

v2.0.0...v2.0.1

Hyrax 2.0.0

01 Sep 21:04
10c9f49
Compare
Choose a tag to compare

Hyrax 2.0.0 includes many new features and bug fixes. Highlights include:

  • Consolidated user and admin dashboards into a single, collapsible dashboard, including new functionality to:
    • Change site colors via dashboard settings UI
    • Customize About, Help, Terms, and Agreement pages in an in-browser editor
  • Translated user interface into five new languages: German, French, Italian, Portuguese, and Chinese (adding to English and Spanish)
  • Added embargo and lease management views
  • Disentangled licenses from rights statements, making rights statements a required field by default. You may need to update your translation files to use the new rights_statement_tesim instead of the old rights_tesim
  • Moved editable content blocks from homepage into dashboard settings UI
  • Improved ingest job pipeline, now agnostic with regard to whether ingest is happening in a single-filesystem context or a multi-node/cloud context
  • Improved support for nested data structures and controlled vocabularies in metadata fields, connecting GeoNames to the Location field and persisting both labels and URIs
  • Added a new background job for invoking the Fedora import-export tool
  • Granted all administrative users the ability to manage all administrative sets

Install Notes

If you are installing a new Hyrax application using Rails 5.1 and MySQL, you will want to use Hyrax 2.0.1 instead, which works around a bug in the MySQL ActiveRecord adapter.

Upgrade Notes

New database migrations

Generate new database migrations into your application and apply them:

rails hyrax:install:migrations
rails db:migrate

Work type-specific metadata changes

If you have customized the metadata in any generated work types (in app/models/YOUR_WORK_TYPE.rb), make sure that include ::Hyrax::BasicMetadata appears below any custom predicate definitions. If if appears above these, you can expect to see ActiveTriples::UndefinedPropertyError.

Catalog controller

The 'rights' field has been replaced with 'rights_statement' and 'license' in app/controllers/catalog_controller.rb. If you use the 'rights' field and want to use 'license' and 'rights_statement', you can apply these changes to your application's catalog controller: 7815f7a#diff-bdf859c784271d81391867ef1edf1f79

Reindex works

To fix #1769 (related to Review Submissions UI), the code that indexes workflow information needed to be changed to reflect that workflows are not shared among Admin Sets. You will need to reindex all of your works in Solr after upgrading to Hyrax 2.0.0.

User notifications

Please see the Hyrax Management Guide for a thorough discussion of this change, and what it will require. Of particular note: if you're upgrading from a prior version of Hyrax, there's a new config option you can add to config/initializers/hyrax.rb to disable/enable realtime user notifications:

  config.realtime_notifications = true

The default value, as above, is true. If you don't need realtime notifications in the browser, you can set this to false. Note also that if you deploy your Hyrax-based application under Passenger + Apache, you won't be able to use this feature. Hyrax is smart enough to detect when it's being deployed in this way, and will automatically turn this feature off and generate warnings so you're aware that the app has disobeyed you. Set this option to false in the Hyrax initializer to stop seeing this warning. Note that users will still see notifications with this feature off -- they just won't appear until the next page load/refresh.

Controller behavior modules removed

If you use to override a controller and include a module such as Hyrax::DownloadBehavior, you must switch to injecting your behavior on these classes instead, as the behavior modules have been eliminated.

You can do this by using Module#prepend. We recommend you do this in the to_prepare hook as it supports code reloading in development mode. For example:

 # config/application.rb
    config.to_prepare do
      Hyrax::DownloadsController.prepend MyCustomBehavior
    end

View changes

If you have overridden app/views/_user_util_links.html.erb in your application, you will need to replace the following line:

      <%= render 'hyrax/users/notify_number' %>

with:

     <%= render_notifications(user: current_user) %>

If you have overridden any of Hyrax's views or partials, please compare them to what is in Hyrax to look for changes you'll need to reflect in your overrides. You can do this comparison via a command like:

diff -srw app/views/ $(bundle show hyrax)/app/views/

Accessibility changes

To increase color contrast, you can use some Bootstrap SASS overrides that Hyrax provides by adding the following line above any Bootstrap-related imports in app/assets/stylesheets/hyrax.scss:

@import "bootstrap-default-overrides";

Rights Statements service

If your application code interacts with the rights statement service, this has been renamed from RightsStatements to RightsStatementService. Update these references to avoid breakages.

Search builder module changes

Those search builders that used to start with My (as well as the FindWorksSearchBuilder) have been moved to the My module (e.g. MyWorksSearchBuilder is now My::WorksSearchBuilder)

Administrative Set relationship

By default, Administrative Sets and their member objects use the Dublin Core Terms predicate isPartOf to express the membership relationship. Hyrax also allows use of a custom predicate for this relationship. To customize the predicate, point the Hyrax configuration option admin_set_predicate (in config/initializers/hyrax.rb) at another RDF term or a URI object.

Allowing customization is the first step towards changing the default predicate for this relation. After the 2.0.0 release, Hyrax will warn users about using isPartOf for this purpose and add migration tooling for production instances using isPartOf. The default will change in Hyrax 3.0.0.

Configuration options changed

A new configuration option has been added to restrict what directories can be used to upload files from BrowseEverything, whitelisted_ingest_dirs.

If you uncommented and set the configuration properties binaries_directory or descriptions_directory (which weren't actually used), you now need to set bagit_directory instead.

Additionally, the notifications_update_poll_interval configuration property has been removed.

A new configuration option has been added that allows you to control parameters of the file uploader. You can add this to your Hyrax initializer and, if you wish, uncomment the defaults and tweak it to match your needs:

  # Options to control the file uploader
  # config.uploader = {
  #   limitConcurrentUploads: 6,
  #   maxNumberOfFiles: 100,
  #   maxFileSize: 500.megabytes
  # }

File-related actors

The actor that used to act upon the :files attribute, AttachFilesActor, was removed as largely duplicative code and was subsumed into the CreateWithFilesActor. The actor stack now uses the :uploaded_files attribute, and expects it to contain Hyrax::UploadedFiles.

New locales

Re-generate your work types to pick up new translations via rails g hyrax:work YourWorkNameHere This will prompt you a number of times about overwriting files already in your application -- rely on version control here. You may want to have a clean (code) repository before running this task, so you can closely examine the differences.

Removed Deprecations from 1.x Release Series

Several methods and options deprecated during the 1.x release series are removed. These include:

  • max_days_between_audits is now max_days_between_fixity_checks;
  • always_display_share_button is now display_share_button_when_not_logged_in.
  • AssignRepresentativeActor was a no-op, and the class is removed.

Changes

v2.0.0.beta1...v2.0.0
1-0-stable...v2.0.0

Hyrax 1.0.5

10 Oct 21:55
b155a6c
Compare
Choose a tag to compare

Hyrax 1.0.5 is a bug fix release that validates local file ingestions (i.e., from BrowseEverything) against a whitelist of directories.

Upgrade Notes

Update your Gemfile to use version 1.0.5 and run bundle update --conservative hyrax

Change Log

v1.0.4...v1.0.5

v1.0.4

22 Aug 18:12
Compare
Choose a tag to compare

Bugfix release

Bugs fixed:

  • #1372 Stop adding periods to end of citations
  • #1398 Hyrax::CurationConcern.actor_factory not being set correctly
  • #1404 file_set_audit_service fails when a file does not have versions

PRs included:

  • 2017-08-21: Prep for 1.0.4 release [Bess Sadler]
  • 2017-08-04: Do not configure actor factory in engine [Michael J. Giarlo]
  • 2017-06-08: Pass the correct data attribute value to the work search [Lee Hunter]
  • 2017-08-01: CurationConcern.actor_factory does not need to be settable. Fixes #1398 [Michael J. Giarlo]
  • 2017-04-11: The Work constructor only takes three arguments [Lee Hunter]
  • 2017-08-01: Do not throw an error when encountering an unversioned file. Fixes #1404 [Bess Sadler]
  • 2017-07-27: Backport 1372 (#1397) [Michael J. Giarlo]
  • 2017-07-19: Further tweak gemspec dependencies [dheles]
  • 2017-07-19: Tweak gemspec dependencies [dheles]
  • 2017-07-19: Fix double twiddle-wakkas [dheles]
  • 2017-07-19: Lock down dependencies in gemspec [dheles]

Version 1.0.3

19 Jul 13:28
Compare
Choose a tag to compare

Hyrax 1.0.3 is a bug fix release.

Upgrade Notes

Update your Gemfile to use version 1.0.3 and run bundle update --conservative hyrax

Change Log

2017-07-18: Update hyrax to use standardized license naming [Jack Reed and Mike Giarlo]

2017-07-18: Prep for 1.0.3 release [Drew Heles]

2017-07-07: Improved docs for Sipity::Entity [Bess Sadler]

2017-07-07: Improve documentation for AbstractNotification class [Bess Sadler]

2017-06-08: Pass the correct data attribute value to the work search [Justin Coyne]

2017-05-25: Load works without regard for the model type that backs the form
[Justin Coyne]

2017-05-25: cast column to a type that will behave properly with the adapter in
use [Josh Gum]

2017-05-16: Fix visibility form collapse/expand for batches [Glen Horton]

2017-05-17: Fix Browse Everything when work is being edited [Glen Horton]

2017-06-07: Render the tranfers form with simple form and translations [Justin Coyne]

2017-06-07: Show the tranfers form if there's an error. [Justin Coyne]

2017-06-19: Create and use a download permission [Justin Coyne]

2017-06-19: Admins should be able to download all files [Justin Coyne]

2017-06-14: Update collection/batch javascript to use data attributes [Justin Coyne]

2017-06-14: Fix counts to look at the new inverted collection relationship [Justin Coyne]

2017-03-24: Absolute path to the microdata config file. Fixes #640 [Justin Coyne]

2017-06-15: Update dependencies which saves and retreives charset [Justin Coyne]