Skip to content

@sauloperez sauloperez released this May 14, 2019

Added

Add a new tab with the cache diff for products_cache_integrity_checker_job.rb errors in Bugsnag #3849

Assets 2

@mkllnk mkllnk released this May 7, 2019 · 2 commits to 2-0-1 since this release

The Open Food Network software has been using the Spree e-commerce module from the beginning. It allowed us to prototype quickly and gave us a good understanding of general e-commerce logic. But it's also our biggest dependency and upgrading to new versions becomes increasingly difficult.

We have been working hard to upgrade from Spree 1 to Spree 2. Special thanks go to @luisramos0 who spend many months on this. While most of the changes are not visible, there are a few things that are.

Important changes

  • Visual changes: All customer facing pages stay the same. But there are details of the admin interface changing. But don't panic. The functionality should be the same.
  • Stock logic: If you set a variant to on demand in the past, the stock level was ignored. Customers could order as much of that variant as they liked. In version 2, they still can order as much as they like but the stock level is updated as well. So if you have 5 carrots left and somebody orders 7 you will have a stock level of -2. It won't be visible though until you disable on demand.
  • Shipping Categories in Shipping Methods and Products: Shipping Methods now have shipping categories. At the same time, shipping category is now mandatory for products. There will be a default shipping category and it will be assigned to every existing product in the system during the upgrade to OFN v2. Shipping Categories have no influence on the checkout process.
  • Zones in Shipping Methods: Shipping Methods can now be part of multiple checkout zones. This is coming from spree v2. Each OFN instance is working on a specific zone and you should assign your shipping methods to that zone always, otherwise users may not be able to checkout using your shipping method.
  • We have fixed a problem with updating the stock levels for canceled orders where the returned stock was put back in the producers catalog instead of the distributor inventory #1631

OFN version 2.0 and Spree version 2.0 cannot be separated

Assets 2

@luisramos0 luisramos0 released this May 6, 2019

This is the last release before we move to v2. Here we deliver a few things to improve how we manage our infrastructure.

Added

Add Delayed Job Web to enable delayed job management to superadmins through a web UI #3697
Allow storing backups in any S3 region #3763
Translations #3712, #3745 and #3769

Fixed

Make Db2fog pick up the latest values of the S3 env vars and not the ones previously persisted #3763
Don't use s3 for images unless images bucket has been provisioned #3764

Changed

Bump whenever from 0.10.0 to 0.11.0 #3753
Bump oj from 3.7.11 to 3.7.12 #3744
Improve how we install postgres database ofn-install #400
Improve postgres database monitoring ofn-install #409 and Enable pg stat statements #424

mahdis-mousavi-1106480-unsplash
Photo by mahdis mousavi on Unsplash

Assets 2

@sauloperez sauloperez released this Apr 12, 2019

This release will likely be the last one before v2 and for that we improved a bit our test coverage but also fixed various annoying bugs, improved two reports and updated some dependencies. We also welcome the first contributions of @amers185 and @SDBowen 🎉!

Added

  • Translations #3710, #3686, #3636
  • Added missing translations for order form in v2 #3679
  • Adds a Shipping Method column to the Orders And Distributors report. This allows the users to see the the shipping detail of each order #3662
  • Test inventory report to use variant overrides #3654
  • Add missing translation key #3647
  • Added a new integration test to ensure that the registration link works on all pages #3624
  • Added tasks to clean up and truncate data in large databases, so it becomes possible to use it for testing in smaller servers #3579

Changed

  • Moved db2fog initializer into the main repo from ofn-install #3694, #3726
  • Our dependency specification (Gemfile) became more accurate #3665
  • Bumped Stripe from 4.9.0 to 4.10.0 #3631
  • Bumped Stripe from 4.10.0 to 4.11.0 #3656
  • Bumped oj from 3.7.10 to 3.7.11 #3632
  • Bumped dalli from 2.7.9 to 2.7.10 #3619

Fixed

  • In the Customer Totals report, separate rows for different variants and use the variant SKU #3646
  • Untranslated "producer profile" in pack selection page #3644
  • Update the cache when a variant listed in an order cycle is removed. This was the cause of removed variants still being shown in the shopfront #3639
  • Fix sample data after removal of ProductDistribution #3633
  • The international decimal separator logic can now be used for the weight calculator as well #3614
  • Fix setup data and assertions for OrderSyncer specs #3605
  • Improved reliability of our automated tests #3590
  • Fix nil values in Product Import's on_hand column #3537

IMG_1770

Assets 2

@kristinalim kristinalim released this Mar 20, 2019

This release adds nl_BE translations, which will be used by the Belgian 🇧🇪 instance. This also does a lot of cleanup, including removing Product Distributions (the predecessor of order cycles) and removing a lot of unused code.

Bug fixes, other code improvements, and gem upgrades are also included.

Added

  • Made it possible to both use and debug products cache in development. #3595
  • Added Flemish translation (nl_BE) which will be used by the Belgian instance. #3599
  • Improved test coverage in the edit variants page. #3617

Changed

  • Bumped oj from 3.7.9 to 3.7.10 #3606
  • Bumped unicorn from 5.4.1 to 5.5.0 #3575
  • Upgraded Bugsnag Ruby notifier library from 5.5.0 to 6.11.1 #3511
  • Refactored valid distributed products in an order cycle, which is used by RefreshProductsCacheJob. #3581

Fixed

  • Fixed the display of validation errors when creating a product as admin. #3585
  • Cache refreshes of a deleted order cycle no longer get retried. #3583

Removed

  • Removed old unused code, which makes OFN easier and faster to maintain and develop. #3569
  • Removed a feature that was not working: Product Distributions, the predecessor of order cycles. #3570

1190267865_ba328300e6
(Photo: "Two varieties of Durian" by Yun Huang Yong / CC BY 2.0)

Assets 2

@Matt-Yorkley Matt-Yorkley released this Mar 7, 2019

This release brings a number of changes gearing up for our switch to Spree 2.0 and some refactoring for speed improvements. Buen provecho!

Added

  • Bring into the app the Bugsnag initializer used in ofn-install. It won't be symlinked at deploy time anymore. #3554 (Connected to ofn-install change: openfoodfoundation/ofn-install#329)
  • Added code documentation of stock validation rules. #3531
  • Added translation entries that will be used for OFN v2, so that translators can start the translation work. #3535
  • Added description field to the CSV template. #3556
  • Product Import is now available for admin users. #2947
  • Easier cache debugging with a new checkbox for admins to disable products cache. #3404

Changed

  • Better organization of the javascript test files. #3494
  • Bumped oj from 3.7.8 to 3.7.9 #3517
  • Bumped stripe from 4.5.0 to 4.9.0 #3499
  • Bumped combine_pdf from 1.0.15 to 1.0.16 #3547
  • Inventory rules are now more strict about using producer settings in inventory where stock levels are always ignored. #3505
  • Improved the organisation of the translations of the enterprise registration process. #3534
  • Changed naming method for temporary uploaded CSV files. #3435
  • Refactor CachedEnterpriseSerializer's #distributed_properties to make it easier to remove an N+1 on the properties table in the future. #3305
  • Added and improved sample data for testing and demo instances. #3209

Fixed

  • Excluded failed, invalid, and zero value adjustments from Enterprise Fee Summary. #3512
  • Fix datetime picker inputs on Order Cycles forms. #3472
  • Subscriptions: orders created by a subscription that have been manually cancelled before an OC closes will not be incorrectly processed. #3539
  • Fix calculation of payment transaction fee when the order is already completed, the calculator is order-based, and inventory tracking is enabled #3562

Removed

  • Removed old code that is no longer in use. #3498

screenshot-2019-03-07-00-46 35

Assets 2

@mkllnk mkllnk released this Feb 21, 2019

Summary

Sometimes the details make all the difference. And this release delivers some small but important changes.

  • Invoices now contain the supplier name for each item. This makes invoices more useful packing sheets. We have bulk invoice printing already.
  • Product Import: The inventory template got updated. You need to update your local copies. And when importing products, variants of the same product don't have to be grouped together any more. We also fixed some incompatibility with Excel.
  • Enterprise Fee Summary report is now available for super admins. This gives us the opportunity for more testing with production data before we release it to all enterprise users.

Added

  • Add "Enterprise Fee Summary" report available only to superadmin users. #3415
  • Added Catalan translation which will work on Katuma. #3463

Changed

  • Invoices now contain the supplier name for each item. #3444
  • Updated inventory CSV template for Product Import. #3233
  • Improved our automated tests. #3481
  • Bump selenium-webdriver from 3.12.0 to 3.141.0 #3507
  • Bump bugsnag from 4.1.0 to 5.5.0 #3500
  • Bump dalli from 2.7.2 to 2.7.9 #3403
  • Bump spinjs-rails from 1.3 to 1.4 #3460
  • Bump i18n-js from 3.1.0 to 3.2.1 #3377
  • Bump rspec-rails from 3.8.1 to 3.8.2 #3459

Fixed

  • Fixed another encoding issue with CSV files made in Excel. #3506
  • Fixed a potential bug when importing multiple variants at once with product import. #3434
  • Fixed currency symbol localization in subscriptions. #3451
  • Address intermittently failing feature tests #3470 #3467 #3469
  • Added missing translation for "You have XX active products" in admin dashboard. #3378

Removed

  • Removed old useless code. #3462

Zuchinis

Assets 2

We are releasing a YamYam release mainly to fix permissions on bulk invoices for producers.
In this release we have also improved the stability of our build.
Thanks @leandroalemao for his contribution 🎉

Fixed
Fixed permissions on bulk invoices for producers #3433
Change processing by batch of rows in product import and inventory import CSV files to happen one batch after another, not simultaneous #3387
Fix moment.js deprecation warning #3386
Address intermittently failing feature tests #3430 #3412 #3432 #3416

Changed
Renamed rake tasks from openfoodnetwork -> ofn to be less verbose #3418
Bump jwt from 1.5.6 to 2.1.0 #3367
Bump redcarpet from 3.2.3 to 3.4.0 #3389
Bump stripe from 3.3.2 to 4.5.0 #3357
Reduce restrictions for adding a variant to a subscription. The following are now allowed: #2733

  • Variants for which the shop is the supplier
  • Variants of suppliers that have granted the shop permission to "add to order cycle"
  • Variants which are in an outgoing exchange to the shop, regardless of the timing of the OC
Assets 2

@luisramos0 luisramos0 released this Jan 30, 2019

In this release, we added bulk invoice printing to admin orders page (it's only available to administrators right now, it will soon be available to all users)
We also made our test suite a lot better by migrating from PhantomJS to HeadlessChrome. We have also fixed the tax rates report!

We are delighted to have 3 new contributors in this release! Thanks @kevinchristianson, @brases and @nozakis for your contributions. And thanks @alvaro-chalar for your new contributions.

Here’s a more detailed summary of what’s in the release:

Added
Added bulk invoice printing to admin orders page #2869
Major improvement of our test suite by moving from PhantomJS to HeadlessChrome. This makes the tests more reliable and more real as the browser the tests are executed now is a lot more similar to modern browsers #3346
Added file encoding error messages to product import #2988
Added script to install the right version of our dependency bundler #3302

Changed
Some reports have a Go button instead of a Search button #3224
Move the enterprises' load from the injection helper to the controller #3257
Moved back to therubyracer for asset compilation to avoid trouble caused by the faster mini racer #3244
Improved test code quality #3326
Improved tests around user access to manage inventories #2833
Improved code in cart population and stock levels management in the cart #3230
Completed conversion of all stylesheets to SCSS file format #3359
Updated our use of the date calculating library momentjs to stay compatible with future versions #3344
Bump blockenspiel from 0.4.5 to 0.5.0 #3211
Bump uglifier from 4.1.19 to 4.1.20 #3280
Bump spring from 1.1.3 to 1.7.2 #3324
Bump whenever from 0.9.2 to 0.10.0 #3340
Bump letter_opener from 1.6.0 to 1.7.0 #3342
Bump paper_trail from 3.0.9 to 5.2.3 #3323
Bump diffy from 3.1.0 to 3.3.0 #3351
Bump oauth2 from 1.2.0 to 1.4.1 #3234
Bump foundation-rails from 5.5.0.0 to 5.5.2.1 #3352
Bump delayed_job_active_record from 4.1.2 to 4.1.3 #3350
Bump oj from 3.7.4 to 3.7.8 #3390
Bump daemons from 1.2.2 to 1.3.1 #3341

Fixed
The tax rates report is working again. It crashed with orders containing orphaned enterprise fees including tax #3229
Fixed bug in fees calculated based on weight. Bug introduced in v1.23 (#2932). This bug was applicable to orders with multiple weight based line items in order cycles with enterprise fees that use a weight calculator (this was validated in live environments and we didn't detect any case where this was applicable) #3072
Fixed edge case on inventory page where permissions for hub are not available #3169
Fixed “first name begins with” and “state” translations in order page #3304
Fix wording in email template for orders confirmation #3360
Searching as admin, e.g. for orders or products is more reliable when typing very fast (like a robot) #3325
Fixed an issue with bad spacing on the account settings error page #3002

Removed
Removed unused folders and files from the source code making it more simple #3322

red-cocoyam

Assets 2

@sauloperez sauloperez released this Jan 9, 2019

In this release, we improved quite a lot some edge cases related to Variant Overrides, changed the emails so you get them in your language and improved the development experience a great deal with faster test execution, among many others.

Added

  • Import Spree views for payment_methods new and edit in our codebase. #3156
  • Emails all now sent in specific locales related to the users, not the instance default language. #3189
  • Added support for spring rails app preloader. #3245

Changed

  • Disable Rubocop check Metrics/BlockLength for it blocks. #3213
  • Require variant override "On Demand" and "Count on Hand" to be compatible. #3198
  • Migrate existing variant overrides to comply with new validation rules. Changes to the variant overrides are recorded in reports/SimplifyVariantOverrideStockSettings/ in the application path: changed_variant_overrides.csv has the complete list of affected records, and there are CSV files specific to each distributor affected. #3198
  • Make resetting stock settings for variant override change "On Demand" to "No" (false). #3198
  • Update Inventory data import to set appropriate variant override "On Demand" for specified "On Hand" value. #3198
  • Bumped angularjs-file-upload-rails from 1.1.6 to 2.4.1 #3196
  • Bumped momentjs-rails from 2.5.1 to 2.20.1 #3227
  • Bumped wkhtmltopdf-binary from 0.12.3.1 to 0.12.4 #3212
  • Bumped guard from 2.14.1 to 2.15.0 #3236
  • Bumped webmock from 3.4.2 to 3.5.1 #3251
  • Disable Rubocop check Metrics/BlockLength for collection, member, namespace, resource, resources blocks. #3223

Fixed

  • Update the UI for "On Demand" and "Count on Hand" in the Inventory page to allow display and selection of "Use producer stock settings", and to encourage compatible "On Demand" and "Count on Hand". #3104
  • Allow tests in "web" engine to be run with bundle exec rspec from the engine path. #3088
  • Add Rake task openfoodnetwork:specs:engines:rspec to run RSpec tests for all engines. #3088
  • Add Rake tasks openfoodnetwork:specs:engines:ENGINE_NAME:rspec to run RSpec tests of a specific engine. #3088
  • Update enteprises with wrong instagram links and improve UX by means of placeholders #2849
  • Fix menu_1_url translation for the fr_BE locale #3273

Assets 2
You can’t perform that action at this time.