Oscar 0.6.1 release notes

This is Oscar 0.6.1. It fixes one potentially serious data loss issue and a few minor bugs.

Possible data loss from deleted users

Before this release, the foreign key from the Order model to the User model did not specify an on_delete behaviour. The default is for deletes to cascade to related objects, even if the field is nullable. Hence, deleting a user would also delete any orders they had placed.

As of 0.6.1, the foreign keys to user, shipping address and billing address on the Order model specify on_delete=SET_NULL to avoid orders being deleted accidentally.

See Django’s docs for more info on on_delete options.

Missing translations

The 0.6 release failed to include several translations from Transifex due to a problem in the way we updated translation files before release. This release rectifies that and includes the latest translation files.

Known issues

  • Django 1.4 only: The changes in #1127 mean you explicitly need to register a call to migrate_alerts_to_users when the post_save signal is emitted for a User model.

Bug fixes

The following bugs were fixed:

  • #1109 - Workaround for a bug in Bootstrap regarding the collapsing of the navigation bar.

  • #1121 - Added a confirmation view to removing products from wish lists because one can’t POST to it in all cases.

  • #1127 required that the migrate_alerts_to_user function is now explicitly called in Oscar’s base User class. It previously was wired up as a post_save signal receiver on the User model, which does not work in Django 1.5+.

  • #1128 - Calls to Source.debit without an amount argument were failing as balance was being called as a method instead of a property.

  • #1130 - Variant products were not fetching the product class instance correctly within is_shipping_required.

  • #1132 and #1149 - Rich text attributes were not supported. Should be displayed correctly now. Also introduced hooks for adding support for e.g. file and image types.

  • #1133 - The order detail page for anonymous checkouts failed to render if reviews were disabled.

  • #1134 - Fixed a bug caused where Unicode characters in child products’ titles were incorrectly handled.

  • #1138 - Adjust the OrderAndItemCharges shipping method to not count lines that don’t require shipping.

  • #1146 - Various templates were adjusted to gracefully handle deleted products.