Skip to content

Releases: projectblacklight/blacklight

v7.3.0

30 Oct 23:26
Compare
Choose a tag to compare

Commit History

New features

  • Add merge_facet method to include in solr response #2064
  • Enable the rendering pipeline to be configured per-instance #1996

Fixes

  • Return a default presenter instead of nil. #2117

Updates/maintenance

  • Support Rails 6 #2163
  • Test with Solr running under Docker instead of solr_wrapper #2012

v7.2.0

10 Oct 13:57
Compare
Choose a tag to compare

Commit History

New Features and improvements

#2118 Contribution guide updates
#2132, #2137 Significant improvements for accessibility and bug fixing to collapsible facets
#2138 Responsive sort and per page labels
#2128 Removes jquery dependency from search_context.js
#2169 Moves facet field names to configuration
#2171 New applications use jquery3 by default
#2145 Adds jump links to Blacklight
#2134 Updates how icons are styled in Blacklight to improve reuse downstream
#2139 Adds Google Fi mappings
#2149, #2151 Add aria-labels to section heading
#2157 Adds accessibility improvements and enhancements to the Blacklight::Icons class for svgs.
#2155 Update the breakpoint that facets use
#2140 Adds the ability to enable custom grouped response i18n "entries" for pagination

Bug Fixes

#2175 Adds sass-rails requirement for Rails 5
#2171 Updates the asset generator with an order that works for CSRF + rails-ujs + jquery3
#2165 Fixes an issue about input button rounding for fielded search

Updates/maintenance

#2148 Suppresses semi-colon warnings for jshint
#2167 Extracts a test for the facet_group template
#2162 Update location and addressing of modules. In preparation for Rails 6 and Zeitwerk

Upgrade Notes

Please note that #2137 provided some HTML changes where previous <a> elements were updated to <button> elements. This change was done to improve accessibility and usability and we are considering it an enhancements. Blacklight adopters should be aware of this as to look at local styling that may need to be modified.

#2134 updated how icons are styled in Blacklight. We are now using a fill based svg approach. This is consistent with how many icon libraries are now providing and styling their icons. It should also enable downstream users of Blacklight to more easily style icons.

#2145 Adds jump links to Blacklight, but also sets search bar autofocus to off. This can be reenabled but is left off for accessibility.

#2157 Adds enhanced accessibility features for svg icons used in Blacklight and downstream applications/engines.

Thank you to all of the contributors for this release!!! 🥇

v7.1.0

17 Sep 15:08
4292210
Compare
Choose a tag to compare

Commit History

Various dependency updates - Rubocop, Bootstrap
Removes Nokogiri as a required dependency #2076
Several style updates - #2079, #2080
Remove popper.js - #2094
Updates CONTRIBUTING.md

New Features and improvements

#2063 improves performance of deleting old searches
#2071 adds configuration for search session tracking
#2126 adds the ability to add aria-hidden to svg icons
#2131 adds the ability to have html based bookmark labels

Bug Fixes

#2069 Fixes a "NoMethodError"
#2089 Fixes field name for author in schema (Solr 8 compatibility)
#2125 Fixes the bookmark thumbnail padding
#2119 Fixes whitespace

Thanks to all the contributors 👏

@camillevilla
@cbeer
@cdmo
@cjcolvar
Daniel Schmidt
@dunn
@jcoyne
@jkeck
@jrochkind
@labradford
@mejackreed
@sensei100
@tampakis

Version 6.20.0

11 Mar 18:37
Compare
Choose a tag to compare

New features

Add custom routing constraints by setting:

Blacklight::Engine.config.routes.identifier_constraint = %r{.+}

This must be set before config/routes.rb is loaded, so config/initializers/blacklight.rb is a great place for this.

Version 7.0.1

13 Jan 16:48
Compare
Choose a tag to compare

Bug Fixes

  • Ensure the template generator works

v6.19.2

11 Jan 17:10
Compare
Choose a tag to compare

Bug Fixes

#2053 Fixes an issue where citations are rendering in un-styled modals

Version 7.0.0

19 Dec 17:16
Compare
Choose a tag to compare

New features

  • Bootstrap 4
  • Rails 5.2 support
  • Webpacker support
  • JSON-API support
  • Solr 7.2 support
  • Dynamic solr schema by default
  • Additive configuration #1767
  • Defined properties in the SolrDocument class #1659
    If you previously had a number of methods in your SolrDocument class like this:
def title
  self['title_ssim'].first
end

You can now simplify these by replacing with:

  include Blacklight::Solr::Document
  attribute :title, Blacklight::Types::String, 'title_tesim'

Bug fixes

  • if the application name isn't defined in the current language, fallback to the application_name in the default language. #1724

Upgrading

Add include Blacklight::DefaultComponentConfiguration to your catalog controller or

  configure_blacklight do |config|
    config.add_results_document_tool(:bookmark, partial: 'bookmark_control', if: :render_bookmarks_control?)

    config.add_results_collection_tool(:sort_widget)
    config.add_results_collection_tool(:per_page_widget)
    config.add_results_collection_tool(:view_type_group)

    config.add_show_tools_partial(:bookmark, partial: 'bookmark_control', if: :render_bookmarks_control?)
    config.add_show_tools_partial(:email, callback: :email_action, validator: :validate_email_params)
    config.add_show_tools_partial(:sms, if: :render_sms_action?, callback: :sms_action, validator: :validate_sms_params)
    config.add_show_tools_partial(:citation)

    config.add_nav_action(:bookmark, partial: 'blacklight/nav/bookmark', if: :render_bookmarks_control?)
    config.add_nav_action(:search_history, partial: 'blacklight/nav/search_history')
  end

Documents are now returned using JSON-API at /catalog/:id.json This only returns fields that are configured using add_show_field. If you want to receive the full Solr document (all fields) in the format they were in in Blacklight 6, you must add the configuration: config.raw_endpoint.enabled = true and the endpoint will be changed to /catalog/:id/raw.json

If you are using Blacklight::Solr::Response directly, note that the options to the initializer have changed. Where previously it took :solr_document_model it now takes a :blacklight_config option.

Partial changes

shared/ajax_modal has moved toshared/modal

Bootstrap 3 to 4 migration guide

For updating your Blacklight application from Bootstrap 3 to 4, please review and contribute to the migration guide.

v7.0.0.rc2

26 Nov 17:15
Compare
Choose a tag to compare
v7.0.0.rc2 Pre-release
Pre-release

New features

  • Bootstrap 4
  • Rails 5.2 support
  • More maintainable routes via routing concerns
  • Webpacker support
  • JSON-API support
  • Solr 7.2 support
  • Dynamic solr schema by default
  • Additive configuration #1767
  • Defined properties in the SolrDocument class #1659
    If you previously had a number of methods in your SolrDocument class like this:
def title
  self['title_ssim'].first
end

You can now simplify these by replacing with:

  include Blacklight::Solr::Document
  attribute :title, Blacklight::Types::String, 'title_tesim'

Bug fixes

  • if the application name isn't defined in the current language, fallback to the application_name in the default language. #1724

Upgrading

Add include Blacklight::DefaultComponentConfiguration to your catalog controller or

  configure_blacklight do |config|
    config.add_results_document_tool(:bookmark, partial: 'bookmark_control', if: :render_bookmarks_control?)

    config.add_results_collection_tool(:sort_widget)
    config.add_results_collection_tool(:per_page_widget)
    config.add_results_collection_tool(:view_type_group)

    config.add_show_tools_partial(:bookmark, partial: 'bookmark_control', if: :render_bookmarks_control?)
    config.add_show_tools_partial(:email, callback: :email_action, validator: :validate_email_params)
    config.add_show_tools_partial(:sms, if: :render_sms_action?, callback: :sms_action, validator: :validate_sms_params)
    config.add_show_tools_partial(:citation)

    config.add_nav_action(:bookmark, partial: 'blacklight/nav/bookmark', if: :render_bookmarks_control?)
    config.add_nav_action(:search_history, partial: 'blacklight/nav/search_history')
  end

Documents are now returned using JSON-API at /catalog/:id.json This only returns fields that are configured using add_show_field. If you want to receive the full Solr document (all fields) in the format they were in in Blacklight 6, you must add the configuration: config.raw_endpoint.enabled = true and the endpoint will be changed to /catalog/:id/raw.json

If you are using Blacklight::Solr::Response directly, note that the options to the initializer have changed. Where previously it took :solr_document_model it now takes a :blacklight_config option.

v6.17.0

06 Nov 15:55
Compare
Choose a tag to compare

Enhancements

#1994 adds support to configure an error callback for selections

v6.16.0

17 Oct 21:22
Compare
Choose a tag to compare

Bug Fixes

#1883 Fixes an issue where the searchbox in Safari is broken
#1987 Fixes an issue where Bookmark checkboxes would update, even though the request failed

Enhancements

#1984 Avoids unnecessary field lookup for configs that are present for a specific type. Adds deprecation warnings going forward.
#1973 Improves accessibility of per page, fact toggle, and sort buttons
#1863 Adds deprecation warnings for discard_flash_if_xhr

Upgrade guide

If you override or use Blacklight::IndexPresenter#field_value the contract of that method has changed. Please see the deprecation warnings or #1984 for advice on upgrading.

Thanks to contributors for their help on this release:
@dkinzer, @jgondron, @jcoyne, @kdid, @cjcolvar, @mejackreed, and @mjgiarlo.