Releases: projectblacklight/blacklight
Blacklight 5.12.0
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
Blacklight 5.11.1
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
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
Blacklight 5.10.1
Bug Fixes
#1131 Move deprecation warnings context for #solr_search_params_logic
into Blacklight::RequestBuilders
Blacklight 5.10.0
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 renamedconfig/blacklight.yml
and the structure of the file has changed slightly to include anadapter
element. - Extracted
Blacklight::SearchBuilder
fromBlacklight::SearchHelper
(wasBlacklight::SolrHelper
) - Extract
Blacklight::AbstractRepository
fromBlacklight::SolrRepository
- Extract
Blacklight::Document
fromBlacklight::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
, andsearch_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 >>
tomore 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 fromcatalog#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
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
andsolr_document_model
should not be duplicated
Version 5.9.2
Changes:
- Use blacklight-jetty 4.10.3
- Update to jettywrapper 2
Version 5.9.1
Changes:
- pull in tzinfo-data if on windows in the demo template
- SolrDocument.primary_key should be the same as Solr's unique key.