Major/New Features
3.5 is a smaller release to lay the groundwork for major new features described in Spree Development Roadmap. It also contains a number of bug fixes and improvements besides described in this document.
Multi-store management
We've added an ability to manage multiple stores in one Spree instance of your application. Thanks to that you can easily create stores per region / language / currency. This feature will be enhanced in the next releases.
Contributed by Spark Solutions
Extracted Analytics tracker into an Extension
Our goal is always to keep the core Spree lean and flexible that's why we've moved all of the code of Analytics Trackers to an Extension which you can use with any Spree 3.1+
version.
Spree Analytics Trackers extension currently supports Google Analytics and Segment.com.
Contributed by Spark Solutions
Admin Panel views exporter
You can easily copy all of the default spree admin Panel into your project with just one command line:
rails g spree:backend:copy_views
We hope will make backend customization the Admin Panel a lot easier.
Contributed by supatk
Installation
Add Spree gems to Gemfile
gem 'spree', '~> 3.5.0'
gem 'spree_auth_devise', '~> 3.3'
gem 'spree_gateway', '~> 3.3'
Run bundle install
Use the install generators to set up Spree
rails g spree:install --user_class=Spree::User
rails g spree:auth:install
rails g spree_gateway:install
Upgrade
Update Gemfile
gem 'spree', '~> 3.5.0'
Run bundle update
Install missing migrations
rails spree:install:migrations
rails spree_auth:install:migrations
rails spree_gateway:install:migrations
Run migrations
rails db:migrate
Other Gotchas
Install Spree Analytics Trackers extension
If you were previously using Analytics Trackers feature you need to install it as an extension as it was extracted from the core.
- Add Spree Analytics Trackers to your
Gemfile
:
gem 'spree_analytics_trackers', github: 'spree-contrib/spree_analytics_trackers'
- Install the gem using Bundler:
bundle install
- Copy and run migrations:
bundle exec rails g spree_analytics_trackers:install
You're good to go!
Noteworthy Changes
Also please review each of the noteworthy changes, and ensure your customizations or extensions are not affected. If you are affected by a change and have any of your own tips please submit a PR to help the next person!
-
Added
Address#EXCLUDED_KEYS_FOR_COMPARISION
so developers won't need to rewriteAddress#same_as
method -
Added
PromotionActionLineItem
validations -
Renamed
FrontendHelper#breadcrumbs
toFrontendHelper#spree_breadcrumbs
andAdmin::NavigationHelper#icon
toAdmin::NavigationHelper#spree_icon
-
Deprecated
EnvironmentExtension
-
Deprecated
render_404
-
Updated javascript libraries in vendor
-
Added
Dockerfile
for sandbox application -
Replaced phantomjs with chrome headless
-
Replaced FactoryGirl with FactoryBot
-
Moved EmailValidator from lib to app
-
Added
rubocop-rspec
and fixed linter issues -
Added searching for a taxon with taxonomy in API
-
rescue nil
removed from promotion rules and promotion actions partials -
Dropped dependency on
with_model
gem -
Updated
paperclip
to~> 6.0.0
Full Changelog
You can view the full changes using Github Compare.