Saleor v3.4.0 Release Notes

  • ๐Ÿ’ฅ Breaking changes

    • ๐Ÿ“‡ Hide private metadata in notification payloads - #9849 by @maarcingebala
      • From now on, the private_metadata field in NOTIFY_USER webhook payload is deprecated and it will return an empty dictionary. This change also affects AdminEmailPlugin, UserEmailPlugin, and SendgridEmailPlugin.

    Other changes

    GraphQL API

    • โž• Add new fields to Order type to show authorize/charge status #9795
      • Add new fields to Order type:
      • totalAuthorized
      • totalCharged
      • authorizeStatus
      • chargeStatus
      • Add filters to Order:
      • authorizeStatus
      • chargeStatus
    • โž• Add mutations for managing a payment transaction attached to order/checkout. - #9564 by @korycins
      • add fields:
      • order.transactions
      • checkout.transactions
      • add mutations:
      • transactionCreate
      • transactionUpdate
      • transactionRequestAction
      • add new webhook event:
      • TRANSACTION_ACTION_REQUEST
    • Unify checkout's ID fields. - #9862 by @korycins
      • Deprecate checkoutID and token in all Checkout's mutations. Use id instead.
      • Deprecate token in checkout query. Use id instead.
    • โž• Add unitPrice, undiscountedUnitPrice, undiscountedTotalPrice fields to CheckoutLine type - #9821 by @fowczarek
    • ๐Ÿ›  Fix invalid ADDED_PRODUCTS event parameter for OrderLinesCreate mutation - #9653 by @IKarbowiak
    • โšก๏ธ Update sorting field descriptions - add info where channel slug is required (#9695) (391743098)
    • ๐Ÿ›  Fix using enum values in permission descriptions (#9697) (dbb783e1f)
    • ๐Ÿ”„ Change gateway validation in checkoutPaymentCreate mutation (#9530) (cf1d49bdc)
    • ๐Ÿ›  Fix invalid ADDED_PRODUCTS event parameter for OrderLinesCreate mutation (#9653) (a0d8aa8f1)
    • ๐Ÿ›  Fix resolver for Product.created field (#9737) (0af00cb70)
    • ๐Ÿ‘ Allow fetching by id all order data for new orders (#9728) (71c19c951)
    • Provide a reference for the rich text format (#9744) (f2207c408)
    • ๐Ÿ‘Œ Improve event schema field descriptions - #9880 by @patrys

    Saleor Apps

    • Add menu webhooks: MENU_CREATED, MENU_UPDATED, MENU_DELETED, MENU_ITEM_CREATED, MENU_ITEM_UPDATED, MENU_ITEM_DELETED - #9651 by @SzymJ
    • Add voucher webhooks: VOUCHER_CREATED, VOUCHER_UPDATED, VOUCHER_DELETED - #9657 by @SzymJ
    • Add app webhooks: APP_INSTALLED, APP_UPDATED, APP_DELETED, APP_STATUS_CHANGED - #9698 by @SzymJ
    • Add warehouse webhoks: WAREHOUSE_CREATED, WAREHOUSE_UPDATED, WAREHOUSE_DELETED - #9746 by @SzymJ
    • ๐Ÿ”ฆ Expose order alongside fulfillment in fulfillment-based subscriptions used by webhooks (#9847)
    • ๐Ÿ›  Fix webhooks payload not having field for is_published (#9800) (723f93c50)
    • โž• Add support for ORDER_* mounting points for Apps (#9694) (cc728ef7e)
    • โž• Add missing shipping method data in order and checkout events payloads. (#9692) (dabd1a221)
    • ๐Ÿ›ฐ Use the human-readable order number in notification payloads (#9863) (f10c5fd5f)

    Models

    • Migrate order discount id from int to UUID - #9729 by @IKarbowiak
      • Changed the order discount id from int to UUID, the old ids still can be used for old order discounts.
    • Migrate order line id from int to UUID - #9637 by @IKarbowiak
      • Changed the order line id from int to UUID, the old ids still can be used for old order lines.
    • Migrate checkout line id from int to UUID - #9675 by @IKarbowiak
      • Changed the checkout line id from int to UUID, the old ids still can be used for old checkout lines.

    ๐ŸŽ Performance

    • Fix memory consumption of delete_event_payloads_task (#9806) (2823edc68)
    • โž• Add webhook events dataloader (#9790) (e88eef35e)
    • โž• Add dataloader for fulfillment warehouse resolver (#9740) (9d14fadb2)
    • ๐Ÿ›  Fix order type resolvers performance (#9723) (13b5a95e7)
    • ๐Ÿ‘Œ Improve warehouse filtering performance (#9622) (a1a7a223b)
    • โž• Add dataloader for fulfillment lines (#9707) (68fb4bf4a)

    Other

    • Observability reporter - #9803 by @przlada
    • โšก๏ธ Update sample products set - #9796 by @mirekm
    • ๐Ÿ›  Fix for sending incorrect prices to Avatax - #9633 by @korycins
    • ๐Ÿ›  Fix tax-included flag sending to Avatax - #9820
    • ๐Ÿ›  Fix AttributeError: 'Options' object has no attribute 'Model' in search_tasks.py - #9824
    • ๐Ÿ›  Fix Braintree merchant accounts mismatch error - #9778
    • Stricter signatures for resolvers and mutations - #9649