Skip to content

Releases: projectblacklight/blacklight

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.

Version 7.0.0.rc1

30 Mar 18:36
Compare
Choose a tag to compare
Version 7.0.0.rc1 Pre-release
Pre-release

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

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.

Blacklight 6.10.1

21 Jun 22:33
Compare
Choose a tag to compare

Bug fixes

  • Fixes a bug with search result grouping
  • Fixes an issue migrating from Blacklight 5 -> 6

v6.10.0

17 May 23:10
Compare
Choose a tag to compare
  • Support Rails 5.1
  • Stop testing Rails 4.2

Blacklight 6.9.0

02 May 14:22
Compare
Choose a tag to compare

Features

  • Add Albanian (sq) translation
  • Support for solr 6.5 new spelling format
  • Add an optional opensearch startPage attribute to search urls
  • Add a link to the JSON search results api
  • Pass a controller instance to the SearchState so that it can access url helpers

Bug Fixes

  • Allow running the generator with RSolr 2.0
  • Prevent autocomplete from re-initializing multiple times.

Blacklight 6.8.0

03 Mar 22:14
Compare
Choose a tag to compare

Features

  • Add more_limit facet configuration to change the number of results to display when paginating a facet
  • Allow the SearchState configuration to be configured (using e.g. CatalogController. search_state_class = X)

Bug Fixes

  • Trim TokenBasedUser#export_secret_token for compatibility with ruby 2.4.0
  • Consistently use facet.key for user-facing parameters, and facet.field for solr-facing parameters

Other backports

  • Use image_url when constructing the $logo_url css variable
  • SolrResponse should use Blacklight.logger

Version 6.7.3

09 Jan 16:56
Compare
Choose a tag to compare

Changes

  • LinkAlternatePresenter is now using url_for_document to draw links.

Blacklight 6.7.0

27 Sep 23:09
Compare
Choose a tag to compare

Improvements

  • #1525 Prefer JSON.parse over JSON.load
  • #1492 Add example usage to the generated SearchBuilder
  • #1500 Use more lenient email address matching when emailing search results

Deprecations

  • Deprecate many Blacklight::Document delegations to the underlying hash