diff --git a/packages/diagnostic/README.md b/packages/diagnostic/README.md
index c8e0bddbc38..397b8cbb247 100644
--- a/packages/diagnostic/README.md
+++ b/packages/diagnostic/README.md
@@ -264,7 +264,7 @@ If our build assets are located in `
/dist-test/*` and the entry point for t
*\/diagnostic.js*
```ts
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
await launch();
```
@@ -293,7 +293,7 @@ For github-actions, [use the official bun action](https://github.com/oven-sh/set
Finally, give your tests a run to make sure they still work as expected.
```sh
-bun ./diagnostic.js
+node ./diagnostic.js
```
And update any necessary scripts in `package.json`
@@ -303,7 +303,7 @@ And update any necessary scripts in `package.json`
"scripts": {
"build" "ember build",
- "test": "ember test"
-+ "test": "bun run build && bun ./diagnostic.js"
++ "test": "bun run build && node ./diagnostic.js"
}
}
```
diff --git a/packages/diagnostic/src/-define.ts b/packages/diagnostic/client/src/-define.ts
similarity index 100%
rename from packages/diagnostic/src/-define.ts
rename to packages/diagnostic/client/src/-define.ts
diff --git a/packages/diagnostic/src/-ember/is-component.ts b/packages/diagnostic/client/src/-ember/is-component.ts
similarity index 100%
rename from packages/diagnostic/src/-ember/is-component.ts
rename to packages/diagnostic/client/src/-ember/is-component.ts
diff --git a/packages/diagnostic/src/-types.ts b/packages/diagnostic/client/src/-types.ts
similarity index 100%
rename from packages/diagnostic/src/-types.ts
rename to packages/diagnostic/client/src/-types.ts
diff --git a/packages/diagnostic/src/-types/report.ts b/packages/diagnostic/client/src/-types/report.ts
similarity index 100%
rename from packages/diagnostic/src/-types/report.ts
rename to packages/diagnostic/client/src/-types/report.ts
diff --git a/packages/diagnostic/src/-utils.ts b/packages/diagnostic/client/src/-utils.ts
similarity index 100%
rename from packages/diagnostic/src/-utils.ts
rename to packages/diagnostic/client/src/-utils.ts
diff --git a/packages/diagnostic/src/ember-classic.ts b/packages/diagnostic/client/src/ember-classic.ts
similarity index 100%
rename from packages/diagnostic/src/ember-classic.ts
rename to packages/diagnostic/client/src/ember-classic.ts
diff --git a/packages/diagnostic/src/ember.ts b/packages/diagnostic/client/src/ember.ts
similarity index 100%
rename from packages/diagnostic/src/ember.ts
rename to packages/diagnostic/client/src/ember.ts
diff --git a/packages/diagnostic/src/emitters/diagnostic.ts b/packages/diagnostic/client/src/emitters/diagnostic.ts
similarity index 100%
rename from packages/diagnostic/src/emitters/diagnostic.ts
rename to packages/diagnostic/client/src/emitters/diagnostic.ts
diff --git a/packages/diagnostic/src/emitters/testem.ts b/packages/diagnostic/client/src/emitters/testem.ts
similarity index 100%
rename from packages/diagnostic/src/emitters/testem.ts
rename to packages/diagnostic/client/src/emitters/testem.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-get-description.ts b/packages/diagnostic/client/src/helpers/-dom/-get-description.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-get-description.ts
rename to packages/diagnostic/client/src/helpers/-dom/-get-description.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-get-element.ts b/packages/diagnostic/client/src/helpers/-dom/-get-element.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-get-element.ts
rename to packages/diagnostic/client/src/helpers/-dom/-get-element.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-get-elements.ts b/packages/diagnostic/client/src/helpers/-dom/-get-elements.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-get-elements.ts
rename to packages/diagnostic/client/src/helpers/-dom/-get-elements.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-get-window-or-element.ts b/packages/diagnostic/client/src/helpers/-dom/-get-window-or-element.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-get-window-or-element.ts
rename to packages/diagnostic/client/src/helpers/-dom/-get-window-or-element.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-guard-for-maxlength.ts b/packages/diagnostic/client/src/helpers/-dom/-guard-for-maxlength.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-guard-for-maxlength.ts
rename to packages/diagnostic/client/src/helpers/-dom/-guard-for-maxlength.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-helper-context.ts b/packages/diagnostic/client/src/helpers/-dom/-helper-context.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-helper-context.ts
rename to packages/diagnostic/client/src/helpers/-dom/-helper-context.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-is-focusable.ts b/packages/diagnostic/client/src/helpers/-dom/-is-focusable.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-is-focusable.ts
rename to packages/diagnostic/client/src/helpers/-dom/-is-focusable.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-is-form-control.ts b/packages/diagnostic/client/src/helpers/-dom/-is-form-control.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-is-form-control.ts
rename to packages/diagnostic/client/src/helpers/-dom/-is-form-control.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-is-select-element.ts b/packages/diagnostic/client/src/helpers/-dom/-is-select-element.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-is-select-element.ts
rename to packages/diagnostic/client/src/helpers/-dom/-is-select-element.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-target.ts b/packages/diagnostic/client/src/helpers/-dom/-target.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-target.ts
rename to packages/diagnostic/client/src/helpers/-dom/-target.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-to-array.ts b/packages/diagnostic/client/src/helpers/-dom/-to-array.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-to-array.ts
rename to packages/diagnostic/client/src/helpers/-dom/-to-array.ts
diff --git a/packages/diagnostic/src/helpers/-dom/-utils.ts b/packages/diagnostic/client/src/helpers/-dom/-utils.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/-utils.ts
rename to packages/diagnostic/client/src/helpers/-dom/-utils.ts
diff --git a/packages/diagnostic/src/helpers/-dom/blur.ts b/packages/diagnostic/client/src/helpers/-dom/blur.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/blur.ts
rename to packages/diagnostic/client/src/helpers/-dom/blur.ts
diff --git a/packages/diagnostic/src/helpers/-dom/click.ts b/packages/diagnostic/client/src/helpers/-dom/click.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/click.ts
rename to packages/diagnostic/client/src/helpers/-dom/click.ts
diff --git a/packages/diagnostic/src/helpers/-dom/double-click.ts b/packages/diagnostic/client/src/helpers/-dom/double-click.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/double-click.ts
rename to packages/diagnostic/client/src/helpers/-dom/double-click.ts
diff --git a/packages/diagnostic/src/helpers/-dom/fill-in.ts b/packages/diagnostic/client/src/helpers/-dom/fill-in.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/fill-in.ts
rename to packages/diagnostic/client/src/helpers/-dom/fill-in.ts
diff --git a/packages/diagnostic/src/helpers/-dom/find-all.ts b/packages/diagnostic/client/src/helpers/-dom/find-all.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/find-all.ts
rename to packages/diagnostic/client/src/helpers/-dom/find-all.ts
diff --git a/packages/diagnostic/src/helpers/-dom/find.ts b/packages/diagnostic/client/src/helpers/-dom/find.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/find.ts
rename to packages/diagnostic/client/src/helpers/-dom/find.ts
diff --git a/packages/diagnostic/src/helpers/-dom/fire-event.ts b/packages/diagnostic/client/src/helpers/-dom/fire-event.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/fire-event.ts
rename to packages/diagnostic/client/src/helpers/-dom/fire-event.ts
diff --git a/packages/diagnostic/src/helpers/-dom/focus.ts b/packages/diagnostic/client/src/helpers/-dom/focus.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/focus.ts
rename to packages/diagnostic/client/src/helpers/-dom/focus.ts
diff --git a/packages/diagnostic/src/helpers/-dom/helper-hooks.ts b/packages/diagnostic/client/src/helpers/-dom/helper-hooks.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/helper-hooks.ts
rename to packages/diagnostic/client/src/helpers/-dom/helper-hooks.ts
diff --git a/packages/diagnostic/src/helpers/-dom/scroll-to.ts b/packages/diagnostic/client/src/helpers/-dom/scroll-to.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/scroll-to.ts
rename to packages/diagnostic/client/src/helpers/-dom/scroll-to.ts
diff --git a/packages/diagnostic/src/helpers/-dom/select.ts b/packages/diagnostic/client/src/helpers/-dom/select.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/select.ts
rename to packages/diagnostic/client/src/helpers/-dom/select.ts
diff --git a/packages/diagnostic/src/helpers/-dom/tab.ts b/packages/diagnostic/client/src/helpers/-dom/tab.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/tab.ts
rename to packages/diagnostic/client/src/helpers/-dom/tab.ts
diff --git a/packages/diagnostic/src/helpers/-dom/tap.ts b/packages/diagnostic/client/src/helpers/-dom/tap.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/tap.ts
rename to packages/diagnostic/client/src/helpers/-dom/tap.ts
diff --git a/packages/diagnostic/src/helpers/-dom/trigger-event.ts b/packages/diagnostic/client/src/helpers/-dom/trigger-event.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/trigger-event.ts
rename to packages/diagnostic/client/src/helpers/-dom/trigger-event.ts
diff --git a/packages/diagnostic/src/helpers/-dom/trigger-key-event.ts b/packages/diagnostic/client/src/helpers/-dom/trigger-key-event.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/trigger-key-event.ts
rename to packages/diagnostic/client/src/helpers/-dom/trigger-key-event.ts
diff --git a/packages/diagnostic/src/helpers/-dom/type-in.ts b/packages/diagnostic/client/src/helpers/-dom/type-in.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/type-in.ts
rename to packages/diagnostic/client/src/helpers/-dom/type-in.ts
diff --git a/packages/diagnostic/src/helpers/-dom/wait-for.ts b/packages/diagnostic/client/src/helpers/-dom/wait-for.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/wait-for.ts
rename to packages/diagnostic/client/src/helpers/-dom/wait-for.ts
diff --git a/packages/diagnostic/src/helpers/-dom/wait-until.ts b/packages/diagnostic/client/src/helpers/-dom/wait-until.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/-dom/wait-until.ts
rename to packages/diagnostic/client/src/helpers/-dom/wait-until.ts
diff --git a/packages/diagnostic/src/helpers/install.ts b/packages/diagnostic/client/src/helpers/install.ts
similarity index 100%
rename from packages/diagnostic/src/helpers/install.ts
rename to packages/diagnostic/client/src/helpers/install.ts
diff --git a/packages/diagnostic/src/index.ts b/packages/diagnostic/client/src/index.ts
similarity index 100%
rename from packages/diagnostic/src/index.ts
rename to packages/diagnostic/client/src/index.ts
diff --git a/packages/diagnostic/src/internals/config.ts b/packages/diagnostic/client/src/internals/config.ts
similarity index 100%
rename from packages/diagnostic/src/internals/config.ts
rename to packages/diagnostic/client/src/internals/config.ts
diff --git a/packages/diagnostic/src/internals/delegating-reporter.ts b/packages/diagnostic/client/src/internals/delegating-reporter.ts
similarity index 100%
rename from packages/diagnostic/src/internals/delegating-reporter.ts
rename to packages/diagnostic/client/src/internals/delegating-reporter.ts
diff --git a/packages/diagnostic/src/internals/diagnostic.ts b/packages/diagnostic/client/src/internals/diagnostic.ts
similarity index 100%
rename from packages/diagnostic/src/internals/diagnostic.ts
rename to packages/diagnostic/client/src/internals/diagnostic.ts
diff --git a/packages/diagnostic/src/internals/run.ts b/packages/diagnostic/client/src/internals/run.ts
similarity index 100%
rename from packages/diagnostic/src/internals/run.ts
rename to packages/diagnostic/client/src/internals/run.ts
diff --git a/packages/diagnostic/src/legacy/equiv.ts b/packages/diagnostic/client/src/legacy/equiv.ts
similarity index 100%
rename from packages/diagnostic/src/legacy/equiv.ts
rename to packages/diagnostic/client/src/legacy/equiv.ts
diff --git a/packages/diagnostic/src/react.tsx b/packages/diagnostic/client/src/react.tsx
similarity index 100%
rename from packages/diagnostic/src/react.tsx
rename to packages/diagnostic/client/src/react.tsx
diff --git a/packages/diagnostic/src/react/test-helpers.ts b/packages/diagnostic/client/src/react/test-helpers.ts
similarity index 100%
rename from packages/diagnostic/src/react/test-helpers.ts
rename to packages/diagnostic/client/src/react/test-helpers.ts
diff --git a/packages/diagnostic/src/reporters/dom.ts b/packages/diagnostic/client/src/reporters/dom.ts
similarity index 100%
rename from packages/diagnostic/src/reporters/dom.ts
rename to packages/diagnostic/client/src/reporters/dom.ts
diff --git a/packages/diagnostic/src/runners/dom.ts b/packages/diagnostic/client/src/runners/dom.ts
similarity index 100%
rename from packages/diagnostic/src/runners/dom.ts
rename to packages/diagnostic/client/src/runners/dom.ts
diff --git a/packages/diagnostic/src/spec.ts b/packages/diagnostic/client/src/spec.ts
similarity index 100%
rename from packages/diagnostic/src/spec.ts
rename to packages/diagnostic/client/src/spec.ts
diff --git a/packages/diagnostic/src/styles/dom-reporter.css b/packages/diagnostic/client/src/styles/dom-reporter.css
similarity index 100%
rename from packages/diagnostic/src/styles/dom-reporter.css
rename to packages/diagnostic/client/src/styles/dom-reporter.css
diff --git a/packages/diagnostic/eslint.config.mjs b/packages/diagnostic/eslint.config.mjs
index 08d1fe7e5f2..975931adc9b 100644
--- a/packages/diagnostic/eslint.config.mjs
+++ b/packages/diagnostic/eslint.config.mjs
@@ -11,7 +11,7 @@ export default [
// browser (js/ts) ================
typescript.browser({
dirname: import.meta.dirname,
- srcDirs: ['src'],
+ srcDirs: ['client/src'],
allowedImports: ['@ember/test-helpers', '@glimmer/manager', '@ember/runloop'],
rules: {
'no-console': 'off',
diff --git a/packages/diagnostic/package.json b/packages/diagnostic/package.json
index f51b112d7e6..ea06ff1d31b 100644
--- a/packages/diagnostic/package.json
+++ b/packages/diagnostic/package.json
@@ -34,20 +34,16 @@
"logos"
],
"exports": {
- ".": {
+ "./server": {
"node": "./server/index.js",
"bun": "./server/index.js",
"deno": "./server/index.js",
- "browser": {
- "types": "./unstable-preview-types/index.d.ts",
- "default": "./dist/index.js"
- },
- "import": {
- "types": "./unstable-preview-types/index.d.ts",
- "default": "./dist/index.js"
- },
"default": "./server/index.js"
},
+ ".": {
+ "types": "./unstable-preview-types/index.d.ts",
+ "default": "./dist/index.js"
+ },
"./*.css": {
"default": "./dist/*.css"
},
@@ -101,6 +97,9 @@
"@warp-drive/react": "workspace:*",
"@embroider/macros": "^1.18.1",
"dom-element-descriptors": "^0.5.1",
+ "hono": "^4.9.4",
+ "@hono/node-server": "^1.19.0",
+ "@hono/node-ws": "^1.2.0",
"qunit-dom": "^3.5.0"
},
"devDependencies": {
@@ -113,7 +112,9 @@
"@warp-drive/internal-config": "workspace:*",
"@types/react": "^19.1.11",
"@types/react-dom": "^19.1.8",
- "bun-types": "^1.2.20",
+ "@types/node": "^24.3.0",
+ "@types/tmp": "^0.2.6",
+ "@types/debug": "^4.1.12",
"@ember/test-helpers": "5.2.0",
"ember-source": "~6.6.0",
"@glimmer/component": "^2.0.0",
diff --git a/packages/diagnostic/server/default-setup.js b/packages/diagnostic/server/default-setup.js
index 324a1c1e23c..afff7d53fda 100644
--- a/packages/diagnostic/server/default-setup.js
+++ b/packages/diagnostic/server/default-setup.js
@@ -3,7 +3,6 @@ import fs from 'fs';
import path from 'path';
import { getBrowser, recommendedArgs } from './browsers/index.js';
-import { launch } from './index.js';
import DefaultReporter from './reporters/default.js';
import { getFlags } from './utils/get-flags.js';
@@ -30,7 +29,7 @@ const SUITE_TIMEOUT = process.env.SUITE_TIMEOUT
? Number(process.env.SUITE_TIMEOUT) - SUITE_TIMEOUT_BUFFER
: DEFAULT_SUITE_TIMEOUT;
-export default async function launchDefault(overrides = {}) {
+export async function launchDefault(overrides = {}) {
const flags = getFlags().filtered;
Object.assign(overrides, flags);
@@ -71,7 +70,7 @@ export default async function launchDefault(overrides = {}) {
`\n\nLaunching with ${chalk.bold(chalk.cyan(CI_BROWSER))} (worker count ${chalk.bold(chalk.yellow(parallel))})\n\n`
);
- await launch({
+ return {
// flag config
serve: overrides.serve ?? false,
noLaunch: overrides.noLaunch ?? false,
@@ -110,5 +109,5 @@ export default async function launchDefault(overrides = {}) {
args: recommendedArgs(BROWSER_TAG, overrides),
},
},
- });
+ };
}
diff --git a/packages/diagnostic/server/index.js b/packages/diagnostic/server/index.js
index 554f6e9f366..8702ab88a77 100644
--- a/packages/diagnostic/server/index.js
+++ b/packages/diagnostic/server/index.js
@@ -8,6 +8,7 @@ import { buildHandler } from './bun/socket-handler.js';
import { debug, error, print } from './utils/debug.js';
import { getPort } from './utils/port.js';
import { addCloseHandler } from './bun/watch.js';
+import { launchDefault } from './default-setup.js';
async function getCertInfo() {
let CERT_PATH = process.env.HOLODECK_SSL_CERT_PATH;
@@ -66,7 +67,8 @@ async function getCertInfo() {
/** @type {import('bun-types')} */
const isBun = typeof Bun !== 'undefined';
-export async function launch(config) {
+export async function launch(settings) {
+ const config = launchDefault(settings);
if (isBun) {
debug(`Bun detected, using Bun.serve()`);
diff --git a/packages/diagnostic/test/diagnostic.js b/packages/diagnostic/test/diagnostic.js
index 186b0f50765..e9db496faf4 100644
--- a/packages/diagnostic/test/diagnostic.js
+++ b/packages/diagnostic/test/diagnostic.js
@@ -1,3 +1,3 @@
-import launch from '../server/default-setup';
+import { launch } from '../server/src/index.ts';
await launch();
diff --git a/packages/diagnostic/tsconfig.json b/packages/diagnostic/tsconfig.json
index 9287d299fe8..bbb369a9549 100644
--- a/packages/diagnostic/tsconfig.json
+++ b/packages/diagnostic/tsconfig.json
@@ -1,5 +1,5 @@
{
- "include": ["src/**/*"],
+ "include": ["client/src/**/*"],
"compilerOptions": {
"lib": ["DOM", "ESNext"],
"module": "esnext",
@@ -20,7 +20,7 @@
// but causes us to not rebuild properly
"composite": true,
"incremental": true,
- "rootDir": "src",
+ "rootDir": "client/src",
"declaration": true,
"declarationMap": true,
"declarationDir": "unstable-preview-types",
diff --git a/packages/diagnostic/vite.config.mjs b/packages/diagnostic/vite.config.mjs
index b49bab490bf..f689759671f 100644
--- a/packages/diagnostic/vite.config.mjs
+++ b/packages/diagnostic/vite.config.mjs
@@ -9,23 +9,24 @@ export const externals = [
'@glimmer/manager',
];
export const entryPoints = [
- './src/index.ts',
- './src/reporters/dom.ts',
- './src/runners/dom.ts',
- './src/helpers/install.ts',
- './src/ember.ts',
- './src/ember-classic.ts',
- './src/react.tsx',
- './src/spec.ts',
- './src/react/test-helpers.ts',
- './src/-types.ts',
+ './client/src/index.ts',
+ './client/src/reporters/dom.ts',
+ './client/src/runners/dom.ts',
+ './client/src/helpers/install.ts',
+ './client/src/ember.ts',
+ './client/src/ember-classic.ts',
+ './client/src/react.tsx',
+ './client/src/spec.ts',
+ './client/src/react/test-helpers.ts',
+ './client/src/-types.ts',
];
export default createConfig(
{
+ srcDir: './client/src',
entryPoints,
externals,
- plugins: [keepAssets({ from: 'src', include: ['./styles/**/*.css'], dist: 'dist' })],
+ plugins: [keepAssets({ from: './client/src', include: ['./styles/**/*.css'], dist: 'dist' })],
},
import.meta.resolve
);
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 80fd90cb6d4..2f65a4f0ef0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -574,6 +574,12 @@ importers:
'@embroider/macros':
specifier: ^1.18.1
version: 1.18.1(@babel/core@7.28.3)
+ '@hono/node-server':
+ specifier: ^1.19.0
+ version: 1.19.0(hono@4.9.4)
+ '@hono/node-ws':
+ specifier: ^1.2.0
+ version: 1.2.0(0761bbd318d0a1c99aa83154d16b3252)
'@warp-drive/core':
specifier: workspace:*
version: file:warp-drive-packages/core(@babel/core@7.28.3)
@@ -589,6 +595,9 @@ importers:
dom-element-descriptors:
specifier: ^0.5.1
version: 0.5.1
+ hono:
+ specifier: ^4.9.4
+ version: 4.9.4
qunit-dom:
specifier: ^3.5.0
version: 3.5.0
@@ -620,18 +629,24 @@ importers:
'@glimmer/component':
specifier: ^2.0.0
version: 2.0.0
+ '@types/debug':
+ specifier: ^4.1.12
+ version: 4.1.12
+ '@types/node':
+ specifier: ^24.3.0
+ version: 24.3.0
'@types/react':
specifier: ^19.1.11
version: 19.1.11
'@types/react-dom':
specifier: ^19.1.8
version: 19.1.8(@types/react@19.1.11)
+ '@types/tmp':
+ specifier: ^0.2.6
+ version: 0.2.6
'@warp-drive/internal-config':
specifier: workspace:*
- version: file:tools/internal-config
- bun-types:
- specifier: ^1.2.20
- version: 1.2.20(@types/react@19.1.11)
+ version: file:tools/internal-config(@types/node@24.3.0)
ember-cli-test-loader:
specifier: ^3.1.0
version: 3.1.0(@babel/core@7.28.3)
@@ -643,7 +658,7 @@ importers:
version: 5.9.2
vite:
specifier: ^7.1.3
- version: 7.1.3
+ version: 7.1.3(@types/node@24.3.0)
packages/eslint-plugin-warp-drive:
dependencies:
@@ -5669,6 +5684,13 @@ packages:
peerDependencies:
hono: ^4
+ '@hono/node-ws@1.2.0':
+ resolution: {integrity: sha512-OBPQ8OSHBw29mj00wT/xGYtB6HY54j0fNSdVZ7gZM3TUeq0So11GXaWtFf1xWxQNfumKIsj0wRuLKWfVsO5GgQ==}
+ engines: {node: '>=18.14.1'}
+ peerDependencies:
+ '@hono/node-server': ^1.11.1
+ hono: ^4.6.0
+
'@html-next/vertical-collection@https://codeload.github.com/NullVoxPopuli/vertical-collection/tar.gz/95c4b101634c437ee1dc54eb18b376c4538b0dec#path:vertical-collection':
resolution: {path: vertical-collection, tarball: https://codeload.github.com/NullVoxPopuli/vertical-collection/tar.gz/95c4b101634c437ee1dc54eb18b376c4538b0dec}
version: 4.0.2
@@ -6572,6 +6594,9 @@ packages:
'@types/tmp@0.0.33':
resolution: {integrity: sha512-gVC1InwyVrO326wbBZw+AO3u2vRXz/iRWq9jYhpG4W8LXyIgDv3ZmcLQ5Q4Gs+gFMyqx+viFoFT+l3p61QFCmQ==}
+ '@types/tmp@0.2.6':
+ resolution: {integrity: sha512-chhaNf2oKHlRkDGt+tiKE2Z5aJ6qalm7Z9rlLdBwmOiAAf09YQvvoLXjWK4HWPF1xU/fqvMgfNfpVoBscA/tKA==}
+
'@types/triple-beam@1.3.5':
resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
@@ -16732,6 +16757,15 @@ snapshots:
dependencies:
hono: 4.9.4
+ '@hono/node-ws@1.2.0(0761bbd318d0a1c99aa83154d16b3252)':
+ dependencies:
+ '@hono/node-server': 1.19.0(hono@4.9.4)
+ hono: 4.9.4
+ ws: 8.18.2
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
'@html-next/vertical-collection@https://codeload.github.com/NullVoxPopuli/vertical-collection/tar.gz/95c4b101634c437ee1dc54eb18b376c4538b0dec#path:vertical-collection(@babel/core@7.28.3)':
dependencies:
ember-auto-import: 2.10.0
@@ -17714,6 +17748,8 @@ snapshots:
'@types/tmp@0.0.33': {}
+ '@types/tmp@0.2.6': {}
+
'@types/triple-beam@1.3.5': {}
'@types/unist@3.0.3': {}
@@ -18122,11 +18158,14 @@ snapshots:
'@warp-drive/diagnostic@file:packages/diagnostic(4cc24c2ebebabae28e72a02fe878be0d)':
dependencies:
'@embroider/macros': 1.18.1(@babel/core@7.28.3)
+ '@hono/node-server': 1.19.0(hono@4.9.4)
+ '@hono/node-ws': 1.2.0(0761bbd318d0a1c99aa83154d16b3252)
'@warp-drive/core': file:warp-drive-packages/core(@babel/core@7.28.3)
'@warp-drive/react': file:warp-drive-packages/react(@babel/core@7.28.3)
chalk: 5.6.0
debug: 4.4.1
dom-element-descriptors: 0.5.1
+ hono: 4.9.4
qunit-dom: 3.5.0
tmp: 0.2.5
optionalDependencies:
@@ -18134,30 +18173,40 @@ snapshots:
ember-cli-test-loader: 3.1.0(@babel/core@7.28.3)
transitivePeerDependencies:
- '@babel/core'
+ - bufferutil
- supports-color
+ - utf-8-validate
'@warp-drive/diagnostic@file:packages/diagnostic(@babel/core@7.28.3)':
dependencies:
'@embroider/macros': 1.18.1(@babel/core@7.28.3)
+ '@hono/node-server': 1.19.0(hono@4.9.4)
+ '@hono/node-ws': 1.2.0(0761bbd318d0a1c99aa83154d16b3252)
'@warp-drive/core': file:warp-drive-packages/core(@babel/core@7.28.3)
'@warp-drive/react': file:warp-drive-packages/react(@babel/core@7.28.3)
chalk: 5.6.0
debug: 4.4.1
dom-element-descriptors: 0.5.1
+ hono: 4.9.4
qunit-dom: 3.5.0
tmp: 0.2.5
transitivePeerDependencies:
- '@babel/core'
+ - bufferutil
- supports-color
+ - utf-8-validate
'@warp-drive/diagnostic@file:packages/diagnostic(ab3931b8efe123d48e6f09ce51952ac3)':
dependencies:
'@embroider/macros': 1.18.1(@babel/core@7.28.3)
+ '@hono/node-server': 1.19.0(hono@4.9.4)
+ '@hono/node-ws': 1.2.0(0761bbd318d0a1c99aa83154d16b3252)
'@warp-drive/core': file:warp-drive-packages/core(@babel/core@7.28.3)
'@warp-drive/react': file:warp-drive-packages/react(@babel/core@7.28.3)
chalk: 5.6.0
debug: 4.4.1
dom-element-descriptors: 0.5.1
+ hono: 4.9.4
qunit-dom: 3.5.0
tmp: 0.2.5
optionalDependencies:
@@ -18165,23 +18214,30 @@ snapshots:
react-dom: 19.1.1(react@19.1.1)
transitivePeerDependencies:
- '@babel/core'
+ - bufferutil
- supports-color
+ - utf-8-validate
'@warp-drive/diagnostic@file:packages/diagnostic(aee654df6dc3ed0e82ba2e6019020ca6)':
dependencies:
'@embroider/macros': 1.18.1(@babel/core@7.28.3)
+ '@hono/node-server': 1.19.0(hono@4.9.4)
+ '@hono/node-ws': 1.2.0(0761bbd318d0a1c99aa83154d16b3252)
'@warp-drive/core': file:warp-drive-packages/core(@babel/core@7.28.3)
'@warp-drive/react': file:warp-drive-packages/react(@babel/core@7.28.3)
chalk: 5.6.0
debug: 4.4.1
dom-element-descriptors: 0.5.1
+ hono: 4.9.4
qunit-dom: 3.5.0
tmp: 0.2.5
optionalDependencies:
'@ember/test-helpers': 5.2.0(patch_hash=a1670a4e3977c846a5c2454f317f5a17cbd284aef3a676b190c98141536afb04)(a28950a1e4cd07d337893daf47c6f294)
transitivePeerDependencies:
- '@babel/core'
+ - bufferutil
- supports-color
+ - utf-8-validate
'@warp-drive/ember@file:warp-drive-packages/ember(1adf99e055abba96ff2ddb1d049f661d)':
dependencies:
@@ -19769,11 +19825,6 @@ snapshots:
dependencies:
'@types/node': 24.3.0
- bun-types@1.2.20(@types/react@19.1.11):
- dependencies:
- '@types/node': 24.3.0
- '@types/react': 19.1.11
-
bun-types@1.2.21:
dependencies:
'@types/node': 24.3.0
diff --git a/tests/builders/diagnostic.js b/tests/builders/diagnostic.js
index ede75dbb1ad..0f39890841e 100644
--- a/tests/builders/diagnostic.js
+++ b/tests/builders/diagnostic.js
@@ -1,3 +1,3 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
await launch();
diff --git a/tests/ember-data__adapter/diagnostic.js b/tests/ember-data__adapter/diagnostic.js
index ede75dbb1ad..0f39890841e 100644
--- a/tests/ember-data__adapter/diagnostic.js
+++ b/tests/ember-data__adapter/diagnostic.js
@@ -1,3 +1,3 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
await launch();
diff --git a/tests/ember-data__graph/diagnostic.js b/tests/ember-data__graph/diagnostic.js
index ede75dbb1ad..0f39890841e 100644
--- a/tests/ember-data__graph/diagnostic.js
+++ b/tests/ember-data__graph/diagnostic.js
@@ -1,3 +1,3 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
await launch();
diff --git a/tests/ember-data__model/diagnostic.js b/tests/ember-data__model/diagnostic.js
index ede75dbb1ad..0f39890841e 100644
--- a/tests/ember-data__model/diagnostic.js
+++ b/tests/ember-data__model/diagnostic.js
@@ -1,3 +1,3 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
await launch();
diff --git a/tests/ember-data__request/diagnostic.js b/tests/ember-data__request/diagnostic.js
index 3d888b65b69..70d122e8f1d 100644
--- a/tests/ember-data__request/diagnostic.js
+++ b/tests/ember-data__request/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
diff --git a/tests/experiments/diagnostic.js b/tests/experiments/diagnostic.js
index 2e9bf4442db..ff5110f868e 100644
--- a/tests/experiments/diagnostic.js
+++ b/tests/experiments/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
diff --git a/tests/framework-ember/diagnostic.js b/tests/framework-ember/diagnostic.js
index 2e9bf4442db..218847697d6 100644
--- a/tests/framework-ember/diagnostic.js
+++ b/tests/framework-ember/diagnostic.js
@@ -1,10 +1,11 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
async setup(options) {
+ const port = options.port + 1;
await holodeck.launchProgram({
- port: options.port + 1,
+ port,
});
},
async cleanup() {
diff --git a/tests/framework-react/diagnostic.js b/tests/framework-react/diagnostic.js
index 2e9bf4442db..ff5110f868e 100644
--- a/tests/framework-react/diagnostic.js
+++ b/tests/framework-react/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
diff --git a/tests/framework-svelte/diagnostic.js b/tests/framework-svelte/diagnostic.js
index 2e9bf4442db..ff5110f868e 100644
--- a/tests/framework-svelte/diagnostic.js
+++ b/tests/framework-svelte/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
diff --git a/tests/framework-vue/diagnostic.js b/tests/framework-vue/diagnostic.js
index 2e9bf4442db..ff5110f868e 100644
--- a/tests/framework-vue/diagnostic.js
+++ b/tests/framework-vue/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({
diff --git a/tests/json-api/diagnostic.js b/tests/json-api/diagnostic.js
index 28c6a933ba9..9ec2a7a0008 100644
--- a/tests/json-api/diagnostic.js
+++ b/tests/json-api/diagnostic.js
@@ -1,4 +1,4 @@
-import launch from '@warp-drive/diagnostic/server/default-setup.js';
+import { launch } from '@warp-drive/diagnostic/server';
import holodeck from '@warp-drive/holodeck';
await launch({