gems spree 6.0.4
v6.0.4

33 minutes ago

Spree 6.0.4

Spree 6.0.4 is a patch release with a refreshed admin dashboard and seller panel, a richer seller page for marketplace operators, and built-in diagnostics for bug reports. It also fixes a set of checkout completion races, draft order totals, and email lookups in apps that encrypt emails.

npx spree upgrade

✨ New features

  • Diagnostics and Send feedback. Settings → System info shows an anonymised report of versions, runtime, infrastructure, changed settings and recent errors, and Send feedback in the account menu opens a bug report with it attached. Developers get View as JSON with Copy as curl on detail pages and a request inspector (Ctrl/Cmd+Shift+D). #15176
  • Seller page for operators. The admin seller page shows the last 30 days of sales and commission, orders still to fulfill and products in review, with the seller's products and orders as full lists. Every section edits in place, including the returns address and holiday mode. #15177
  • Approve sellers without onboarding. Operators can approve a pending or invited seller directly, for example a seller they set up on a vendor's behalf, by overriding the requirements. #15187
  • Team invitations for active sellers. Operators can add people to the team of a seller that is already approved. #15170
  • Seller panel settings. Sellers get Settings → General (contact details, addresses, holiday mode), Profile (what shoppers see) and Taxes, each as one simple form page. The Complete profile step no longer requires a contact email unless the operator turns that on. #15190 #15191
  • Stock adjustment reasons. Bulk stock updates can carry a reason such as received, damaged or count, shown in the stock history. #15138
  • Category and collection events. Adding a product to, or removing it from, a category or collection publishes an event that webhooks can subscribe to. #15104 by @KacperMekarski

🧭 Admin dashboard improvements

  • A refreshed look. The admin dashboard and seller panel use the Inter font, a neutral palette with a near-black dark theme, lighter list tables with a compact density option, and order pages organised into sections. #15136
  • Media library. A large media dialog with search, filters, upload, grid or list view and sorting, a full-screen media editor, and images picked per variant. Sellers can remove images from their products. #15136
  • New pages and pickers. Supplier and customer group pages, one customer picker with Add new customer everywhere, adding company members from existing customers, own and seller tabs on stock locations, and out of stock and low stock filters across all locations. #15136
  • Settings pages. Payments, storefront and store settings have their own pages, and the settings menu sits beside the main navigation. #15136
  • Missing price warning. An active product warns when shoppers paying in a currency cannot see it because it has no price there. #15165
  • Table search option. Lists that cannot search by free text no longer show a search box. #15164 by @KacperMekarski

🐛 Bug fixes

  • Removing a line from a draft order updates its totals and quantity. #15179
  • Sign-in, staff invitations, order search and personal data export work in apps that encrypt customer emails. #15123
  • A cart holding the last units in stock completes checkout instead of failing on its own reservation. #15157 by @beobungbu
  • A cart cannot be deleted or have items added while its checkout is completing. #15147 by @beobungbu #15169
  • A payment webhook that fails to settle an order retries instead of leaving a charged buyer without an order. #15133
  • Store credit uses the order's own store payment method. #15151 by @beobungbu
  • Repeating a request with the same idempotency key but a different query is treated as a different request. #15149 by @beobungbu
  • The Store SDK works in native apps that have a window but no location. #15145 by @beobungbu
  • Newsletter sign-up matches a signed-in customer whatever the case or spacing of the email. #15158
  • Product image imports from a URL save again. #15162
  • A stock change with a reason longer than 255 characters is refused with a clear error instead of failing. #15139
  • The product filters endpoint works again with Meilisearch search. #15173 #15175
  • AI agents can list every record instead of the first 25, sort newest first, search records under a parent such as an order's claims, and use exports, imports and price column mapping with the right permissions. #15135 #15184 #15137 #15134

⬆️ Upgrading from 5.6

  • The stock level unique index migrations run on MariaDB. MySQL 8 databases that already ran them are unaffected. #15141

🛠 Developer experience

  • spree upgrade updates agent skills. When a project uses the Spree agent skills, spree upgrade offers to update them to the newest versions. #15171
  • spree info. Prints the diagnostics report for a bug report; --issue opens a GitHub issue with it filled in. #15176
  • spree sdk generate. Handles endpoints nested under SDK resources, inline response schemas and renamed methods. #15127
  • Peer dependencies. The dashboard packages accept i18next 27 and react-i18next 18, and require @tanstack/react-router 1.170.46 or later. #15181 #15183
  • API additions. Order line items carry product_id; Admin media can be filtered and sorted by file name and size; company members can be added by customer_id; the Seller API can delete product media and set holiday_mode_until. #15136 #15190
  • Dashboard plugin components. @spree/dashboard-ui adds Section, StatItem, ProductIdentity, CurrencyLabel and DateRangePanel; @spree/dashboard-core adds useTableDensity, embeddable ResourceTable lists, ReadRow and ResourceImageField. The container card variant is deprecated. #15136 #15177 #15190

📚 Documentation

  • The MCP server README describes OAuth sign-in, and the SDK filter examples send working Ransack parameters. #15126
  • The Shopify integration guide lists the access scopes and API version it needs. #15182 by @KacperMekarski

📦 Package versions

Package Version
Spree gems 6.0.4
@spree/sdk, @spree/admin-sdk, @spree/seller-sdk, @spree/core 6.0.4
@spree/dashboard, @spree/dashboard-core, @spree/dashboard-ui, @spree/seller-dashboard 6.0.4
@spree/cli 3.7.0
create-spree-app 2.4.2 (unchanged)

Full Changelog: v6.0.3...v6.0.4

Don't miss a new spree release

NewReleases is sending notifications on new releases.