blacklight 3.8.1 → 3.8.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. data/.travis.yml +14 -0
  2. data/VERSION +1 -1
  3. data/app/controllers/bookmarks_controller.rb +2 -0
  4. data/app/models/solr_document.rb +5 -0
  5. data/app/views/_user_util_links.html.erb +2 -0
  6. data/app/views/catalog/_bookmark_control.html.erb +1 -1
  7. data/doc/Atom-Responses.md +90 -0
  8. data/doc/Blacklight-3.2-Release-Notes-and-Upgrade-Guide.md +191 -0
  9. data/doc/Blacklight-3.3-release-notes-and-upgrade-guide.md +37 -0
  10. data/doc/Blacklight-3.4-release-notes-and-upgrade-guide.md +27 -0
  11. data/doc/Blacklight-3.5-release-notes-and-upgrade-guide.md +44 -0
  12. data/doc/Blacklight-3.6-release-notes-and-upgrade-guide.md +25 -0
  13. data/doc/Blacklight-3.7-release-notes-and-upgrade-guide.md +78 -0
  14. data/doc/Blacklight-3.8-release-notes-and-upgrade-guide.md +11 -0
  15. data/doc/Blacklight-Add-ons.md +28 -0
  16. data/doc/Blacklight-configuration.md +301 -0
  17. data/doc/Blacklight-on-Heroku.md +135 -0
  18. data/doc/Community-principles.md +44 -0
  19. data/doc/Configuring-and-Customizing-Blacklight.md +271 -0
  20. data/doc/Contributing-to-Blacklight.md +25 -0
  21. data/doc/Examples.md +62 -0
  22. data/doc/Extending-or-Modifying-Blacklight-Search-Behavior.md +141 -0
  23. data/doc/Home.md +77 -0
  24. data/doc/How-to-release-a-version.md +37 -0
  25. data/doc/Indexing-your-data-into-solr.md +5 -0
  26. data/doc/Integration-with-Rails-Footnotes.md +20 -0
  27. data/doc/Pagination.md +38 -0
  28. data/doc/Providing-your-own-view-templates.md +109 -0
  29. data/doc/Quickstart.md +116 -0
  30. data/doc/README.md +77 -0
  31. data/doc/README_SOLR.md +245 -0
  32. data/doc/Release-Notes-And-Upgrade-Guides.md +14 -0
  33. data/doc/Sunspot-for-indexing.md +46 -0
  34. data/doc/User-Authentication.md +60 -0
  35. data/doc/testing.md +115 -0
  36. data/lib/blacklight/controller.rb +4 -1
  37. data/lib/generators/blacklight/blacklight_generator.rb +2 -1
  38. data/lib/solrmarc.log.1 +849 -0
  39. data/test_support/bin/test.sh +3 -1
  40. data/test_support/features/record_view.feature +0 -1
  41. data/test_support/features/search.feature +0 -1
  42. data/test_support/features/step_definitions/error_steps.rb +1 -1
  43. data/test_support/features/step_definitions/general_steps.rb +1 -1
  44. data/test_support/features/step_definitions/search_facets_steps.rb +7 -7
  45. data/test_support/features/step_definitions/search_steps.rb +2 -2
  46. data/test_support/spec/{requests → features}/alternate_controller_spec.rb +0 -0
  47. data/test_support/spec/helpers/blacklight_helper_spec.rb +5 -5
  48. metadata +37 -5
data/.travis.yml ADDED
@@ -0,0 +1,14 @@
1
+ notifications:
2
+ email: false
3
+
4
+ rvm:
5
+ # - 1.8.7
6
+ - 1.9.3
7
+ # - rbx-2.0
8
+ # - jruby
9
+
10
+ env:
11
+ - RAILS_VERISON=3.2.8
12
+
13
+ script:
14
+ - test_support/bin/test.sh
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.8.1
1
+ 3.8.2
@@ -37,6 +37,8 @@ class BookmarksController < CatalogController
37
37
  @bookmarks << params[:bookmark] if params[:bookmark]
38
38
  end
39
39
 
40
+ current_or_guest_user.save! unless current_or_guest_user.persisted?
41
+
40
42
  success = @bookmarks.all? do |bookmark|
41
43
  current_or_guest_user.bookmarks.create(bookmark) unless current_or_guest_user.existing_bookmark_for(bookmark[:document_id])
42
44
  end
@@ -0,0 +1,5 @@
1
+ class SolrDocument
2
+
3
+ include Blacklight::Solr::Document
4
+
5
+ end
@@ -6,7 +6,9 @@
6
6
  <% end %>
7
7
  |
8
8
  <% end %>
9
+ <% if current_or_guest_user %>
9
10
  <%= link_to t('blacklight.header_links.bookmarks'), bookmarks_path %>
11
+ <% end %>
10
12
  <% if current_user %>
11
13
  |
12
14
  <%= link_to t('blacklight.header_links.saved_searches'), saved_searches_path %>
@@ -1,4 +1,4 @@
1
- <% if has_user_authentication_provider? and current_or_guest_user %>
1
+ <% if current_or_guest_user %>
2
2
  <%- existing_bookmark = current_or_guest_user.existing_bookmark_for(document.id) -%>
3
3
  <%-
4
4
  # Note these two forms are pretty similar but for different :methods, classes, and labels.
@@ -0,0 +1,90 @@
1
+ Blacklight will provide atom responses for all catalog/index results. Just add ".atom" on to the end of your path component, `/catalog.atom`, or `/catalog/index.atom`.
2
+ ```xml
3
+ <?xml version="1.0" encoding="UTF-8"?>
4
+ <feed xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns="http://www.w3.org/2005/Atom">
5
+ <title>Blacklight Search Results</title>
6
+ <author>
7
+ <name>Blacklight</name>
8
+ </author>
9
+ <link href="http://demo.projectblacklight.org/?commit=search&amp;amp;format=atom&amp;amp;q=urdu&amp;amp;search_field=all_fields" rel="self"/>
10
+ <link href="http://demo.projectblacklight.org/?commit=search&amp;amp;format=html&amp;amp;q=urdu&amp;amp;search_field=all_fields" rel="alternate" type="text/html"/>
11
+ <id>http://demo.projectblacklight.org/?commit=search&amp;amp;format=html&amp;amp;q=urdu&amp;amp;search_field=all_fields&amp;amp;type=text%2Fhtml</id>
12
+ <link href="http://demo.projectblacklight.org/?commit=search&amp;amp;format=atom&amp;amp;page=2&amp;amp;q=urdu&amp;amp;search_field=all_fields" rel="next"/>
13
+ <link href="http://demo.projectblacklight.org/?commit=search&amp;amp;format=atom&amp;amp;page=1&amp;amp;q=urdu&amp;amp;search_field=all_fields" rel="first"/>
14
+ <link href="http://demo.projectblacklight.org/?commit=search&amp;amp;format=atom&amp;amp;page=15&amp;amp;q=urdu&amp;amp;search_field=all_fields" rel="last"/>
15
+ <link href="http://demo.projectblacklight.org/catalog/opensearch.xml" rel="search" type="application/opensearchdescription+xml"/>
16
+ <opensearch:totalResults>147</opensearch:totalResults>
17
+ <opensearch:startIndex>0</opensearch:startIndex>
18
+ <opensearch:itemsPerPage>10</opensearch:itemsPerPage>
19
+ <opensearch:Query searchTerms="urdu" startPage="1" role="request"/>
20
+ <updated>2011-05-11T17:46:58Z</updated>
21
+ <entry>
22
+ <title>Urdu&#772; d&#803;ra&#772;ma&#772;</title>
23
+ <updated>2011-05-11T17:46:58Z</updated>
24
+ <link href="http://demo.projectblacklight.org/catalog/2008306442" rel="alternate" type="text/html"/>
25
+ <link href="http://demo.projectblacklight.org/catalog/2008306442.dc_xml" rel="alternate" title="dc_xml" type="text/xml" />
26
+ <link href="http://demo.projectblacklight.org/catalog/2008306442.xml" rel="alternate" title="xml" type="application/xml" />
27
+ <id>http://demo.projectblacklight.org/catalog/2008306442</id>
28
+ <author>
29
+ <name>Farg&#818;h&#818;a&#772;nah, 1979-</name>
30
+ </author>
31
+ <summary type="html">
32
+ &lt;dl class="defList"&gt;
33
+
34
+
35
+ &lt;dt class="blacklight-title_display"&gt;Title:&lt;/dt&gt;
36
+ &lt;dd class="blacklight-title_display"&gt;Urdu&#772; d&#803;ra&#772;ma&#772;&lt;/dd&gt;
37
+
38
+ &lt;dt class="blacklight-author_display"&gt;Author:&lt;/dt&gt;
39
+ &lt;dd class="blacklight-author_display"&gt;Farg&#818;h&#818;a&#772;nah, 1979-&lt;/dd&gt;
40
+
41
+
42
+ <!-- [...] -->
43
+ &lt;/dl&gt;
44
+ </summary>
45
+ </entry>
46
+ <!-- [...] -->
47
+ </feed>
48
+ ```
49
+
50
+
51
+ The same HTML summary included in your HTML results pages are included as an `atom:summary` element -- the atom template uses the `[[#render_document_partial|https://github.com/projectblacklight/blacklight/blob/master/app/helpers/blacklight/blacklight_helper_behavior.rb#L203]]` helper method to generate this HTML summary, so if you've over-ridden that for your app, it will be used as the `atom:summary` content instead.
52
+
53
+ ## API Usage
54
+ The Atom response is intended to be pretty full of data, so it can fill many traditional API requests. It makes use of every relevant atom or [[OpenSearch|http://www.opensearch.org/Home]] element that could be conveniently included.
55
+
56
+ The Atom response also supports arbitrary format representations in the `atom:content` element. You can include `&content_format=some_format` in your request URL (e.g. `[[/catalog.atom?content_format=oai_dc_xml|http://demo.projectblacklight.org/catalog.atom?q=urdu&content_format=oai_dc_xml]]`). Any format a given document can be exported as using the [[Blacklight document framework|Extending-blacklight-with-the-document-extension-framework]] is available. Not every document can export in every format -- if a format is requested one or more of the items in your atom result can not export as, it will not have an `atom:content` element. Non-XML-based formats are supported, as the content is Base64-encoded (as per Atom spec, unless the format is `text/plain`).
57
+ ```xml
58
+ <?xml version="1.0" encoding="UTF-8"?>
59
+ <feed xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns="http://www.w3.org/2005/Atom">
60
+ <title>Blacklight Search Results</title>
61
+ <author>
62
+ <name>Blacklight</name>
63
+ </author>
64
+ <link href="http://demo.projectblacklight.org/?content_format=oai_dc_xml&amp;amp;format=atom&amp;amp;per_page=1" rel="self"/>
65
+ <!-- [...] -->
66
+ <entry>
67
+ <title>The book of the dance in the 20th century selections from the Jane Bourne Parton collection of books on the dance</title>
68
+ <updated>2011-05-11T17:59:32Z</updated>
69
+ <link href="http://demo.projectblacklight.org/catalog/u1" rel="alternate" type="text/html"/>
70
+ <link href="http://demo.projectblacklight.org/catalog/u1.dc_xml" rel="alternate" title="dc_xml" type="text/xml" />
71
+ <link href="http://demo.projectblacklight.org/catalog/u1.xml" rel="alternate" title="xml" type="application/xml" />
72
+ <id>http://demo.projectblacklight.org/catalog/u1</id>
73
+ <author>
74
+ <name>Roatcap, Adela Spindler</name>
75
+ </author>
76
+ <summary type="html">
77
+ <!-- [...] -->
78
+ </summary>
79
+ <!-- [ Here is the export format as OAI Dublin Core XML ] -->
80
+ <content type="text/xml">
81
+ <oai_dc:dc xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:language>English</dc:language><dc:title>The book of the dance in the 20th century selections from the Jane Bourne Parton collection of books on the dance</dc:title><dc:format>Book</dc:format></oai_dc:dc> </content>
82
+ </entry>
83
+ </feed>
84
+ ```
85
+
86
+ This means that if you add on a document extension that provides more export formats for some or all of your documents, that will automatically be available in the atom response.
87
+
88
+ If you choose to use the [[Blacklight CQL add-on|https://github.com/projectblacklight/blacklight_cql]], the combination of [[CQL|http://www.loc.gov/standards/sru/specs/cql.html]] requests and Atom responses provides a pretty good more-or-less standards-based API to search results through Blacklight.
89
+
90
+ The Atom response generating template is at `app/views/catalog/index.builder.atom`.
@@ -0,0 +1,191 @@
1
+ ## Overview
2
+
3
+ Blacklight 3.2 introduces a number of new features to Blacklight, including the Rails asset pipeline, a configuration refactor, and support for Solr 3.x by default.
4
+
5
+ ### Upgrading to Rails 3.1
6
+
7
+ If you are still using Rails 3.0, you should first update your project to work with Rails 3.1. Start by fixing any Rails 3.0 deprecation warnings (as those features may no longer exist or fail silently in Rails 3.1). There are some good resources to help you with the upgrade (e.g. [[http://railscasts.com/episodes/282-upgrading-to-rails-3-1?view=asciicast]]).
8
+
9
+ ### Assets (CODEBASE-363)
10
+ Blacklight 3.2 uses the Rails 3.1 asset pipeline for all assets, stylesheets and javascript. The CSS has been refactored and now uses SCSS to enable easy changing of some common parameters/colors. In addition, it no longer uses YUI-grids CSS framework. (Instead it uses Susy grid css framework).
11
+
12
+ What does this mean for you?
13
+
14
+ * Small (hopefully) upgrade costs.
15
+
16
+ * Use of the asset pipeline to compress and streamline all css files into one.
17
+
18
+ * Easier theming of blacklight.
19
+
20
+ After having upgraded to BL 3.2 (and Rails 3.1), the first thing you should do is upgrade to use the asset pipeline. The Blacklight gem's standard behavior for including CSS and Javascript in your app **requires the asset pipeline**. (Of course, if you don't use the CSS or Javascript distributed with Blacklight, or want to roll your own custom way to include it, you could choose to continue without using the asset pipeline)
21
+
22
+ Run the Blacklight generator to upgrade from Blacklight 3.1 to 3.2:
23
+ ```
24
+ $ rails g blacklight
25
+ ```
26
+
27
+ This should update the `application.css` and `application.js` files with references to the new Blacklight assets. You will still need to move or update your local assets and customizations.
28
+
29
+ **Note**
30
+
31
+ * Now, if you have you will need to change your layout to use the new ids, look at: [app/views/layouts/blacklight.html.erb](https://github.com/projectblacklight/blacklight/blob/master/) for reference on the new tags (#page, #bd, #hd, #footer, #main, #main_container, #sidebar). The old yui tags have no meaning in the new css.
32
+
33
+ * This also means that any local CSS that overrides Blacklight's CSS, if your uses the old yui-grids id's in your CSS selectors, you probably want to change them to use the new id's. (#doc, #doc2, etc,, as well as any .yui-*)
34
+
35
+ * You will need to remove the line `require "yui"` from your `./app/assets/stylesheets/application.css`. In previous versions, Blacklight provided the YUI css library as part of the gem. In Blacklight 3.2, because the Blacklight is no longer using YUI, this has been removed. If you wish to continue using YUI, you will need to provide your own copy in your application. You can download the [Blacklight 3.1 YUI file](https://github.com/projectblacklight/blacklight/blob/release-3.1/app/assets/stylesheets/yui.css) or from the (Yahoo YUI site)[http://developer.yahoo.com/yui/2/].
36
+
37
+ ### Per-controller configuration (CODEBASE-365)
38
+
39
+ In previous versions of Blacklight, configuring Blacklight was done using a global configuration hash called `Blacklight.config` (created in `config/initializers/blacklight_config.rb`). Blacklight 3.2 deprecates this global configuration in favor of a per-controller, DSL-style configuration. Support for the old-style configuration is still available (meaning, if you do absolutely nothing, Blacklight will convert Blacklight.config into the new-style configuration, and your application will probably continue to work), but we strongly recommend applications switch to the new-style configuration.
40
+
41
+ The two major changes are moving from the global configuration (`Blacklight.config`) to a Controller-specific method (`blacklight_config`) and replacing the hash-based access with an OpenStruct-based domain-specific language. The new style maintains many of the old semantics, but should be better structured and more clear.
42
+
43
+ On your CatalogController, you can configure the Blacklight Catalog:
44
+
45
+ ```ruby
46
+ class CatalogController < ApplicationController
47
+
48
+ include Blacklight::Catalog
49
+
50
+ configure_blacklight do |config|
51
+ config.default_solr_params = {
52
+ :qt => 'search',
53
+ :rows => 10
54
+ }
55
+
56
+ # solr field configuration for search results/index views
57
+ config.index.show_link = 'title_display'
58
+ config.index.record_display_type = 'format'
59
+
60
+ # solr field configuration for document/show views
61
+ config.show.html_title = 'title_display'
62
+ config.show.heading = 'title_display'
63
+ config.show.display_type = 'format'
64
+
65
+ # ....
66
+ end
67
+
68
+ # ...
69
+ end
70
+
71
+ ```
72
+
73
+
74
+ #### Creating a new configuration
75
+
76
+ An example of the new style configuration is available at
77
+ [[https://github.com/projectblacklight/blacklight/blob/master/lib/generators/blacklight/templates/catalog_controller.rb]] and shows most of the ways one can use the new configuration.
78
+
79
+ There are helper methods for adding field configuration (facets, index, and show fields) as well as search and sort fields. All of these methods accept a variety of inputs and should be used in local applications in whatever form is most clear.
80
+
81
+ Field + configuration hash
82
+
83
+ ```ruby
84
+ config.add_facet_field 'format', :label => 'Format'
85
+ ```
86
+
87
+ Configuration hash
88
+
89
+ ```ruby
90
+ config.add_sort_field :sort => 'score desc, pub_date_sort desc, title_sort asc', :label => 'relevance'
91
+ ```
92
+
93
+ Field + block
94
+
95
+ ```ruby
96
+ config.add_search_field('title') do |field|
97
+ # solr_parameters hash are sent to Solr as ordinary url query params.
98
+ field.solr_parameters = { :'spellcheck.dictionary' => 'title' }
99
+
100
+ # :solr_local_parameters will be sent using Solr LocalParams
101
+ # syntax, as eg {! qf=$title_qf }. This is neccesary to use
102
+ # Solr parameter de-referencing like $title_qf.
103
+ # See: http://wiki.apache.org/solr/LocalParams
104
+ field.solr_local_parameters = {
105
+ :qf => '$title_qf',
106
+ :pf => '$title_pf'
107
+ }
108
+ end
109
+ ```
110
+
111
+ #### Using the new configuration
112
+
113
+ Within a controller, the configuration can be accessed using the method `blacklight_config`, which is also exposed to helpers or views as a helper method.
114
+
115
+ Outside of a controller context (which should be rare, and likely undesirable), the configuration is exposed at the class level as well, e.g.:
116
+
117
+ ```ruby
118
+ CatalogController.blacklight_config
119
+ ```
120
+
121
+ Some configuration-driven helper methods have also been moved to the configuration object:
122
+
123
+ ```ruby
124
+ blacklight_config.default_search_field
125
+ blacklight_config.default_sort_field
126
+ blacklight_config.max_per_page
127
+ ```
128
+
129
+ The Blacklight field configuration are stored as ordered hashes, with a key corresponding to the field name:
130
+
131
+ ```ruby
132
+ CatalogController.blacklight_config.facet_fields
133
+
134
+ # {
135
+ # "format" => #<Blacklight::Configuration::FacetField:0x1025a0c78
136
+ # :label => "Format",
137
+ # :field => "format"
138
+ # >,
139
+ # "pub_date" => #<Blacklight::Configuration::FacetField:0x1025a7aa0
140
+ # :label => "Publication Year",
141
+ # :field => "pub_date"
142
+ # >,
143
+ # ...
144
+ ```
145
+
146
+ Values can be accessed using OpenStruct methods or as a Hash:
147
+
148
+ ```ruby
149
+ CatalogController.blacklight_config.facet_fields["format"].label # == "Format"
150
+ CatalogController.blacklight_config.facet_fields["format"][:label] # == "Format"
151
+ ```
152
+
153
+ ### Using the new-style config in local overrides
154
+ If you have overriden views or helpers in your local application and access `Blacklight.config` directly, you will need to update your overrides. In general, you should be able to search for references to `Blacklight.config` in your local application, replace it with the controller-level method `blacklight_config` and possibly fix up some naming differences.
155
+
156
+ ### Facet refactor
157
+ Facet helpers and views have been refactored to take advantage of the new configuration style and new features in Rails.
158
+
159
+ The old `_facet_limit` view has been split in two,
160
+
161
+ * `_facet_limit` : the partial to display the facet values
162
+ * `_facet_layout` : a 'partial layout' that displays the facet structure and headers
163
+
164
+ In the facet configuration, you can specify the partial to use to render a facet:
165
+ ```ruby
166
+ config.add_facet_field 'format', :label => 'Format', :partial => 'my_custom_format_facet_display_partial'
167
+ ```
168
+
169
+ ### Solr 3.5 (CODEBASE-345)
170
+ Blacklight-jetty has been updated to Solr 3.5 (previously it was still Solr 1.4). Blacklight is still compatible with both Solr 1.x and 3.x, but the demo application is based on a Solr 3.x configuration.
171
+
172
+ #### SolrMarc 2.3.1
173
+ Older versions of SolrMarc were incompatible with Solr 3.x. Blacklight is now distributed with SolrMarc 2.3.1. But previous versions of Blacklight erroneously copied a SolrMarc.jar into your local app's lib/SolrMarc.jar when installing Blacklight.
174
+
175
+ If you have a previously installed Blacklight, unless you have intentionally installed a local compile of SolrMarc.jar, you should remove the file at local ./lib/SolrMarc.jar, so your app will use the latest version of SolrMarc shipped with Blacklight.
176
+
177
+
178
+
179
+ ### Other changes
180
+
181
+ * [CODEBASE-325](http://jira.projectblacklight.org/jira/browse/CODEBASE-325) - Allow Blacklight to function correctly when no user authentication system is provided
182
+ * [CODEBASE-362](http://jira.projectblacklight.org/jira/browse/CODEBASE-362) - Blacklight facets do not work with integer-type fields
183
+ * [CODEBASE-367](http://jira.projectblacklight.org/jira/browse/CODEBASE-367) - Pull in Hydra's jettywrapper to manage jetty
184
+ * [CODEBASE-369](http://jira.projectblacklight.org/jira/browse/CODEBASE-369) - Advanced Search has an incompatible character encoding issue under ruby 1.9
185
+ * [CODEBASE-371](http://jira.projectblacklight.org/jira/browse/CODEBASE-371) - SolrHelper#get_solr_response_for_field_values does not adequately escape value lists
186
+ * [CODEBASE-375](http://jira.projectblacklight.org/jira/browse/CODEBASE-375) - fix rake solr:marc:index task and generator to use distro SolrMarc.jar
187
+ * [CODEBASE-376](http://jira.projectblacklight.org/jira/browse/CODEBASE-376) - Look at the did_you_mean.feature scenarios, review for accuracy.
188
+ * [CODEBASE-377](http://jira.projectblacklight.org/jira/browse/CODEBASE-377) - Convert opensearch.xml.erb to true XML builder style
189
+ * [CODEBASE-379](http://jira.projectblacklight.org/jira/browse/CODEBASE-379) - Factor out use of RSolr's pagination feature and use Solr's start/rows parameters instead
190
+ * [CODEBASE-380](http://jira.projectblacklight.org/jira/browse/CODEBASE-380) - ActionMailer deprecations
191
+
@@ -0,0 +1,37 @@
1
+ Issues: https://github.com/projectblacklight/blacklight/issues?milestone=2&state=open
2
+
3
+ ## Upgrade notes:
4
+
5
+ Note: Please make sure to upgrade to at least Blacklight **3.3.1** to avoid problems with compiled assets in 3.3.0.
6
+
7
+ If you previously ran the blacklight 3.3.0 generator, after upgrading to 3.3.1: Edit your local `./app/assets/stylesheets/blacklight_themes/standard.css.scss` file, change the line (wrong) `@import 'blacklight/grids/susy';` to instead be (right) `@import 'blacklight/grids/susy_grid';`
8
+
9
+ If you previously ran the blacklight 3.2.x or 3.3.0 generator, look in your local `./config/application.rb`, *remove* the line `config.sass.line_comments = Rails.env.development?` if present.
10
+
11
+ ### Compass/susy upgrade
12
+
13
+ [Compass](https://github.com/chriseppstein/compass) (our CSS framework) and [Susy](http://susy.oddbird.net/) have been updated to a new major release. This will necessitate some changes in installations already running BL 3.2.
14
+
15
+ New installations should just use the generator as normal.
16
+
17
+ Existing installations should do the following:
18
+
19
+ **1.** In your gemfile, in `group :assets`, remove any reference to the compass gem, and add:
20
+
21
+ gem 'sass-rails', '~> 3.2.0'
22
+ gem 'compass-rails', '~> 1.0.0'
23
+ gem 'compass-susy-plugin', '~> 0.9.0'
24
+
25
+ **2.** You can remove 'config/initializers/sass.rb'
26
+
27
+ **3.** You must add, if you have not already: 'config/compass.rb'
28
+
29
+ require 'susy'
30
+ project_type = :rails
31
+
32
+ **4.** Replace any references in your css:
33
+
34
+ `@import "blacklight/grids/susy_framework"` with `@import "susy"`
35
+
36
+ `@import "blacklight/grids/susy"` with `@import "blacklight/grids/susy_grid"`
37
+
@@ -0,0 +1,27 @@
1
+ # Blacklight 3.4 Release notes
2
+ Blacklight 3.4.0 is now available. It fixes a number of bugs and
3
+ tests, but also adds a handful of new features.
4
+
5
+ - Fixed Rails 3.1 compatibility for rspec tests
6
+ - changes to make Blacklight work better with arbitrary solr indexes.
7
+ - Use ERb to parse the solr.yml configuration (allowing environment
8
+ variables to be referenced in the config)
9
+ - fixed #351, saving Selected Items (Folder) to Bookmarks
10
+ (SavedRecords), more than 10.
11
+ - fixed #398 document fetching/config refactor, which elevates
12
+ document-request solr parameters into the controller's
13
+ blacklight_config.
14
+ - fixed #333, Blacklight should throw more helpful errors if it
15
+ unable to connect to Solr
16
+ - fixed #96, supporting configurable request handler paths
17
+
18
+ The full list of Github issues are at:
19
+ https://github.com/projectblacklight/blacklight/issues?milestone=4&state=closed
20
+
21
+ Also, the GitHub compare view of this release vs. our last release is
22
+ located at:
23
+ https://github.com/projectblacklight/blacklight/compare/v3.3.0...v3.4.0
24
+
25
+ # Upgrade notes
26
+
27
+ No known issues updating from 3.3 to 3.4.
@@ -0,0 +1,44 @@
1
+ # Blacklight 3.5 Release Notes And Upgrade Guide
2
+
3
+ ## Release Notes
4
+ # Blacklight 3.5 Release notes
5
+ Blacklight 3.5.0 is now available. It introduces i18n support for Blacklight, allowing applications to change and modify Blacklight-provided text strings without the need to override partials (in addition to providing multi-lingual support).
6
+
7
+ - Fix #395, removing hard-coded no-reply@ email addresses from the ```RecordMailer``` (see below for upgrade notes)
8
+ - Consistent use of polymorphic routing to the show views for documents. ```solr_document_url``` and ```solr_document_path``` are now part of the engine-provided routes, rather than helper-provided.
9
+ - Refactor `blacklight.js` to take advantage of the Rails asset pipeline by moving separate blocks of code into individual files.
10
+ - Fix problem with mounting Blacklight applications at a suburi rather than a document.
11
+
12
+ The full list of Github issues are at:
13
+ https://github.com/projectblacklight/blacklight/issues?milestone=7&state=closed
14
+
15
+ Also, the GitHub compare view of this release vs. our last release is
16
+ located at:
17
+ https://github.com/projectblacklight/blacklight/compare/v3.4.2...release-3.5
18
+
19
+
20
+ ## Upgrade Guide
21
+
22
+ No known issues updating from 3.4 to 3.5.
23
+
24
+ ## i18n
25
+
26
+ Blacklight 3.5 introduces i18n (internationalization framework) support. See the Ruby on Rails [[i18n Rails guide|http://guides.rubyonrails.org/i18n.html]] for information on how to use i18n within your application. The list of blacklight-provided (English) translations are available in the engine's [[```config/locales/blacklight.en.yml```|https://github.com/projectblacklight/blacklight/blob/master/config/locales/blacklight.en.yml]]
27
+
28
+ ## RecordMailer default email
29
+
30
+ In config/environments/development.rb:
31
+ ```ruby
32
+ ActionMailer::Base.default :from => 'default@development-server.com'
33
+ ```
34
+
35
+ In config/environments/production.rb:
36
+ ```ruby
37
+ ActionMailer::Base.default :from => 'default@production-server.com'
38
+ ```
39
+
40
+ You can also target the RecordMailer directly:
41
+
42
+ ```ruby
43
+ RecordMailer.default :from => 'no-reply@projectblacklight.org'
44
+ ```