Skip to content

Releases: projectblacklight/blacklight

Blacklight 5.12.0

24 Mar 20:41
Compare
Choose a tag to compare

Commit History | Milestone

Improvements and Bug fixes

#1157 Update #facet_in_params and #facet_field_in_params? helpers to use the blacklight facet configuration
#1159 Use polymorphic routing for the search session tracking route instead of hard-coding track_solr_document_path
#1157 Add fluent SearchBuilder for start/page/rows parameters
#1152 Provide a blacklight:search_builder generator to generate an application-specific Blacklight::SearchBuilder into the application
#1164 Add Document#fetch to replace deprecated Document#get method
#1162 Add Blacklight::SolrReponse#aggregations to replace #facets, #facet_queries, etc.
#1166 Update Blacklight configuration's dynamic field matching to support an explicit :match option with a regular expression.
#1171 Fix Blacklight bookmarks error with Rails 4.2.1
#1173 Convert "Clear Bookmarks" button to a results collection tool
#1165 Only use backwards-compatible configuration options (e.g. include_in_simple_select) when if or unless options are not used

Upgrade notes

If you were taking advantage of SolrDocument#to_model to convert your Solr responses into other model classes, note that #1159 will use your #to_model object to calculate the route name.

In #1164, a new method #fetch was added to SolrDocument. If you were using a method of the same name (because you mixed Blacklight::SearchHelper into your model, say), you may have unexpected behavior.

Blacklight 5.11.2

20 Mar 06:01
Compare
Choose a tag to compare

Bug Fixes

#1153 Update blacklight to work with Rails 4.2.1
#1150 When mapping query parameters to solr parameters, use Blacklight's facet configuration for field names

Blacklight 5.11.1

19 Mar 00:14
Compare
Choose a tag to compare

Bug Fixes

#1149 Facet URL helpers should use the facet configuration to determine the key to use in the query parameters

Blacklight 5.11.0

17 Mar 22:14
Compare
Choose a tag to compare

Commit History | Milestone

Improvements and Bug fixes

#1135 Blacklight::DocumentPresenter should use the field configuration's field name
#1136 Add #view_label helper for looking up the name of the index view
#1140 Replace explicit Rails version checking with feature detection
#1142 Document and collection tools should be index view-specific
#1141 Allow Blacklight::SearchBuilder implementation to provide the default list of processing steps
#1143 Extract a #is_bookmarked? helper
#1145 Use Blacklight.logger in non-controller contexts
#1146 Check for Java 1.7+ when starting Jetty
#1147 Blacklight::Facet should support looking up field configuration by both blacklight key and solr facet name

HTML improvements

#1137 Add current view name as a class on the #documents container
#1139 On the index page, the document title should take the full width if no document actions are present
#1144 Add a better out-of-the-box home_text partial with next steps
#1148 Add semantic classes to <h1>...<h6> fields.

Upgrade Guide

In Blacklight 6.x, we intend to re-order the <h1>...<h6> fields to meet accessibility best practices. In #1148, we introduced semantic classes for the elements we intend to change. If your application has overridden the Blacklight styles using the <h1>...<h6> names, you should begin converting them to use semantic classes instead.

Blacklight 5.10.2

17 Mar 22:03
Compare
Choose a tag to compare

Commit History | Milestone

Bug Fixes

#1132 Fix object lookup/scoping problem with Ruby 1.9

Development tools

#1133 Test Blacklight using solr 4.1.0.4
#1134 Update travis build matrix for Ruby 2.2.1 and Rails 4.1.9

Blacklight 5.10.1

17 Mar 22:01
Compare
Choose a tag to compare

Bug Fixes

#1131 Move deprecation warnings context for #solr_search_params_logic into Blacklight::RequestBuilders

Blacklight 5.10.0

06 Mar 15:15
Compare
Choose a tag to compare

Commit History | Milestone

Refactoring

In Blacklight 5.9, we added functionality to begin supporting search backends other than Solr. In recognition of this work, we’ve started pulling out hard-coded references to Solr where generic or Blacklight-specific terms may be more appropriate, and leaving deprecation warnings in the place of old methods and functionality. The deprecated behavior will be removed in Blacklight 6.x. Below is a table showing examples of the renaming effort:

Blacklight 5.x Blacklight 5.10
Blacklight::SolrHelper Blacklight::SearchHelper
solr_repository repository
get_search_results search_results
blacklight_solr connection
solr_search_params_logic search_params_logic
Blacklight::Configuration#solr_document_model Blacklight::Configuration#document_model
Blacklight::Configuration#solr_response_model Blacklight::Configuration#response_model
Blacklight::Exceptions::InvalidSolrID Blacklight::Exceptions::RecordNotFound
Blacklight::Configuration::SolrField Blacklight::Configuration::Field`
Blacklight::Document#solr_response Blacklight::Document#response
SearchHelper#get_solr_response_for_doc_id SearchHelper#fetch
SearchHelper#get_solr_response_for_document_ids SearchHelper#fetch
rake blacklight:solr:seed rake blacklight:index:seed
config/solr.yml config/blacklight.yml

Additional work went into creating generic versions of solr functionality, including

  • The configuration file config/solr.yml has been renamed config/blacklight.yml and the structure of the file has changed slightly to include an adapter element.
  • Extracted Blacklight::SearchBuilder from Blacklight::SearchHelper (was Blacklight::SolrHelper)
  • Extract Blacklight::AbstractRepository from Blacklight::SolrRepository
  • Extract Blacklight::Document from Blacklight::Solr::Document
  • Wrap access to RSolr in a Blacklight::SolrRepository instead of providing direct access to RSolr

We've also changed the behavior of CatalogController.search_params_logic (was .solr_search_params_logic), which defined the translation between Rails' URL parameters and the Solr request parameters. This used to call methods directly on the controller. As of Blacklight 5.10, we've added a Blacklight::SearchBuilder class to contain those methods.

Features

  • Add document_presenter_class, repository_class, and search_builder_class to the blacklight configuration. This configuration was previously connected with the controller.
  • #1115 Blacklight's index, show and facet fields should support internal keys that may be different from the field name
  • #1125 Change the link for facet pagination to include the name of the facet for screen readers (e.g. more >> to more locations >>)

Bug Fixes

  • #1082 Bookmarks should use the same id constraints as the primary resource
  • #1061 Class references in the Blacklight configuration should not be deep-duped.
  • #1098 Only use the user's stored view preference if it is available
  • #1127 Fix indenting for the remove icon for pivot facets (@wlayton)
  • #1126 Use more granular RSolr.solr_escape to escape facet values

Development tools

  • Extract granular generators for controllers and models from the blacklight:install generator.
  • Extract additional_export_formats method from catalog#show

Upgrade Guide

After updating to Blacklight 5.10, you should expect to see many deprecation warnings. Most of them can be resolved by following the directions given in the deprecation message.

v5.9.3

18 Feb 16:10
Compare
Choose a tag to compare

Commit History | Milestone

Blacklight 5.9.3 backports several changes from 5.10.0 for working with non-traditional Blacklight applications.

  • Bookmarks should respect routing constraints for document ids
  • #1061 solr_response_model and solr_document_model should not be duplicated

Version 5.9.2

11 Feb 17:21
Compare
Choose a tag to compare

Changes:

  • Use blacklight-jetty 4.10.3
  • Update to jettywrapper 2

Version 5.9.1

11 Feb 17:23
Compare
Choose a tag to compare

Changes:

  • pull in tzinfo-data if on windows in the demo template
  • SolrDocument.primary_key should be the same as Solr's unique key.