Skip to content

Commit 070d8b8

Browse files
krisnyeclaude
andauthored
feat(ecs): merge imports plugins at runtime (types still exclude them) (#119)
Previously `imports` was type-only: the imported plugins' members were visible to local declarations but contributed nothing at runtime, so a consumer that forgot to re-list them in the top-level combine got `undefined` transactions/ resources at runtime despite a clean compile. Now `imports` merges into the assembled plugin at runtime exactly like `extends` (order: imports, then extends, then local — preserving service init order). This is a pure runtime change: the result TYPE is unchanged and still excludes the imported members, so the quadratic-killing property is preserved (imports do not propagate through downstream result types). No type-signature changes. Adds "imports runtime behavior" tests proving imported members exist on the assembled plugin and on a database built from it alone (no separate combine). Updates docs that incorrectly stated the consumer must re-list imports. Bump to 0.9.65. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 029a3b2 commit 070d8b8

17 files changed

Lines changed: 94 additions & 35 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-monorepo",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"private": true,
55
"scripts": {
66
"build": "pnpm -r run build",

packages/data-lit-tictactoe/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-lit-tictactoe",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Tic-Tac-Toe sample - Lit web components with @adobe/data-lit and AgenticService",
55
"type": "module",
66
"private": true,

packages/data-lit-todo/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-lit-todo",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Todo sample app demonstrating @adobe/data with Lit",
55
"type": "module",
66
"private": true,

packages/data-lit/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@adobe/data-lit",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Adobe data Lit bindings - hooks, elements, decorators",
55
"type": "module",
66
"private": false,

packages/data-p2p-tictactoe/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-p2p-tictactoe",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Serverless P2P tic-tac-toe — WebRTC DataChannel + @adobe/data-sync",
55
"type": "module",
66
"private": true,

packages/data-persistence/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@adobe/data-persistence",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Worker-based incremental persistence layer for @adobe/data ECS over OPFS (browser) and node:fs (server).",
55
"type": "module",
66
"sideEffects": false,

packages/data-react-hello/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-react-hello",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Hello World sample - click counter using @adobe/data-react",
55
"type": "module",
66
"private": true,

packages/data-react-pixie/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-react-pixie",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "PixiJS React sample - ECS sprites (bunny, fox) with @adobe/data-react",
55
"type": "module",
66
"private": true,

packages/data-react/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@adobe/data-react",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Adobe data React bindings — hooks and context for ECS database",
55
"type": "module",
66
"private": false,

packages/data-solid-dashboard/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-solid-dashboard",
3-
"version": "0.9.64",
3+
"version": "0.9.65",
44
"description": "Mini dashboard sample — multiple components sharing one @adobe/data ECS database with SolidJS",
55
"type": "module",
66
"private": true,

0 commit comments

Comments
 (0)