v4.0.0
Spotlight v4.0.0 was developed as the 3.6.0 beta series of pre-releases. It is released as 4.0 due to breaking changes that are explained in the Upgrade Steps.
Upgrade Steps
Add the following line to app/assets/config/manifest.js
//= link spotlight/manifest.js
If you are updating an existing app that uses Bootstrap 4 you should specify a compatible version of the bootstrap_form
gem in your Gemfile.
gem 'bootstrap_form', '~> 4.0'
Significant Changes
- Rails 7.1 support
- Bootstrap 5 support (also continues to work with Bootstrap 4)
- Sprockets is no longer required to compile the javascript. You can use alternative bundlers or just use the javascript published to NPM as spotlight-frontend
What's Changed
- document docker-compose by @dunn in #2844
- Fixing broken rake spotlight:export[exhibit_slug] task. by @phil-plencner-hl in #2841
- re-run rubocop, re-generate todo by @dunn in #2848
- fix docker build by @dunn in #2845
- rubocop: remove now-invalid cop definition by @dunn in #2849
- add iiif_service config option to allow external IIIF server by @dunn in #2847
- Use only indexed fields for faceting; fixes #2851 by @cbeer in #2852
- Use the latest bundler and maintain a bundler cache by @cbeer in #2839
- Fix new rubocop errors by @jcoyne in #2856
- Remove thor as a dependency by @jcoyne in #2855
- Allow view component to use the latest releases. by @jcoyne in #2854
- Upgrade to latest actions by @jcoyne in #2860
- Test on the latest versions of Rails by @jcoyne in #2859
- Replace faraday_middleware with faraday/follow_redirects for compatib… by @cbeer in #2861
- Add ruby 3.2 to the testing matrix by @jcoyne in #2858
- Publish assets to NPM by @jcoyne in #2862
- Update rubocop to ignore false positive by @jcoyne in #2865
- Bump Ruby and Alpine version of the Dockerfile by @jcoyne in #2867
- Stop compiling erb -> js by @jcoyne in #2873
- Update rubocop rules by @jcoyne in #2875
- Fix spec description by @jcoyne in #2880
- Simplify requirement for friendly_id by @jcoyne in #2881
- Avoid deprecated method render_search_bar by @jcoyne in #2879
- Update engine cart stanza by @jcoyne in #2882
- Avoid deprecated option capabilities, use options instead by @jcoyne in #2883
- Revert adding shakapacker by @jcoyne in #2871
- Use the preconfigured javascript driver by @jcoyne in #2887
- Drop dependency on underscore-rails by @jcoyne in #2877
- Use bin/rails rather than bundle exec rake by @jcoyne in #2889
- Remove MutationObserver polyfill by @jcoyne in #2888
- Render Analytics link in sidebar when enabled by @mcritchlow in #2813
- Use the test queue adapter for... tests. by @cbeer in #2698
- Support Blacklight 8 by @cbeer in #2853
- Test on latest version of solr by @jcoyne in #2876
- Switch to alert-info for "Reporting from" on the feedback form by @jcoyne in #2857
- Stop compiling javascript with erb by @jcoyne in #2893
- Remove jquery dependency for copy_email_addresses.js by @jcoyne in #2894
- Remove unused chrome-selenium container by @jcoyne in #2884
- Extract shared code to it's own file by @jcoyne in #2898
- Remove empty script by @jcoyne in #2895
- Remove eventable by @jcoyne in #2900
- Declare the downcode variable by @jcoyne in #2902
- Modularize spotlight admin components by @jcoyne in #2892
- Modularize user script directory by @jcoyne in #2899
- Declare variable before using it by @jcoyne in #2905
- Avoid assignment to an undeclared variable by @jcoyne in #2904
- Declare undeclared variables by @jcoyne in #2903
- Stop using deprecated rails-ujs options for link_to by @jcoyne in #2909
- Bundle the assets with rollup by @jcoyne in #2872
- Test on blacklight 8 beta 6 by @jcoyne in #2911
- Stop including unnecessary polyfill library by @jcoyne in #2886
- Simplify javascript bundling on Rails 6 by @jcoyne in #2870
- Upgrade sir-trevor to 0.7.5 by @jcoyne in #2913
- Upgrade to sir-trevor 0.8.2 by @jcoyne in #2914
- Declare undeclared variable by @jcoyne in #2915
- rails-ujs is deprecated so stop depending on it by @jcoyne in #2917
- Export Spotlight so that it's configuration may be modified by @jcoyne in #2918
- Stop requiring bootstrap components by @jcoyne in #2921
- Enable new rubocop by @jcoyne in #2924
- Update analytics to use GA4 by @thatbudakguy in #2923
- Update search session tracking for Blacklight 8 by @jcoyne in #2927
- Add documentation about why redcarpet is required by @jcoyne in #2935
- Make sprockets optional to enable propshaft by @jcoyne in #2931
- The / operator is deprecated in sass by @jcoyne in #2943
- Remove unused variables by @jcoyne in #2942
- Remove unnecessary include of bootstrap/variables by @jcoyne in #2941
- Don't redeclare variables that are already defined by Bootstrap by @jcoyne in #2940
- Add relative path to tiny-slider by @jcoyne in #2939
- Use Blacklight::Configuration.default_configuration for Blacklight 8 by @jcoyne in #2944
- Rebuild the javascript after Analytics was removed by @jcoyne in #2937
- Use relative paths to stylesheets by @jcoyne in #2936
- adding data-turbo=false by @hudajkhan in #2947
- Avoid deprecated / operator in sass by @jcoyne in #2945
- Rename file to scss because it uses sass variables by @jcoyne in #2946
- Remove handlebars_assets by @jcoyne in #2953
- Avoid deprecated / sass operator by @jcoyne in #2951
- Update to latest rubocop by @jcoyne in #2955
- Disable turbo where turbolinks is disabled by @jcoyne in #2959
- Rename module suffix from es6 to js by @jcoyne in #2956
- Link all the images by @jcoyne in #2957
- Remove unnecessary turbolinks disable on a hash link by @jcoyne in #2958
- Add importmap capabilities by @jcoyne in #2954
- Make the edit button display in the right location on Blacklight 8 by @jcoyne in #2969
- Remove unused method by @jcoyne in #2967
- Use pure sass in the template by @jcoyne in #2965
- Remove unused stylesheet by @jcoyne in #2964
- Complete some of the Rubocop todo by @jcoyne in #2972
- Test on released version of Blacklight 8 by @jcoyne in #2973
- Add some documentation to solr_documents_base_block.js by @tpendragon in #2975
- re-run rubocop for 1.50 by @dunn in #2976
- Autocorrect rubocop problems by @jcoyne in #2978
- Remove unnecessary webdrivers dependency by @jcoyne in #2979
- Autocorrect rubocop errors by @jcoyne in #2981
- Upgrade to ruby 3.0 in the Dockerfile by @jcoyne in #2997
- Add SKIP_TRANSLATION for initial setup by @mephillips-durham in #2982
- Allow acts-as-taggable-on 10.x by @jcoyne in #2996
- Allow paper_trail up though version 15 by @jcoyne in #2998
- Test on the latest rails releases by @jcoyne in #3000
- Fix flappy test by @corylown in #3003
- Call the on_error handler with the correct number of arguments. by @jcoyne in #2977
- Do a better job handling e.g. hash data structures in sidecar data by @cbeer in #2987
- Set the coder when using serialize by @jcoyne in #3005
- Use lucene query parser for search within user-created browse categories by @marlo-longley in #3004
- Coder: YAML change by @whisere in #3009
- Bump version to 3.6.0.beta7 by @marlo-longley in #3006
- Prevent explicit require of class in the autoload paths by @jcoyne in #3011
- Update README with spotlight development slack channel by @mephillips-durham in #2991
- Remove exclusion for method that doesn't exist by @jcoyne in #3013
- Pin devise >= v4.9 for turbo compatibility by @thatbudakguy in #2925
- Drop turbolinks dependency by @jcoyne in #3012
- Make it clear that Spotlight doesn't work with Rails 7.1 by @jcoyne in #3015
- Update + regenerate Rubocop rules by @cbeer in #3016
- Drop ruby 2.7 by @jcoyne in #3020
- Remove obsolete engine_cart config by @jcoyne in #3019
- Use latest version of bundler by @jcoyne in #3023
- avoid deprecated bundler method by @jcoyne in #3028
- Update tested rails versions by @jcoyne in #3027
- Remove unnecessary require by @taylor-steve in #3033
- Test on ruby 3.3 by @jcoyne in #3021
- Avoid border-right-radius Boostrap 4 mixin by @jcoyne in #3026
- Remove unnecessary gem from Gemfile.extra by @jcoyne in #3030
- remove unnecessary bundle install by @jcoyne in #3029
- Disable bundler cache by @jcoyne in #3031
- Raw document upload broken: fixed to access Solr via blacklight_config by @mephillips-durham in #2986
- Remove missing callback action by @taylor-steve in #3032
- Refactor solr repository fix so tests will pass by @corylown in #3037
- Update github actions/checkout to v4 by @corylown in #3035
- Set window size to make test setup more predictable by @corylown in #3042
- Update to docker/setup-buildx-action@v3 and docker/build-push-action@v6 by @corylown in #3043
- Add Rails 7.1 to the test matrix by @jcoyne in #2999
- Correct the property attribute for og:image meta tags by @mephillips-durham in #2988
- Wait for data to load in flappy test by @taylor-steve in #3040
- Pass the class argument to serialize as a keyword by @jcoyne in #3010
- Change permissions in CI by @taylor-steve in #3056
- Fix ID handling in IIIF helper methods by @dunn in #2863
- Remove errant characters from uploaded items block by @taylor-steve in #3059
- Partially revert #2969 to preserve backwards-compatible and allow dow… by @cbeer in #3060
- Add test to check that image viewer is rendered on the exhibits show page by @corylown in #3062
- Generate + test with the requested blacklight version. by @cbeer in #3061
- Stop suggesting rubocop extensions by @jcoyne in #3064
- Split feature spec and name the features being tested by @jcoyne in #3063
- Test on Rails 7.1 by @jcoyne in #3065
- Test on ruby 3.3 by @jcoyne in #3067
- Allow use of additional_options to engine cart by @jcoyne in #3066
- Restore item thumbnails in admin view by @corylown in #3068
- Introducing GitHub issue templates by @sarah-cul in #3045
- Fix exhibit user roles management by @corylown in #3073
- Update CI configuration by @taylor-steve in #3076
- Add support for Bootstrap 5 by @corylown in #3075
- Use equals with docker env vars by @jcoyne in #3079
- Move the most recent versions to the matrix by @jcoyne in #3082
- Set add_results_collection_tool configs in CatalogController template by @corylown in #3080
- Set checkbox form layout to vertical to fix BS5 display by @corylown in #3092
- Use div instead of small for form-text by @corylown in #3093
- Fix translation export button layout for BS5 by @corylown in #3094
- Fix Upload CSV form layout for BS5 by @corylown in #3096
- Add mb-3 to bulk download form group labels to even out spacing for BS5 by @corylown in #3097
- Set col-md-9 on bulk upload help div by @corylown in #3099
- Fix search results configuration layout for BS5 by @corylown in #3098
- Fix Sir Trevor Bootstrap 5 carousel blocks by @taylor-steve in #3104
- Switch to compact_blank for RuboCop by @taylor-steve in #3105
- Use Chrome binary from setup-chrome action by @taylor-steve in #3108
- Add margin to right/end of page publish checkbox by @corylown in #3106
New Contributors
- @phil-plencner-hl made their first contribution in #2841
- @hudajkhan made their first contribution in #2947
- @mephillips-durham made their first contribution in #2982
- @whisere made their first contribution in #3009
- @taylor-steve made their first contribution in #3033
- @sarah-cul made their first contribution in #3045
Full Changelog: v3.5.0.4...v4.0.0