Medusa v1.17.4stable Released Nov 10, 2023
โš ๏ธ Breaking Change Impact Score: 7/10

Medusa v1.17.4 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: medusajs ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • Breaking changes https://github.com/medusajs/medusa/pull/5511 contains breaking changes in `@medusajs/cache-redis`.
  • https://github.com/medusajs/medusa/pull/5511 contains breaking changes in `@medusajs/cache-redis`.
Read the original context โ†—
Source flags breaking changes โ€” review applicability
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Medusa v1.17.4. Source highlight: Custom `promiseAll` util

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โš ๏ธ Breaking Changes & Deprecations (2)

  • Breaking changes https://github.com/medusajs/medusa/pull/5511 contains breaking changes in `@medusajs/cache-redis`.
  • https://github.com/medusajs/medusa/pull/5511 contains breaking changes in `@medusajs/cache-redis`.

โœจ New Features & Capabilities (6)

  • feat(medusa, modules-sdk, types, utils): Re work modules loading and remove legacy functions
  • feat(product, pricing, utils): Transaction issues and reference issues
  • feat(utils): Introduce promiseAll util
  • feat(create-medusa-app): print error message for failed db connection
  • feat(medusa): API routes body parser config by @kasperkristensen in #5537
  • feat(medusa): Include Product Collections in Seed command by @adamlamaa in #5510

๐Ÿ”ง Bug Fixes & Patches (6)

  • fix(integration): setup
  • fix(admin-ui): Make regions in tax setting scrollable
  • fix(admin-ui): Prevent oversized product request in Price List domain
  • fix(admin-ui): Prevent comma decimal separator from converting inputs to NaN
  • fix(admin-ui, ui): Align @types/react versions across UI packages by @kasperkristensen in #5596
  • fix(medusa): Load legacy modules entities by @adrien2p in #5594
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
<!-- ![image](https://github.com/medusajs/medusa/assets/59018053/0dd3596d-b26c-4567-b38c-6b9e12ba47ca) # Version 1.17.4 This version introduces a more robust transaction management and expands the configurability of API Routes. CMS_BREAK --> ## Highlights ### Custom `promiseAll` util Transactions in Typeorm do not play well with `Promise.all` when the operations contain nested promises. In case one of the operations fail i.e. reject the promise, all other operations are not guaranteed to be rolled back properly. See https://github.com/medusajs/medusa/issues/5529 for more context. To mitigate this issue, we've introduced the `promiseAll` util in `@medusajs/utils`. It uses `Promise.allSettled` under the hood, but has been wrapped to work like `Promise.all` with a transaction rollback guarantee. See [here](https://github.com/medusajs/medusa/blob/v1.17.4/packages/utils/src/common/promise-all.ts). You will use it like so: ```ts import { promiseAll } from "@medusajs/utils" import { TransactionBaseService } from "@medusajs/medusa" class MyService extends TransactionBaseService { async performTransactions() { return await promiseAll([ // your operations.... ]) } } ``` ### API Routes BodyParser configuration API Routes now support body-parser configuration. You can opt-out: ```ts export config = { routes: [ { matcher: "/webhooks/*", bodyParser: false, middlewares: [raw({ type: "application/json" })] } ] } ``` Or configure it with options: ```ts export config = { routes: [ { matcher: "/webhooks/*", bodyParser: { sizeLimit: 2000 } // in bytes middlewares: [raw({ type: "application/json" })] } ] } ``` ### Design packages moved to monorepo Our design packages, `@medusajs/ui`, `@medusajs/icons`, `@medusajs/ui-preset`, have been moved to our monorepo to centralize issues and PRs. ### Breaking changes https://github.com/medusajs/medusa/pull/5511 contains breaking changes in `@medusajs/cache-redis`. If option `ttl` is 0 when calling `.set` the attempt to add a cache entry is skipped. ## Features * feat(medusa, modules-sdk, types, utils): Re work modules loading and remove legacy functions by @adrien2p in https://github.com/medusajs/medusa/pull/5496 * feat(product, pricing, utils): Transaction issues and reference issues by @adrien2p in https://github.com/medusajs/medusa/pull/5533 * feat(utils): Introduce promiseAll util by @adrien2p in https://github.com/medusajs/medusa/pull/5543 * feat(create-medusa-app): print error message for failed db connection by @egormkn in https://github.com/medusajs/medusa/pull/5547 * feat(medusa): API routes body parser config by @kasperkristensen in #5537 * feat(medusa): Include Product Collections in Seed command by @adamlamaa in #5510 ## Bugs * fix(integration): setup by @adrien2p in https://github.com/medusajs/medusa/pull/5511 * fix(admin-ui): Make regions in tax setting scrollable by @kasperkristensen in https://github.com/medusajs/medusa/pull/5530 * fix(admin-ui): Prevent oversized product request in Price List domain by @kasperkristensen in https://github.com/medusajs/medusa/pull/5535 * fix(admin-ui): Prevent comma decimal separator from converting inputs to NaN by @kasperkristensen in https://github.com/medusajs/medusa/pull/5566 * fix(admin-ui, ui): Align @types/react versions across UI packages by @kasperkristensen in #5596 * fix(medusa): Load legacy modules entities by @adrien2p in #5594 * fix(admin-ui): Admin UI: Invalid Request Header by @rick-lam in #5548 ## Chores * chore(docs-util): fix freshness check script by @shahednasser in https://github.com/medusajs/medusa/pull/5518 * chore: Update README.md by @srindom in https://github.com/medusajs/medusa/pull/5517 * chore(docs): Removed Docs Announcement Bar (automated) by @github-actions in https://github.com/medusajs/medusa/pull/5574 * chore(ui,icons,ui-preset,toolbox): Move design system packages to monorepo by @kasperkristensen in https://github.com/medusajs/medusa/pull/5470 ## Documentation * docs(create-scheduled-job): rewrote sentence by @stefanoschalkidis in https://github.com/medusajs/medusa/pull/5525 * docs(create-events-module): fixed typos by @stefanoschalkidis in https://github.com/medusajs/medusa/pull/5524 * docs(create tax provider): tax line code required by @nickmonad in https://github.com/medusajs/medusa/pull/5540 * docs(api-reference): added local server to list of servers by @shahednasser in https://github.com/medusajs/medusa/pull/5572 * docs: add missing mime_type in digital products recipe by @shahednasser in https://github.com/medusajs/medusa/pull/5569 ## New Contributors * @stefanoschalkidis made their first contribution in https://github.com/medusajs/medusa/pull/5525 * @egormkn made their first contribution in https://github.com/medusajs/medusa/pull/5547 * @nickmonad made their first contribution in https://github.com/medusajs/medusa/pull/5540 * @rick-lam made their first contribution in https://github.com/medusajs/medusa/pull/5548 * @adamlamaa made their first contribution in https://github.com/medusajs/medusa/pull/5510 **Full Changelog**: https://github.com/medusajs/medusa/compare/v1.17.3...v1.17.4