We just released Solidus v2.10!
Thanks to all contributors, testers, and users who made this release possible. This version's support will end in 18 months: 2021-07-15.
What's changed?
The full CHANGELOG can be found on our GitHub repository but here's a list of all major changes:
Added support for Rails 6
Solidus core now fully supports Rails 6! After upgrading to the 2.10 version you can follow the official Rails Upgrading Guide. Please note that Rails 6 requires Ruby 2.5.0 or newer.
- Add support for Rails 6 #3236 (aldesantis)
- Fix dummy app generator to skip Bootsnap and Webpack in Rails 6 #3327 (aldesantis)
- Handle deprecation for Rails 6 in DummyApp #3352 (cedum)
Deprecated support for Rails 5.1
Rails 5.1 is deprecated and we'll remove support for 5.1 on the next version. If you are still using it, a deprecation warning will be printed in your logs when the application boots.
Changed default images sizes
We update the images used by Solidus demo in the sample gem. To update
those images we needed to change the default sizes of Spree::Image. They
changed from:
mini: '48x48>', small: '100x100>', product: '240x240>', large: '600x600>'
to
mini: '48x48>', small: '400x400>', product: '680x680>', large: '1200x1200>'
If your store relies on these sizes, you should change them back following the guide here.
- Upload new sample images #3270 (mfrecchiami)
- Remove unused sample images #3397 (JDutil)
- Update sample imgs with wrong file extension #3343 (mfrecchiami)
State machines extracted into their own replaceable modules
This allows stores to replace the state machine completely with their own implementation, even with different gems or using custom code without any state machine gem. All the customizations previously made to the state machine should work smoothly, but it could be a good idea to check twice. You can read more about the suggested way to customize the state machine here.
Display error if editing non-current order
In Solidus frontend users were able to input any order_id in the
/orders/:order_id/edit route and they were simply seeing the cart
(showing the current order and not the requested one) without any notice.
With this Solidus version we print an flash message and redirect users to
their cart.
Solidus now requires Ruby 2.4 or newer
Ruby 2.2 and 2.3 support has ended, Rubocop support for 2.2 ended and they are also about to drop 2.3. Also, we already introduced code that is not compliant with 2.2 anymore.