sdx 1.0.0-alpha18

Bug fixes

- Security: preflight validation requires create access; SafeHtml is a real sanitizer; dev-server PID/log files moved to private://; sdx:exec cannot leave node_modules/.bin
- Structured dialog and AJAX payloads render on Vue and Svelte sites; the Svelte app boots from the generated entry again
- sdx_svelte hooks are thin adapters over the shared core stores, matching Vue

sdx 1.0.0-alpha16

Bug fixes

- Builds are atomic: each framework builds into a staging dist swapped in only on success, under a per-framework lock; a failed build leaves the live dist untouched
- Svelte components mount with their props again (Svelte 5 compat API, hydration, svelte/server rendering); Vue hydrates SSR markup with createSSRApp
- sdx:resolve reports peer-dependency mismatches before any install
- Security: content-scope response cache keyed on path + user; SPA fast path carries page cacheability

sdx 1.0.0-alpha15

Bug fixes

- sdx_router: components arriving via soft navigation hydrate again - script tags are injected with their type, so ES-module chunks no longer crash ("Cannot use import statement outside a module") or get silently skipped
- sdx:build refuses to run against a stale sdx.lock with an actionable message, before any npm process runs
- The generated build package.json can no longer contain unpinned ("*") dependencies (fixes the ERESOLVE against @vitejs/plugin-react 6 on fresh installs)

sdx 1.0.0-alpha14

Bug fixes

- Registry documents are fetched in npm's abbreviated format and cached slim - fixes "MySQL server has gone away" during sdx:resolve on hosts with a conservative max_allowed_packet (version-heavy packages like @types/node cached >15 MB rows)
- Cold resolves are much faster (multi-MB downloads gone) and no longer need a raised PHP memory_limit

sdx 1.0.0-alpha13

Bug fixes

- Installing/uninstalling SDX modules no longer touches the npm registry - resolution
moved entirely to drush sdx:resolve; module installs work fully offline
- New status report row warns while sdx.lock is out of date
- Cold dependency resolves fetch registry documents concurrently: seconds instead of
minutes, and the DB connection stays active throughout (closes the remaining
"MySQL server has gone away" window)

sdx 1.0.0-alpha12

Bug fixes
New features

- Fixed: long child processes (npm installs, Vite/tsc/SSR builds) no longer drop the
MySQL connection on hosts with a lowered wait_timeout - no more "MySQL server has
gone away" mid-build with half-written caches
- sdx:build prints phase timings (total, JS, CSS, per-framework) for profiling
- The Vite bundler skips the per-build npm install when dependencies are unchanged
- Per-extension CSS builds run concurrently (--concurrency, default 4)

sdx 1.0.0-alpha11

Bug fixes
New features

- Opt-in per-page asset scoping: owner-scoped CSS, conditional mount runtime, adaptive chunking
- SSR watch mode (incremental rebuilds + hot module reload) and renderer emit for out-of-process sidecars
- DRAST page payloads are now cacheable; per-session data moved to a placeholdered session envelope
- Component browser-URL map is per-mount instead of a full table (new sdx.expose_url opt-in)
- Build-artifact URLs are fingerprinted, ending stale-runtime hydration failures (React #418)
- Multi-framework fixes: Vue/Svelte builds work, SSR build no longer crashes, mounts no longer cross frameworks
- Drush cleanup: dependency commands renamed to sdx:deps:*, duplicate sdx:doctor/sdx:list resolved
- React CDN fallback is now opt-in, logged, and version-safe; vendor build failures fail loud
- pnpm 11 compatibility; sdx:resolve is lockfile-aware and heals broken workspaces
- sdx:test collects colocated specs, scoped to SDX providers, and exits non-zero on failures

sdx 1.0.0-alpha10

Bug fixes

Changed

  • Core docblocks and type definitions now describe collaborators by their contract role rather than naming specific downstream themes, modules, or sites. Pure documentation change; no runtime behaviour is affected.

Fixed

    sdx 1.0.0-alpha9

    Bug fixes

    Changed

    • Dropped the treeshake: false Rollup override in the centralized Vite config. preserveEntrySignatures: 'strict' (the line right below) already protects entry exports, so tree-shaking is now on.

    Fixed

      sdx 1.0.0-alpha8

      Bug fixes

      sdx 1.0.0-alpha8 is a focused bug fix for
      AutoLibraryGenerator's CSS discovery. Symptom on affected sites: missing component styles after
      drush sdx:build on any component whose primitives ended up in a shared chunk, especially when Vite's content hash happened to contain a hyphen.

      sdx 1.0.0-alpha7

      New features

      SDX 1.0.0-alpha7 ships three runtime composition primitives for sites composing multiple SDX bundles into one page.

      Cross-bundle state: sharedSingleton(key, factory) in @sdx/runtime collapses per-bundle module-level constants to a single document-scoped instance. Use it when bundles need referential identity for a shared registry, queue, or controller.

      sdx 1.0.0-alpha4

      Bug fixes
      New features

      Added

      • ComponentDataProvider plugins. Drop a {Camel}.php next to a component's .component.yml and DrupalComponentBase resolves props server-side; invalidation metadata bubbles onto #cache automatically. A new hook_sdx_component_data_alter fires for every SDX component render regardless of where it lives in the render pipeline.

      sdx 1.0.0-alpha3

      Bug fixes
      New features

      SDX 1.0.0-alpha3 introduces framework-agnostic hook cores under @sdx/core/*, a native dialog system replacing jQuery UI, preprocessor-agnostic SSR builds, and shared-chunk CSS auto-attachment. One breaking change: HtmlFragment now emits the marker class flatten instead of sdx-flatten.

      sdx 1.0.0-alpha2

      Bug fixes
      New features

      Highlights

      • Twig integration: new {{ sdx('my_theme:hero', {title: 'Hello'}) }} Twig function for embedding SDX components in any Twig-based Drupal theme. No additional modules required.
      • Framework-agnostic SSR: sdx_ssr no longer depends on sdx_react. Works with React, Vue, or Svelte, whichever framework plugin is active.

      sdx 1.0.0-alpha1

      New features

      Initial alpha release of SDX - Single Directory Components Extended.

      SDX extends Drupal's Single Directory Components (SDC) to support modern JavaScript frameworks via a centralized Vite build pipeline.

      Highlights:

      Subscribe with RSS Subscribe to Releases for SDX