Commit f4be99d
Drop isInteractive and hasDOM; remove FastBoot codepaths
Since we always have a DOM and modifiers always run, the entire
isInteractive/hasDOM split is dead weight. Tear it out.
Glimmer-vm:
- @glimmer/runtime/lib/environment.ts: drop the isInteractive field on
EnvironmentImpl and EnvironmentDelegate. scheduleInstallModifier and
scheduleUpdateModifier always schedule.
- @glimmer/runtime/lib/compiled/opcodes/dom.ts: drop the early-returns
in VM_MODIFIER_OP and VM_DYNAMIC_MODIFIER_OP. Modifiers always run.
- @glimmer/interfaces: drop isInteractive from the Environment interface.
Ember component layer:
- curly + root component managers: lifecycle hooks (willRender,
willInsertElement, didInsertElement, willUpdate, didUpdate, didRender,
willDestroyElement, willClearRender) always fire.
- ComponentStateBucket no longer carries isInteractive.
- BootEnvironment loses both fields.
Renderer:
- BaseRenderer / Renderer / renderComponent no longer take isInteractive
or hasDOM env config.
- Renderer.getElement always returns the element (no more "not allowed in
non-interactive environments" throw).
- Renderer.remove always triggers didDestroyElement.
- Drop the _isInteractive getter and the debug.isInteractive field.
- EmberEnvironmentDelegate has no constructor args.
Application/engine boot:
- BootOptions drops isInteractive and isBrowser.
- _BootOptions no longer threads isInteractive through isBrowser /
shouldRender / option override; just _renderMode, location,
shouldRender, document, rootElement.
- ApplicationInstance always calls setupEventDispatcher.
- EngineInstance's singleton list always includes event_dispatcher:main.
- EventDispatcher.setup drops the "should never be setup in fastboot"
assertion.
- @ember/-internals/views/lib/system/event_dispatcher.ts no longer
imports from @ember/-internals/glimmer.
Component:
- The DEBUG tagless event-handler check no longer needs renderer._isInteractive.
- _dispatcher always looks up event_dispatcher:main.
- appendTo always uses document.querySelector for string selectors;
the "no DOM" branch is gone. matches() drops its fastboot guard.
@ember/-internals/browser-environment package: deleted entirely.
- isChrome/isFirefox were the only remaining consumers (in @ember/debug);
inlined there with `typeof window !== 'undefined'` guards.
- self/location/history/window references were the only hasDOM users.
- Removed from @ember/-internals package exports, root package.json
embedded-package map, types/stable manifest, and lib/index.js
implicit-modules list.
- Test files that imported `window`/`isChrome`/`isFirefox` from
browser-environment now use globals directly.
<Input> lazily initializes its INPUT_ELEMENT probe (instead of at module
-load time) so node-side build tooling that imports the package without
a DOM in scope still loads. The DOM is required at render time, which
is the contract.
Tests:
- Drop the non-interactive variants of the lifecycle, custom-modifier,
and on-modifier integration tests. Drop the lifecycle test's
isInteractive/nonInteractive split — assertHooks always uses the
interactive expectations.
- Drop the visit_test that checked event_dispatcher:main wasn't created
for isInteractive: false.
- OutletView render-queue test now appends to a real DOM element rather
than a CSS-selector string.
- type-tests for BootOptions no longer mention isBrowser.
Smoke tests:
- Delete app-boot, component-rendering, fastboot-sandbox, and visit
tests in node-template, plus their setup-app/setup-component/
build-owner/assert-html-matches helpers. They were FastBoot-only —
every one of them used SimpleDOM as a stand-in for document.
tests/docs/expected.js: drop the isBrowser, isInteractive, and matches
entries (the public surfaces that have been removed).
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>1 parent 8c2698d commit f4be99d
45 files changed
Lines changed: 161 additions & 1767 deletions
File tree
- lib
- packages
- @ember
- -internals
- browser-environment
- lib
- glimmer
- lib
- component-managers
- components
- utils
- views
- tests
- integration
- components
- modifiers
- unit
- runtime/tests/core
- utils/tests
- views/lib/system
- application
- tests
- type-tests
- debug
- engine
- type-tests
- utils/tests
- @glimmer-workspace/integration-tests
- lib
- test
- @glimmer
- interfaces/lib/runtime
- runtime/lib
- compiled/opcodes
- internal-test-helpers/lib/test-cases
- smoke-tests/node-template/tests/node
- helpers
- tests/docs
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
31 | 30 | | |
32 | 31 | | |
33 | 32 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
174 | | - | |
175 | 174 | | |
176 | 175 | | |
177 | 176 | | |
| |||
This file was deleted.
Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 19 additions & 34 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
251 | 251 | | |
252 | 252 | | |
253 | 253 | | |
254 | | - | |
| 254 | + | |
255 | 255 | | |
256 | 256 | | |
257 | 257 | | |
| |||
313 | 313 | | |
314 | 314 | | |
315 | 315 | | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
| 316 | + | |
320 | 317 | | |
321 | | - | |
322 | | - | |
323 | | - | |
324 | | - | |
| 318 | + | |
325 | 319 | | |
326 | 320 | | |
327 | 321 | | |
| |||
331 | 325 | | |
332 | 326 | | |
333 | 327 | | |
334 | | - | |
335 | | - | |
| 328 | + | |
336 | 329 | | |
337 | 330 | | |
338 | 331 | | |
| |||
343 | 336 | | |
344 | 337 | | |
345 | 338 | | |
346 | | - | |
| 339 | + | |
347 | 340 | | |
348 | 341 | | |
349 | 342 | | |
| |||
367 | 360 | | |
368 | 361 | | |
369 | 362 | | |
370 | | - | |
| 363 | + | |
371 | 364 | | |
372 | 365 | | |
373 | 366 | | |
| |||
407 | 400 | | |
408 | 401 | | |
409 | 402 | | |
410 | | - | |
411 | | - | |
412 | | - | |
413 | | - | |
414 | | - | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
415 | 406 | | |
416 | 407 | | |
417 | 408 | | |
418 | 409 | | |
419 | 410 | | |
420 | 411 | | |
421 | 412 | | |
422 | | - | |
423 | | - | |
424 | | - | |
425 | | - | |
426 | | - | |
427 | | - | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
428 | 417 | | |
429 | 418 | | |
430 | 419 | | |
431 | | - | |
| 420 | + | |
432 | 421 | | |
433 | 422 | | |
434 | 423 | | |
| |||
449 | 438 | | |
450 | 439 | | |
451 | 440 | | |
452 | | - | |
453 | | - | |
454 | | - | |
455 | | - | |
| 441 | + | |
| 442 | + | |
456 | 443 | | |
457 | 444 | | |
458 | 445 | | |
| |||
464 | 451 | | |
465 | 452 | | |
466 | 453 | | |
467 | | - | |
468 | | - | |
469 | | - | |
470 | | - | |
471 | | - | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
472 | 457 | | |
473 | 458 | | |
474 | 459 | | |
| |||
Lines changed: 4 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | | - | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
| 49 | + | |
53 | 50 | | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
| 51 | + | |
58 | 52 | | |
59 | 53 | | |
60 | 54 | | |
| |||
66 | 60 | | |
67 | 61 | | |
68 | 62 | | |
69 | | - | |
70 | | - | |
| 63 | + | |
71 | 64 | | |
72 | 65 | | |
73 | 66 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | | - | |
| 23 | + | |
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | 37 | | |
39 | 38 | | |
40 | 39 | | |
41 | 40 | | |
42 | 41 | | |
43 | 42 | | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | 43 | | |
56 | | - | |
57 | | - | |
| 44 | + | |
58 | 45 | | |
59 | 46 | | |
60 | 47 | | |
| |||
939 | 926 | | |
940 | 927 | | |
941 | 928 | | |
942 | | - | |
| 929 | + | |
943 | 930 | | |
944 | 931 | | |
945 | 932 | | |
| |||
997 | 984 | | |
998 | 985 | | |
999 | 986 | | |
1000 | | - | |
1001 | | - | |
1002 | | - | |
1003 | | - | |
1004 | | - | |
1005 | | - | |
1006 | | - | |
1007 | | - | |
1008 | | - | |
1009 | | - | |
1010 | | - | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
1011 | 990 | | |
1012 | 991 | | |
1013 | 992 | | |
| |||
1445 | 1424 | | |
1446 | 1425 | | |
1447 | 1426 | | |
1448 | | - | |
1449 | | - | |
1450 | | - | |
1451 | | - | |
1452 | | - | |
1453 | | - | |
1454 | | - | |
| 1427 | + | |
| 1428 | + | |
| 1429 | + | |
| 1430 | + | |
1455 | 1431 | | |
1456 | | - | |
| 1432 | + | |
1457 | 1433 | | |
1458 | | - | |
1459 | | - | |
1460 | | - | |
1461 | | - | |
1462 | | - | |
1463 | | - | |
1464 | | - | |
1465 | | - | |
1466 | | - | |
1467 | | - | |
1468 | | - | |
1469 | | - | |
| 1434 | + | |
| 1435 | + | |
| 1436 | + | |
| 1437 | + | |
| 1438 | + | |
| 1439 | + | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
1470 | 1443 | | |
1471 | 1444 | | |
1472 | | - | |
1473 | | - | |
1474 | | - | |
1475 | | - | |
1476 | | - | |
| 1445 | + | |
| 1446 | + | |
1477 | 1447 | | |
1478 | | - | |
1479 | | - | |
1480 | | - | |
1481 | | - | |
1482 | | - | |
1483 | | - | |
1484 | | - | |
1485 | | - | |
1486 | | - | |
| 1448 | + | |
| 1449 | + | |
| 1450 | + | |
1487 | 1451 | | |
1488 | 1452 | | |
1489 | 1453 | | |
| |||
0 commit comments