...
- [B3-2401] - CSRF errors are improved, logging in on multiple tabs does not cause a problem anymore.
- [B3-2709] - "Clone 3D Project" button is added to the ordered project page.
- [B3-2157] - The way emails are sent is unified.
- [B3-2463] - Better shipping methods are shown in project.
- [B3-2472] - Materials (Products) cannot be deleted.
- [B3-2590] - Upload flow simplified.
- [B3-2686] - Help text that is shown when part is too big is improved.
- [B3-2700] - POST not sent on project detail when project is ordered.
- [B3-2740] - Inches can now be set more accurately with two digits behind the decimal point.
- [B3-2780] - The new field "Tradename (DE)" was added to the editable product page.
- [B3-2778] - Our code has been refactored to comply to PEP8 Coding Standart.
- [B3-2801] - Now it is impossible to delete a StockRecord.
- [B3-2819] - Baskets are now stable after redesigning the deletion of files and the mapping to UUIDs.
- [B3-2747] - Manual Pricing User is deprecated to ensure backwards compatibility.
- [B3-2886] - Pipelines Caching is added to our Bitbucket repository.
Bugfixes
- [B3-2701] - The print-ability filter doesn't work as expected.
- [B3-2723] - Sentry: AttributeError: 'NoneType' object has no attribute 'full_product_title'.
- [B3-2724] - Sentry: DoesNotExist: Order matching query does not exist.
- [B3-2730] - Sentry: materialise API - TypeError: string indices must be integers.
- [B3-2738] - Tax is calculated wrong.
- [B3-2741] - Should not be able to request manual price unless all lines completed.
- [B3-2744] - After manual pricing printing service marked as 'no access' but it does.
- [B3-2749] - Sentry: AttributeError: 'NoneType' object has no attribute 'all_public_partners_enabled'.
- [B3-2753] - Sentry: AttributeError: 'NoneType' object has no attribute 'lower'.
- [B3-2760] - Remove SESSION_COOKIE DOMAIN.
- [B3-2779] - Sentry: error when onboarding user.
- [B3-2757] - Styling issue.
- [B3-2800] - Sentry: ShippingMethod does not exist psconfig.
- [B3-2811] - Basket API calls make wrong price displayed.
- [B3-2820] - Sentry: AttributeError: 'NoneType' object has no attribute 'currency'.
- [B3-2826] - Sentry: NoReverseMatch: u'promotions' is not a registered namespace.
- [B3-2833] - Strange text appears when the order has a status "In Production" or "Shipped".
- [B3-2793] - Sentry dev: NoneType object has no attribute stockrecords.
- [B3-2810] - is_opened is NULL and the owner is not set.
- [B3-2831] - Sentry: ValueError: Expecting property name: line 1 column 13 (char 12).
- [B3-2834] - Wrong filextension detection in JavaScript.
- [B3-2836] - Currency on Dashboard is wrong.
- [B3-2869] - Sentry: Exception while updating basket line.
- [B3-2872] - Sentry: AttributeError: 'NoneType' object has no attribute 'users'.
- [B3-2876] - Sentry: RelatedObjectDoesNotExist: Organization has no site.
- [B3-2877] - Sentry: update basket: get() returned more than one StockRecord -- it returned 2!
- [B3-2879] - Sentry: RelatedObjectDoesNotExist: Site has no organization.
- [B3-2888] - Sentry: payment methods IndexError: list index out of range.
- [B3-2889] - Sentry: KeyManager UnicodeEncodeError.
- [B3-2890] - Verification email message empty.
- [B3-2893] - Sentry: 'NoneType' object has no attribute 'get_bounds'.
- [B3-2906] - Sentry: AttributeError: 'NoneType' object has no attribute 'partner'.
- [B3-2722] - Sentry: AttributeError: 'NoneType' object has no attribute 'strategy'.
- [B3-2752] - Negative Prices shown for some eCommerce platforms.
- [B3-2831] - Sentry: ValueError: Expecting property name: line 1 column 13 (char 12).
- [B3-2836] - Currency on Dashboard is wrong.
- [B3-2841] - Sentry: AttributeError: 'module' object has no attribute 'InvalidOrderStatus'.
- [B3-2850] - Sentry: ipinfo.io has returned bogus stuff.
- [B3-2853] - Sentry: HTTPError: HTTP Error 403: Forbidden.
- [B3-2857] - The iframe doesn't show materials.
- [B3-2858] - Product title not translated when overridden.
- [B3-2862] - The button "download" in the order confirmation e-mail directs to wrong URL.