create-warlock 5.37.0 → 5.37.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ All notable changes to `create-warlock` are documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). `@warlock.js/*` packages are released in lockstep — every package shares the same version number, so a version below may list only the changes that affected this package.
6
6
 
7
+ ## 5.37.1 - 2026-10-24
8
+
9
+ ### Changed
10
+
11
+ - The template's `testing-strategy` skill describes `WARLOCK_TEST_LIFETIME=worker`, `resetDatabase` and `workerDatabaseName()` for the generated test setup.
12
+
7
13
  ## 5.36.0 - 2026-10-22
8
14
 
9
15
  ### Changed
package/package.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "dependencies": {
14
14
  "@clack/prompts": "^0.8.2",
15
15
  "@mongez/copper": "^2.1.3",
16
- "@warlock.js/fs": "5.37.0",
16
+ "@warlock.js/fs": "5.37.1",
17
17
  "@mongez/reinforcements": "^4.0.2",
18
18
  "cross-spawn": "^7.0.3",
19
19
  "rimraf": "^6.0.1",
@@ -22,7 +22,7 @@
22
22
  "engines": {
23
23
  "node": ">=22.15"
24
24
  },
25
- "version": "5.37.0",
25
+ "version": "5.37.1",
26
26
  "type": "module",
27
27
  "main": "./esm/index.mjs",
28
28
  "module": "./esm/index.mjs",
@@ -358,6 +358,13 @@ Integration setup defaults to `tests.lifetime: "file"`. For reuse, set
358
358
  `pool: "forks", isolate: false`, keep the generated runner, and use `vitest run`.
359
359
  Watch, threads and isolated graphs are refused. Keep `afterAll(teardownTest)`:
360
360
  it marks file boundaries while the runner closes connectors at worker exit.
361
+ `warlock add test` generates `src/config/tests.ts` so `WARLOCK_TEST_LIFETIME=worker`
362
+ switches `lifetime` to `"worker"`, turns on `resetDatabase` (truncates every table or
363
+ collection before each file, keeping the migrations ledger) and flips the integration
364
+ project to `isolate: false`. Use `workerDatabaseName(base)` from
365
+ `@warlock.js/core/tests` so each worker has its own database. When setup dominates a
366
+ file-lifetime run, the profiler summary recommends this. Servers from
367
+ `createTestHttpServer()` a file leaves open are closed before the next file.
361
368
  Set `tests.resetBetweenFiles` to an async application-owned cleanup callback;
362
369
  it runs before every file, including the first, after selected fakes, clock and
363
370
  IDs reset. Each worker needs a separate database/schema. Module singletons and