DEP0205 DeprecationWarning: module.register() is deprecated
Pre-existing on next; noticed while running the e2e suite for #154 and deliberately not chased mid-task.
Captured rather than ignored because a deprecation warning is an action item with a deadline attached — it becomes a hard failure on some future Node release, and the pinned Node version in script/bootstrap will move eventually. Cheaper to resolve now than the first time CI breaks on it.
Implementation requirements
Identify which dependency calls module.register() — it is unlikely to be repo code; check the esbuild/tailwind/jest toolchain first.
If it is a transitive dependency, establish whether a newer version drops the call before considering any workaround.
Do NOT suppress the warning. Silencing a deprecation notice converts a scheduled problem into an unscheduled one.
If it cannot be resolved without an unwanted upgrade, record that conclusion and the Node version at which it becomes fatal, so the deadline is known rather than discovered.
Definition of done
The source of the module.register() call is identified and named.
Either the warning no longer appears, or the reason it cannot yet be removed is documented along with the Node version that will make it fatal.
make test-e2e still passes.
TODO.md updated in the same commit.
make check passes.
The build step invoked by `script/test-e2e` prints:
```
DEP0205 DeprecationWarning: module.register() is deprecated
```
Pre-existing on `next`; noticed while running the e2e suite for https://git.eeqj.de/sneak/AutistMask/issues/154 and deliberately not chased mid-task.
Captured rather than ignored because a deprecation warning is an action item with a deadline attached — it becomes a hard failure on some future Node release, and the pinned Node version in `script/bootstrap` will move eventually. Cheaper to resolve now than the first time CI breaks on it.
## Implementation requirements
- Identify which dependency calls `module.register()` — it is unlikely to be repo code; check the esbuild/tailwind/jest toolchain first.
- If it is a transitive dependency, establish whether a newer version drops the call before considering any workaround.
- Do NOT suppress the warning. Silencing a deprecation notice converts a scheduled problem into an unscheduled one.
- If it cannot be resolved without an unwanted upgrade, record that conclusion and the Node version at which it becomes fatal, so the deadline is known rather than discovered.
## Definition of done
- [ ] The source of the `module.register()` call is identified and named.
- [ ] Either the warning no longer appears, or the reason it cannot yet be removed is documented along with the Node version that will make it fatal.
- [ ] `make test-e2e` still passes.
- [ ] `TODO.md` updated in the same commit.
- [ ] `make check` passes.
The module.register() call is in @tailwindcss/node 4.2.1, which the Tailwind CLI loads during the build. #473 pins Tailwind 4.3.1, which calls module.registerHooks() instead. When this issue was filed, script/test-e2e ran the build on the host's Node. It now builds inside the e2e image on Node 22, where module.register() is not runtime-deprecated (that starts in Node 26.0.0), so the e2e output had stopped showing the warning even before this pin.
Model: opus-5-5
The `module.register()` call is in `@tailwindcss/node` 4.2.1, which the Tailwind CLI loads during the build. https://git.eeqj.de/sneak/AutistMask/pulls/473 pins Tailwind 4.3.1, which calls `module.registerHooks()` instead. When this issue was filed, `script/test-e2e` ran the build on the host's Node. It now builds inside the e2e image on Node 22, where `module.register()` is not runtime-deprecated (that starts in Node 26.0.0), so the e2e output had stopped showing the warning even before this pin.
Model: opus-5-5
Resolved by #473, now on next: Tailwind 4.3.1 no longer calls module.register(), the source of this warning, so neither make build nor script/test-e2e can print it.
Model: opus-5-5
Resolved by https://git.eeqj.de/sneak/AutistMask/pulls/473, now on `next`: Tailwind 4.3.1 no longer calls `module.register()`, the source of this warning, so neither `make build` nor `script/test-e2e` can print it.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The build step invoked by
script/test-e2eprints:Pre-existing on
next; noticed while running the e2e suite for #154 and deliberately not chased mid-task.Captured rather than ignored because a deprecation warning is an action item with a deadline attached — it becomes a hard failure on some future Node release, and the pinned Node version in
script/bootstrapwill move eventually. Cheaper to resolve now than the first time CI breaks on it.Implementation requirements
module.register()— it is unlikely to be repo code; check the esbuild/tailwind/jest toolchain first.Definition of done
module.register()call is identified and named.make test-e2estill passes.TODO.mdupdated in the same commit.make checkpasses.The
module.register()call is in@tailwindcss/node4.2.1, which the Tailwind CLI loads during the build. #473 pins Tailwind 4.3.1, which callsmodule.registerHooks()instead. When this issue was filed,script/test-e2eran the build on the host's Node. It now builds inside the e2e image on Node 22, wheremodule.register()is not runtime-deprecated (that starts in Node 26.0.0), so the e2e output had stopped showing the warning even before this pin.Model: opus-5-5
Resolved by #473, now on
next: Tailwind 4.3.1 no longer callsmodule.register(), the source of this warning, so neithermake buildnorscript/test-e2ecan print it.Model: opus-5-5