Skip to content

Releases: projectblacklight/blacklight

Blacklight 4.3.0

17 Sep 19:05
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Bug fixes include:

  • #556 check that a highlight field exists before trying to render it.
  • #561 Redirect to home page on a missing document
  • #569 Applies header style to #header-navbar-fixed-top .brand in order to avoid trumping other Bootstrap navbars.
  • use #facet_configuration_for_field to render search history constraints for consistency and configuration-independence

Other changes:

  • deprecate #sidebar_items, and stop populating it with content.
  • provide a SOLR_URL ENV variable to set the location of the development solr core
  • fix Rails 4-related deprecation warnings

Upgrade Guide

Application overrides that used the CSS selector .navbar .brand to change the navbar styling should use #header-navbar-fixed-top .brand instead.

Applications that used content from #sidebar_items must populate that content themselves (by rendering it directly in their partial, or in some other application-specific way).

Blacklight 4.2.2

17 Sep 19:09
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Improvements

  • Update testing dependencies for Rails 4.0 release
  • Update testing framework to use Solr 4.x

Upgrade Guide

No known issues

Blacklight 4.2.1

17 Sep 19:11
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Bug fixes

  • #554 enable users to update bootstrap-sass to the latest version
  • #557 add the post route for sending email
  • #559 Remove unnecessary require of 'mash' which was causing "uninitialized constant HashWithIndifferentAccess"
  • Fixed issue with refworks exports 156e76

Improvements

  • Rails 4 support

Upgrade Guide

No known issues

Blacklight 4.2.0

17 Sep 19:13
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Bug Fixes

  • #548 remove duplicate favicon link tag
  • #546 more straightforward testing (deprecating the test_support/bin/* scripts in favor of just rake)

Features

  • #549 add :helper_method parameter to #add_facet_field (similar to add_index/show_field)

Improvements

  • jQuery 1.9 compatibility (#545 and others)

Upgrade Guide

No known issues

Blacklight 4.1.0

17 Sep 19:14
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Release Notes

Bug fixes include:

  • #529 Responsive facet collapsing is not JS degradable
  • #528 Reset "page" param on "per_page" change

And some minor feature enhancements, highlights include:

  • #523 Pass the document object into helper methods so local overrides can make rendering decisions based on the current document
  • #522 Make it easier to add custom SolrField fields in the Blacklight config
  • add a #blacklight_solr accessor (intended to replace the global Blacklight.solr)
  • a French locale translation for Blacklight (thanks @biblimathieu!)

There's a handful of Rails 4 deprecation warnings and improvements that still need to happen, but this release fixed all major blockers and relaxes the Rails version dependency.

Upgrade Guide

No known issues.

Blacklight 4.0.0

17 Sep 19:15
Compare
Choose a tag to compare

Commit History | Upgrade Guide

Release Notes

  • Remove dependency on RSolr::Ext. In this first stage, some RSolr::Ext code is now maintained in Blacklight, e.g.:
    • RSolr::Ext::Response::Facets => Blacklight::SolrResponse::Facets
    • RSolr::Ext::Doc => Blacklight::Solr::Document
    • etc
  • Bootstrap-based view templates and default stylesheet; removed compass/susy
  • Drop support for Ruby 1.8; add support for Ruby 2.0

And the usual bug-fixes (some of which are backported into 3.8.x):

  • fix #64, show MoreLikeThis titles on record show page if available
  • fix #422; show prev/next options even when not linked
  • fix #450; support Solr 4.x and use it by default.
  • fix #484, use top-level constant BLACKLIGHT_VERBOSE_LOGGING (uninitialized by default) to log the full solr response with each solr query
  • fix #495 Remove blacklight_config.rb template
  • fix #496, removing hard-coded 'id' field reference in BookmarksController
  • remove unicode as an explicit Blacklight dependency, but use it if it is available
  • fix #499 When document_heading is an array, don't draw the array bracket…
  • fix #502, Endnote action tries to render partials and gives error
  • update per_page widget to use i18n strings; don't require echoParams
  • use 1.9-style string interpolation for template path lookups
  • consolidate solr pagination information lookup.

Plugins Compatibility

As of 11/26:

Tested/Compatible

  • blacklight_advanced_search
  • blacklight_cql
  • blacklight_range_limit
  • blacklight_browse_nearby

Upgrade Guide

When approaching the Blacklight 3.x => 4.0 upgrade, we'd strongly recommend adopting the bootstrap templates, update local overrides to use bootstrap, and do your own bootstrap stylesheet customization.

That said, it should be possible to do a fairly straightforward in-place upgrade if you so choose. Most of the Blacklight 4.x work was limited to views, javascript and stylesheets. If you want to keep the old Blacklight theme, you should be able to grab them from Blacklight and drop them into your application directly. We wouldn't recommend it though.

To upgrade your application to Blacklight 4.x:

  • Update your application's gem dependency to use Blacklight 4.0:
gem 'blacklight', "~>4.0"
  • Add the unicode gem to your application's Gemfile (if you want to use it to normalize character encoding for refworks integration):
gem 'unicode'
  • Remove compass/susy references; replace with bootstrap-sass:
# REMOVE:
gem 'compass-rails', '~> 1.0.0', :group => :assets
gem 'compass-susy-plugin', '~> 0.9.0', :group => :assets

# ADD:
gem 'bootstrap-sass'
  • (Remember to bundle install)
  • Add the following into your stylesheets directory (possibly as app/assets/stylesheets/blacklight.css.scss):
@import 'bootstrap';
@import 'bootstrap-responsive';

@import 'blacklight/blacklight';

You no longer need the blacklight_themes directory and can remove require 'blacklight_themes/standard' (and the jquery UI css) from your application.css

In app/assets/javascripts/application.js, you can also remove

//= require jquery-ui
  • If you have local overrides of stylesheets, javascript or view templates, you should update them appropriately. Be warned that some of the bootstrapped Blacklight HTML element classes and IDs may have shifted slightly, and the previous susy-grid and YUI class names have been removed.

In your ApplicationController, you need to tell your application which layout to use:

# completely Blacklight 3.x-backwards compatible
layout :choose_layout

# if you don't need dynamic layout switching, just do the Rails-standard:
layout 'blacklight'
  • If you are using devise-guests, you probably want to update to devise-guests ~> 0.3. After doing so,
$ rails g devise_guests
  • Then run the database migration task
$ rake db:migrate

If you've already chosen a different layout for your application, you don't need to do anything at all.

Here are some minor differences elsewhere:

  • Some i18n strings have been updated to read better in the new UI
  • the helper #render_document_heading returns an h4 instead of an h1.
  • the helper #document_show_fields returns a hash instead of a list of keys

Document partial paths

The default naming convention for format-specific partials was changed. In Blacklight 3.1, the default format-specific path was changed to catalog/_index_[format_name].html.erb, but support for the Blacklight 2.x style was left in place. In Blacklight 4, the Blacklight 2.x style was removed from the list of defaults.

So, if you have partials in a directory like:

catalog/_index_partials/[format_name].html.erb

they should be moved to

catalog/_index_[format_name].html.erb

Or, alternatively, you may override the helpers document_index_path_templates and document_partial_path_templates with a custom naming convention.