You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

v1.6.rst 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. =======================
  2. Oscar 1.6 release notes
  3. =======================
  4. :release: tbd
  5. Welcome to Oscar 1.6
  6. Table of contents:
  7. .. contents::
  8. :local:
  9. :depth: 1
  10. .. _compatibility_of_1.6:
  11. Compatibility
  12. -------------
  13. Oscar 1.6 is compatible with Django 1.8, 1.10 and 1.11 as well as Python 2.7,
  14. 3.3, 3.4, 3.5 and 3.6. Support for Django 1.9 is no longer officialy supported
  15. since it is longer supported by Django (end of life).
  16. .. _new_in_1.6:
  17. What's new in Oscar 1.6?
  18. ------------------------
  19. Removal of deprecated features
  20. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  21. - Removed ``OSCAR_PROMOTION_MERCHANDISING_BLOCK_TYPES`` setting since
  22. merchandising block promotions, which used it, already removed for a while.
  23. Minor changes
  24. ~~~~~~~~~~~~~
  25. - Majority of the Oscar imports now using dynamic loading, instead of
  26. direct importing for better extensibility and customizability, except
  27. signals.
  28. - Customer transaction emails reworked on top of mailgun layout and has
  29. better look.
  30. - ``SearchHandler.get_search_form`` method now accepts additional
  31. keyword arguments, which will be passed on search form class instance
  32. initiation.
  33. - Added ``get_stock_info`` hook to ``oscar.apps.basket.models.Basket`` for
  34. implementing strategies that depend on product options.
  35. - Fixed the page create/update views in the dashboard to correctly validate
  36. URLs. Invalid characters in URLs will raise a validation error, as will
  37. URLs longer than 100 characters.
  38. - Default shipping method on basket summary page uses default user shipping
  39. address in order to calculate indicative shipping cost. Default shipping
  40. address definition can be overridden in
  41. ``oscar.apps.basket.views.BasketView.get_default_shipping_address`` method.
  42. - Fixed `ExtendedURLValidator` for locale-prefixed URLs for locales, different
  43. from current (see :issue:`1481`). Previously, validation did not pass when
  44. current locale is "en-gb" and URL is "/de/catalogue/" and visa versa due to
  45. default Django URL resolvers behaviour - they do not take into account all
  46. locales, only current.
  47. - Product attribute value save now handled by separate methods, similar to
  48. validation which allows to override save logic for file, multi-option or
  49. generic attribute values.
  50. - Address hash generation is now separated from the summary in order to
  51. preserve same behavior when summary property customized (see :issue:`1537`).
  52. They can use different field names, listed out in `base_fields` and
  53. `hash_fields` respectively. Also hash generation now became
  54. platform-independent and generates the same for Python 2 and 3.
  55. Corresponding data migration will update hashes automatically. Take it into
  56. account that it will take time to run if you have large user base.
  57. .. _incompatible_in_1.6:
  58. Backwards incompatible changes in Oscar 1.6
  59. -------------------------------------------
  60. - ``oscar.apps.customer.auth_backends.EmailBackend`` now rejects inactive users
  61. (where ``User.is_active`` is ``False``).
  62. - ``oscar.apps.offer.models.ConditionalOffer`` now has a new flag
  63. ``exclusive`` to denote that the offer involved can not be combined on the
  64. same item on the same basket line with another offer.
  65. This flag is used by ``oscar.apps.basket.utils.LineOfferConsumer``, a facade
  66. that supercedes the old ``oscar.apps.basket.models.Line._affected_items`` counter,
  67. and replaces it with a more finegrained approach. This makes it possible to apply
  68. two distinct non-exclusive offers on the same basketline items, for example
  69. multiple distinct vouchers.
  70. A couple of methods on the basketline model have been extended with an
  71. optional ``offer`` argument, i.e. ``discount`` and ``consume``, so if you
  72. are using a customized basketline model, you have to update your methods'
  73. signatures.
  74. - Invalid URL names supplied to the ``OSCAR_DASHBOARD_NAVIGATION`` setting
  75. are now logged as an exception (previously they were silently ignored).
  76. The offending menu item will be skipped during menu rendering.
  77. In Oscar 1.8 the exception will be raised without being intercepted.
  78. - All signals are now loaded directly.
  79. Dependency changes
  80. ------------------
  81. .. _deprecated_features_in_1.6:
  82. Deprecated features
  83. ~~~~~~~~~~~~~~~~~~~
  84. The following features have been deprecated in this release:
  85. * ``StockRecord.price_excl_tax`` will be renamed into ``StockRecord.price`` in
  86. Oscar 2.0. Please see :issue:`1962` for more details.
  87. * The ``StockRecord.price_retail`` and ``StockRecord.cost_price`` fields are
  88. deprecated and will be removed in Oscar 2.0.
  89. * The ``order.Line.est_dispatch_date``, ``order.Line.line_price_incl_tax``,
  90. ``order.Line.unit_retail_price``, ``order.Line.unit_cost_price`` and
  91. ``order.Line.line_price_excl_tax`` fields are deprecated and will be removed
  92. in Oscar 2.0.