{
  "schema_version": 1,
  "api_line": "0.4",
  "entries": [
    {
      "version": "0.4.0",
      "date": "2026-10-01",
      "type": "breaking",
      "title": "0.4 path break: engine, catalog, and generation",
      "body": "Source modules now live under src/engine, src/catalog, and src/generation. morph_engine.js and morph_analyze.js are morph-engine.js and morph-analyze.js. Deep imports on the published archive follow that layout (/api/v0.4-latest/engine/morph-engine.js). v0.3-latest stays the frozen 0.3 line and is not rewritten. Package subpaths oq-api/engine, oq-api/catalog, and oq-api/generation export the direct modules; the package root still clones shared results. setActiveLocale and getActiveLocale are removed: pass options.locale or the third argument of t(), and an omitted locale is English. searchEntries no longer accepts positional match, rank, or regex arguments; pass an options object. A string options value throws.",
      "areas": [
        "distribution",
        "dictionary",
        "i18n"
      ]
    }
  ]
}
