megachangelog
Fix2.17.1

Fix worker hang in Redis Event Bus

Fixed a critical regression in v2.17.0 where the Redis Event Bus worker would hang indefinitely on startup due to improper awaiting of bullWorker_.run(). This issue only affected worker mode, not server mode.

Highlights

Regression with workers in Redis Event Bus

This release fixes a critical bug introduced in 2.17.0.

What

Not await bullWorker_.run() in event-bus-redis onApplicationStart

Why

bullWorker_.run() is designed to return only when the worker is closed (taskforcesh/bullmq#2128). This bug had flown under the radar until we started awaiting all modules onApplicationStart here. The effect is that when running in worker mode, application startup hangs indefinitely. It does not happen in server mode because bullWorker_ only exists in worker mode.

Bugs

Other Changes

  • i18n(ja): complete dashboard translations — fill 511 missing keys by @greymoth-jp in #15839

New Contributors

Full Changelog: v2.17.0...v2.17.1

fixworkersredisevent-busstartup

Source: original entry ↗

More from Medusa

Follow Medusa to get its new changes in your feed and email digest.

Improvement2.21.2

Performance Improvement for Search Route

The /store/search route now restricts field retrieval to only those defined on the index being searched, preventing data hydration outside the index for better performance. This release includes multiple bug fixes for search indexing, caching, promotions, payments, and dashboard internationalization.

searchperformanceapisearch-indexbug-fixes
Feature2.21.1

v2.21.1: Search Module

Introduces a new Search Module that lets you manage and search through indexes for any data model, with built-in PostgreSQL and Medusa Cloud providers. Also includes improvements to the loyalty plugin's store credit features, new admin translations for Finnish and Swedish, and numerous bug fixes across authentication, payments, inventory, and shipping.

searchmoduleapiloyaltytranslation
Breaking2.21.0

Strict allowed fields in Store API and Exported Admin Components

Store API routes now enforce a strict allowed-fields list, returning only explicitly declared fields and relations to prevent unintended data exposure. Disallowed fields are silently stripped; use the allowFields middleware to re-expose specific fields if needed.

store-apisecuritybreaking-changefieldsrelations
See all Medusa changes →