Skip to content

Route manager exploration - not to be merged here#1

Open
evoactivity wants to merge 21 commits into
mainfrom
route-manager-exploration
Open

Route manager exploration - not to be merged here#1
evoactivity wants to merge 21 commits into
mainfrom
route-manager-exploration

Conversation

@evoactivity

@evoactivity evoactivity commented Apr 9, 2026

Copy link
Copy Markdown
Collaborator

Opened just for ease of sharing and reviewing

Right now this is very much in the make it work stage, so linting and types are failing the checks. Will need to be cleaned up but not at this stage.

…ager

- Exclude router_js unit tests from the main test suite via import.meta.glob
  negation (they test the now-deleted classic paths directly)
- Drop resolveViaClassicHooks, runBeforeModelHook, runAfterModelHook from
  route-info.ts; resolve() now calls resolveViaManager unconditionally
- Remove the no-manager else branches in setupContexts (exit and reset loops)
  in router_js/router.ts
- Remove the _routeEnteredOrUpdated classic inner function and its fallback
  call sites in routeEnteredOrUpdated
- Drop the else branch in getRoute that called route._setRouteName directly
  (ClassicRouteManager.createRoute() handles that now)
- Simplify _setOutlets to build RenderState from manager/bucket unconditionally,
  removing the getRenderState() fallback and the conditional break
- Fix _getModel to delegate to routeInfo.getModel() for polymorphic dispatch
  (handles both URL-param and model-object transitions correctly)
- Guard _setOutlets call on shouldRender !== false; add LOG_VIEW_LOOKUPS logging
@github-actions

github-actions Bot commented Apr 9, 2026

Copy link
Copy Markdown

📊 Package size report   2%↑

File Before (Size / Brotli) After (Size / Brotli)
Total (Includes all files) 5.3 MB / 1.3 MB 2%↑5.4 MB / 2%↑1.3 MB
Tarball size 1.2 MB 1%↑1.2 MB
Show files (41 files)
File Before (Size / Brotli) After (Size / Brotli)
dist/dev/packages/@ember/-internals/container/index.js 25.3 kB / 5.2 kB 3%↑26.2 kB / 5%↑5.4 kB
dist/dev/packages/@ember/-internals/routing/index.js 1 kB / 314 B 24%↑1.3 kB / 17%↑368 B
dist/dev/packages/@ember/-internals/routing/route-managers/classic-route-manager.js 1.2 kB / 343 B
dist/dev/packages/@ember/-internals/routing/route-managers/route-manager.js 508 B / 228 B
dist/dev/packages/@ember/-internals/routing/route-managers/utils.js 1.6 kB / 585 B
dist/dev/packages/@ember/routing/-internals.js 1.2 kB / 363 B 16%↑1.4 kB / 9%↑396 B
dist/dev/packages/@ember/routing/index.js 675 B / 219 B 40%↑945 B / 30%↑285 B
dist/dev/packages/@ember/routing/route.js 60.1 kB / 13.3 kB -4.51%↓57.4 kB / -6.55%↓12.5 kB
dist/dev/packages/@ember/routing/router.js 52.8 kB / 11.9 kB 27%↑67.1 kB / 29%↑15.4 kB
dist/dev/packages/router_js/index.js 55.5 kB / 11.8 kB 5%↑58.4 kB / 10%↑13 kB
dist/dev/packages/shared-chunks/api-BqXkkT0p.js 10.1 kB / 2.3 kB
dist/dev/packages/shared-chunks/classic-route-manager-o4ru3QOM.js 21 kB / 5.7 kB
dist/dev/packages/shared-chunks/index-BGP1rw3B.js 62.7 kB / 12.5 kB 209%↑193.5 kB / 239%↑42.4 kB
dist/dev/packages/shared-chunks/template-_70j7REW.js 1.1 kB / 403 B 941%↑11.1 kB / 497%↑2.4 kB
dist/dev/packages/shared-chunks/unrecognized-url-error-Dt0UMkrm.js 17.6 kB / 4.4 kB 2%↑17.9 kB / 4%↑4.6 kB
dist/prod/packages/@ember/-internals/container/index.js 20.5 kB / 4 kB 4%↑21.2 kB / 5%↑4.2 kB
dist/prod/packages/@ember/-internals/routing/index.js 807 B / 256 B 31%↑1.1 kB / 22%↑313 B
dist/prod/packages/@ember/-internals/routing/route-managers/classic-route-manager.js 883 B / 275 B
dist/prod/packages/@ember/-internals/routing/route-managers/route-manager.js 508 B / 228 B
dist/prod/packages/@ember/-internals/routing/route-managers/utils.js 954 B / 375 B
dist/prod/packages/@ember/routing/index.js 582 B / 200 B 46%↑852 B / 34%↑267 B
dist/prod/packages/@ember/routing/route.js 54.6 kB / 12.1 kB -2.42%↓53.3 kB / -4.19%↓11.6 kB
dist/prod/packages/@ember/routing/router.js 44.8 kB / 10.4 kB 30%↑58.3 kB / 32%↑13.7 kB
dist/prod/packages/router_js/index.js 55.5 kB / 11.8 kB 5%↑58.4 kB / 10%↑13 kB
dist/prod/packages/shared-chunks/api-Co-k4HVs.js 6 kB / 1.5 kB
dist/prod/packages/shared-chunks/classic-route-manager-BQaFYuj4.js 19.6 kB / 5.3 kB
dist/prod/packages/shared-chunks/index-Bis7E4Up.js 169.7 kB / 38 kB -64.7%↓59.9 kB / -68.2%↓12.1 kB
dist/prod/packages/shared-chunks/template-BTOapQdQ.js 497 B / 205 B 1,200%↑6.5 kB / 656%↑1.6 kB
dist/prod/packages/shared-chunks/unrecognized-url-error-HJo-Rzx5.js 17.1 kB / 4.4 kB 2%↑17.5 kB / 4%↑4.5 kB
package.json 22.4 kB / 3.4 kB 2%↑22.8 kB / 1%↑3.4 kB
types/stable/@ember/-internals/glimmer/index.d.ts 14.1 kB / 3.1 kB 0.7%↑14.2 kB / 0.8%↑3.1 kB
types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts 2.5 kB / 647 B 5%↑2.6 kB / 5%↑682 B
types/stable/@ember/-internals/glimmer/lib/utils/outlet.d.ts 1.6 kB / 502 B 65%↑2.7 kB / 65%↑829 B
types/stable/@ember/-internals/routing/index.d.ts 175 B / 113 B 399%↑873 B / 97%↑223 B
types/stable/@ember/-internals/routing/route-managers/classic-route-manager.d.ts 3.1 kB / 744 B
types/stable/@ember/-internals/routing/route-managers/route-manager.d.ts 3.6 kB / 949 B
types/stable/@ember/-internals/routing/route-managers/utils.d.ts 681 B / 236 B
types/stable/@ember/routing/index.d.ts 91 B / 86 B 604%↑641 B / 115%↑185 B
types/stable/index.d.ts 42.6 kB / 4 kB 0.6%↑42.8 kB / 0.5%↑4 kB
types/stable/router_js/lib/route-info.d.ts 5.4 kB / 1.2 kB 16%↑6.2 kB / 24%↑1.4 kB
types/stable/router_js/lib/router.d.ts 10.3 kB / 2.4 kB -12.3%↓9.1 kB / -13.3%↓2.1 kB

🤖 This report was automatically generated by pkg-size-action

This make outlets and renderer unaware of controllers and models. The Route Manager now curries the invokable with @controller and @model arguments. Model is @Tracked so it rerenders when it changes.
@evoactivity evoactivity force-pushed the route-manager-exploration branch from 6d023be to 188c4fe Compare April 20, 2026 12:42
- curries route wrapper args at outlet level
* main: (135 commits)
  Bump follow-redirects from 1.15.11 to 1.16.0
  Set pnpm version
  Update pnpm/action-setup action to v6.0.6
  Update peter-evans/create-pull-request action to v8.1.1
  Post-release version bump
  Add v7.1.0-beta.1 to CHANGELOG for `ember-source`
  Add v7.0.0 to CHANGELOG for `ember-source`
  Do not use any caches on publish step. Add deploy environment to require approval by select people before publish to npm.
  Remove private annotations from helper methods
  Try new creds
  Update browserstack infrastructure
  Update pnpm/action-setup action to v6
  Update dependency decorator-transforms to v2.3.2
  Update dependency babel-plugin-debug-macros to v1.0.2
  Update dependency rollup to v4.60.2
  Update dependency qunit-dom to v3.5.1
  Update tree-shaken info
  A couple more
  Tell rollup to cleanup the dev/prod spit from @glimmer/debug
  Update pnpm to v10.33.2
  ...
@github-actions

Copy link
Copy Markdown

📊 Size report

Tarball size1.2 MB1.2 MB

dist/dev   2%↑

File Before (Size / Brotli) After (Size / Brotli)
./packages/@ember/-internals/routing/index.js 596 B / 203 B 42%↑846 B / 31%↑266 B
./packages/@ember/-internals/routing/route-managers/classic-route-manager.js 1.5 kB / 416 B
./packages/@ember/-internals/routing/route-managers/route-manager.js 508 B / 228 B
./packages/@ember/-internals/routing/route-managers/utils.js 1.6 kB / 585 B
./packages/@ember/routing/-internals.js 733 B / 248 B 25%↑917 B / 14%↑282 B
./packages/@ember/routing/index.js 19.3 kB / 4.6 kB 1%↑19.6 kB / 2%↑4.7 kB
./packages/@ember/routing/route.js 59.6 kB / 13.2 kB -4.55%↓56.9 kB / -6.59%↓12.4 kB
./packages/@ember/routing/router.js 52 kB / 11.7 kB 28%↑66.3 kB / 30%↑15.2 kB
./packages/router_js/index.js 55.5 kB / 11.8 kB 5%↑58.4 kB / 10%↑13 kB
./packages/shared-chunks/classic-route-manager-DG4CV3Oy.js 20.9 kB / 5.7 kB
./packages/shared-chunks/container-{hash}.js 13 kB / 3 kB 8%↑14 kB / 11%↑3.4 kB
./packages/shared-chunks/curly-{hash}.js 21.5 kB / 5.1 kB -0.84%↓21.4 kB / -0.93%↓5 kB
./packages/shared-chunks/curried-value-D6t31dOF.js 2 kB / 640 B
./packages/shared-chunks/guid-{hash}.js 3.2 kB / 1.1 kB 51%↑4.9 kB / 50%↑1.7 kB
./packages/shared-chunks/index-{hash}.js 78.5 kB / 19.1 kB -3.25%↓76 kB / -3.07%↓18.5 kB
./packages/shared-chunks/intern-zquhAEIg.js 1.7 kB / 679 B
./packages/shared-chunks/unrecognized-{hash}.js 17.6 kB / 4.4 kB 2%↑17.9 kB / 4%↑4.6 kB
./packages/shared-chunks/untouchable-{hash}.js 62.6 kB / 12.2 kB -2.98%↓60.7 kB / -3.28%↓11.8 kB
./packages/shared-chunks/unwrap-template-Cui5CH7t.js 260 B / 167 B
Total (Includes all files) 2 MB / 478.1 kB 2%↑2 MB / 2%↑489.1 kB

dist/prod   2%↑

File Before (Size / Brotli) After (Size / Brotli)
./packages/@ember/-internals/routing/index.js 565 B / 197 B 44%↑815 B / 34%↑263 B
./packages/@ember/-internals/routing/route-managers/classic-route-manager.js 1 kB / 295 B
./packages/@ember/-internals/routing/route-managers/route-manager.js 508 B / 228 B
./packages/@ember/-internals/routing/route-managers/utils.js 954 B / 375 B
./packages/@ember/routing/index.js 15.5 kB / 3.8 kB 2%↑15.8 kB / 2%↑3.9 kB
./packages/@ember/routing/route.js 54.1 kB / 12 kB -2.45%↓52.8 kB / -4.03%↓11.5 kB
./packages/@ember/routing/router.js 44.1 kB / 10.2 kB 31%↑57.6 kB / 33%↑13.6 kB
./packages/router_js/index.js 55.5 kB / 11.8 kB 5%↑58.4 kB / 10%↑13 kB
./packages/shared-chunks/classic-route-manager-SsS9_sTK.js 19.4 kB / 5.3 kB
./packages/shared-chunks/container-{hash}.js 9.8 kB / 2.2 kB 8%↑10.6 kB / 11%↑2.4 kB
./packages/shared-chunks/curly-{hash}.js 17.2 kB / 4.3 kB -1.04%↓17 kB / -1.39%↓4.3 kB
./packages/shared-chunks/curried-value-D6t31dOF.js 2 kB / 640 B
./packages/shared-chunks/debug-{hash}.js 58.4 kB / 11.3 kB -3.19%↓56.5 kB / -3.48%↓10.9 kB
./packages/shared-chunks/guid-{hash}.js 3.2 kB / 1.1 kB 51%↑4.9 kB / 50%↑1.7 kB
./packages/shared-chunks/index-{hash}.js 66.5 kB / 16.3 kB -2.86%↓64.6 kB / -2.2%↓15.9 kB
./packages/shared-chunks/intern-zquhAEIg.js 1.7 kB / 679 B
./packages/shared-chunks/unrecognized-{hash}.js 17.1 kB / 4.4 kB 2%↑17.5 kB / 4%↑4.5 kB
./packages/shared-chunks/unwrap-template-Cui5CH7t.js 260 B / 167 B
Total (Includes all files) 1.8 MB / 436 kB 2%↑1.9 MB / 2%↑446.7 kB

smoke-tests/v2-app-hello-world-template/dist   3%↑

File Before (Size / Brotli) After (Size / Brotli)
./assets/main-{hash}.js 234.7 kB / 64.2 kB 3%↑240.5 kB / 2%↑65.8 kB
Total (Includes all files) 235 kB / 64.4 kB 3%↑240.9 kB / 2%↑65.9 kB

🤖 This report was automatically generated by wyvox/pkg-size

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant