Saleor v3.2.0 Release Notes

  • ๐Ÿ’ฅ Breaking changes

    • ๐Ÿ›ฐ Convert IDs from DB to GraphQL format in all notification payloads (email plugins and the NOTIFY webhook)- #9388 by @L3str4nge
    • Migrate order id from int to UUID - #9324 by @IKarbowiak
      • Changed the order id changed from int to UUID, the old ids still can be used for old orders.
      • Deprecated the order.token field, the order.id should be used instead.
      • Deprecated the token field in order payload, the id field should be used instead.
    • 0๏ธโƒฃ Enable JWT expiration by default - #9483 by @maarcingebala

    Other changes

    Saleor Apps

    • Introduce custom prices - #9393 by @IKarbowiak
      • Add HANDLE_CHECKOUTS permission (only for apps)
    • โž• Add subscription webhooks (#9394) @jakubkuc
    • โž• Add language_code field to webhook payload for Order, Checkout and Customer - #9433 by @rafalp
    • ๐Ÿ”จ Refactor app tokens - #9438 by @IKarbowiak
      • Store app tokens hashes instead of plain text.
    • โž• Add category webhook events - #9490 by @SzymJ
    • ๐Ÿ›  Fix access to own resources by App - #9425 by @korycins
    • โž• Add handle_checkouts permission - #9402 by @korycins
    • ๐Ÿ›ฐ Return user_email or order user's email in order payload user_email field (#9419) (c2d248655)
    • Mutation CategoryBulkDelete now trigger category_delete event - #9533 by @SzymJ
    • Add webhooks SHIPPING_PRICE_CREATED, SHIPPING_PRICE_UPDATED, SHIPPING_PRICE_DELETED, SHIPPING_ZONE_CREATED, SHIPPING_ZONE_UPDATED, SHIPPING_ZONE_DELETED - #9522 by @SzymJ

    ๐Ÿ”Œ Plugins

    • โž• Add OpenID Connect Plugin - #9406 by @korycins
    • ๐Ÿ‘ Allow plugins to create their custom error code - #9300 by @LeOndaz

    Other

    • ๐Ÿ‘‰ Use full-text search for products search API - #9344 by @patrys

    • Include required permission in mutations' descriptions - #9363 by @maarcingebala

    • ๐Ÿ‘‰ Make GraphQL list items non-nullable - #9391 by @maarcingebala

    • ๐Ÿ–จ Port a better schema printer from GraphQL Core 3.x - #9389 by @patrys

    • ๐Ÿ›  Fix failing checkoutCustomerAttach mutation - #9401 by @IKarbowiak

    • โž• Add new mutation orderCreateFromCheckout - #9343 by @korycins

    • Assign missing user to context - #9520 by @korycins

    • โž• Add default ordering to order discounts - #9517 by @fowczarek

    • Raise formatted error when trying to assign assigned media to variant - #9496 by @L3str4nge

    • โšก๏ธ Update orderNumber field in OrderEvent type - #9447 by @IKarbowiak

    • Do not create AttributeValues when values are not provided - #9446 @IKarbowiak

    • โž• Add response status code to event delivery attempt - #9456 by @przlada

    • Don't rely on counting objects when reindexing - #9442 by @patrys

    • ๐Ÿ‘ Allow filtering attribute values by ids - #9399 by @IKarbowiak

    • ๐Ÿ›  Fix errors handling for orderFulfillApprove mutation - #9491 by @SzymJ

    • ๐Ÿ›  Fix shipping methods caching - #9472 by @tomaszszymanski129

    • ๐Ÿ›  Fix payment flow - #9504 by @IKarbowiak

    • ๐Ÿ›  Fix etting external methods did not throw an error when that method didn't exist - #9498 by @SethThoburn

    • โฌ‡๏ธ Reduce placeholder image size - #9484 by @jbergstroem

    • ๐Ÿ‘Œ Improve menus filtering performance - #9539 by @tomaszszymanski129

    • โœ‚ Remove EventDeliveries without webhooks and make webhook field non-nullable - #9507 by @jakubkuc

    • ๐Ÿ‘Œ Improve discount filters performance - #9541 by @tomaszszymanski129

    • ๐Ÿ”„ Change webhooks to be called on commit in atomic transactions - #9532 by @jakubkuc

    • โฌ‡๏ธ Drop distinct and icontains in favor of ilike in apps filtering - #9534 by @tomaszszymanski129

    • ๐ŸŽ Refactor csv filters to improve performance - #9535 by @tomaszszymanski129

    • ๐Ÿ‘Œ Improve attributes filters performance - #9542 by @tomaszszymanski129

    • ๐Ÿ“‡ Rename models fields from created to created_at - #9537 by @IKarbowiak