Skip to content

3.23.31

Choose a tag to compare

@github-actions github-actions released this 31 Aug 13:43
· 32 commits to main since this release
893315c

Patch Changes

  • #6888 ae4e4d2 Thanks @lkostrowski! - Extension URLs now accept an app's manifest identifier in place of its ID, so links can be shared between environments. /extensions/app/saleor.app.adyen resolves to the installed app and swaps itself for the ID form (/extensions/app/QXBwOjE=), keeping any deep path, query string and hash. Existing ID-based URLs are unchanged. If no installed app matches the identifier, the user lands on Explore Extensions.

  • #6868 a7e18d5 Thanks @ebrahim2355! - Rows in list views behave like real links again — middle click and right-click "Open link in new tab" work on product, order, and other datagrid rows.

  • #6883 b6662d2 Thanks @mirekm! - Clarify list filters and search.

    Auto-added Channel and Currency rows now show why they are required. Empty filter panels say “No filters”. List pages put docs behind a help icon instead of a subtitle.

  • #6884 008207d Thanks @mirekm! - Product pickers in list filters show thumbnails.

    Gift card Products, and any other product filter, use the same thumbnail list as product reference attributes.

  • #6889 b1206c4 Thanks @lkostrowski! - The vendored @saleor/sdk copy that lived in src/legacy-sdk has been merged into the Dashboard
    itself. Authentication now runs on the Dashboard's own Apollo client, GraphQL documents and
    generated types instead of a second, separately generated copy of the schema.

    This is an internal refactor with no change to how you log in, but two bugs went away with it:
    a token refresh triggered while another refresh was already in flight could refresh itself in a
    loop, and logging out refetched every open query against the token that had just been cleared,
    producing a burst of authorization errors on the way to the login screen.

  • #6889 b1206c4 Thanks @lkostrowski! - Fixed SSO login hanging on a loading screen when running the Dashboard from a local development
    build. The OAuth callback was exchanging its single-use authorization code twice, and the losing
    request came back without a user — which reported "no permissions", logged the session out, and
    then blocked the successful login that arrived moments later.

    The code is now exchanged once per callback. Deployed builds were never affected.

  • #6893 f301871 Thanks @lkostrowski! - Vouchers no longer demand the MANAGE_PRODUCTS permission. Staff who could only manage discounts were met with a stack of "you need one of the following permissions: MANAGE_PRODUCTS" errors as soon as a voucher opened.

    Two things caused it. The voucher page ran the assign-product and assign-variant picker searches on page load, with every picker closed — those searches now wait until their dialog is opened. And product channel availability, which does require MANAGE_PRODUCTS, was requested unconditionally — it is now requested only when the signed-in user can actually read it.

    Staff without MANAGE_PRODUCTS see the Eligible products list without its Availability column, and the assign-product picker no longer filters by voucher channels, since it cannot know which channels a product is in. Nothing changes for staff who do have the permission.

    Opening a voucher is also lighter: four catalog searches no longer fire on every page load.

Full Changelog: 3.23.30...3.23.31