Skip to content

Route manager exploration - not to be merged here#1

Open
evoactivity wants to merge 15 commits intomainfrom
route-manager-exploration
Open

Route manager exploration - not to be merged here#1
evoactivity wants to merge 15 commits intomainfrom
route-manager-exploration

Conversation

@evoactivity
Copy link
Copy Markdown
Collaborator

@evoactivity evoactivity commented Apr 9, 2026

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
Copy link
Copy Markdown

github-actions Bot commented Apr 9, 2026

📊 Package size report   0.6%↑

File Before (Size / Brotli) After (Size / Brotli)
Total (Includes all files) 5.3 MB / 1.3 MB 0.6%↑5.4 MB / 0.8%↑1.3 MB
Tarball size 1.2 MB 0.5%↑1.2 MB
Show files (39 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 / 18%↑369 B
dist/dev/packages/@ember/-internals/routing/route-managers/classic-route-manager.js 1.2 kB / 357 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 / 7%↑389 B
dist/dev/packages/@ember/routing/index.js 675 B / 219 B 40%↑945 B / 32%↑288 B
dist/dev/packages/@ember/routing/route.js 60.1 kB / 13.3 kB -5.94%↓56.6 kB / -7.62%↓12.3 kB
dist/dev/packages/@ember/routing/router.js 52.8 kB / 11.9 kB 5%↑55.5 kB / 5%↑12.5 kB
dist/dev/packages/router_js/index.js 55.5 kB / 11.8 kB 3%↑57.1 kB / 4%↑12.3 kB
dist/dev/packages/shared-chunks/api-BqXkkT0p.js 10.1 kB / 2.3 kB
dist/dev/packages/shared-chunks/classic-route-manager-k4IgJaZx.js 13.2 kB / 3.8 kB
dist/dev/packages/shared-chunks/template-QSXZM7JM.js 1.1 kB / 403 B 941%↑11.1 kB / 497%↑2.4 kB
dist/dev/packages/shared-chunks/unrecognized-url-error-DI15Gq30.js 17.6 kB / 4.4 kB -0.59%↓17.5 kB / -0.56%↓4.4 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 998 B / 294 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 / 35%↑270 B
dist/prod/packages/@ember/routing/route.js 54.6 kB / 12.1 kB -4%↓52.5 kB / -5.31%↓11.4 kB
dist/prod/packages/@ember/routing/router.js 44.8 kB / 10.4 kB 4%↑46.8 kB / 4%↑10.8 kB
dist/prod/packages/router_js/index.js 55.5 kB / 11.8 kB 3%↑57.1 kB / 4%↑12.3 kB
dist/prod/packages/shared-chunks/api-Co-k4HVs.js 6 kB / 1.5 kB
dist/prod/packages/shared-chunks/classic-route-manager-CsVRGVBn.js 12 kB / 3.4 kB
dist/prod/packages/shared-chunks/index-Cc8WmrB-.js 169.7 kB / 38 kB -2.83%↓164.9 kB / -2.84%↓36.9 kB
dist/prod/packages/shared-chunks/template-CjMTRYwU.js 497 B / 205 B 1,200%↑6.5 kB / 656%↑1.5 kB
dist/prod/packages/shared-chunks/unrecognized-url-error-cKh2TJwK.js 17.1 kB / 4.4 kB -0.61%↓17 kB / -0.69%↓4.3 kB
package.json 22.4 kB / 3.4 kB 2%↑22.8 kB / 1%↑3.4 kB
types/stable/@ember/-internals/glimmer/lib/utils/outlet.d.ts 1.6 kB / 502 B -7.22%↓1.5 kB / -0.2%↓501 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 2.6 kB / 672 B
types/stable/@ember/-internals/routing/route-managers/route-manager.d.ts 2.6 kB / 633 B
types/stable/@ember/-internals/routing/route-managers/utils.d.ts 685 B / 258 B
types/stable/@ember/routing/index.d.ts 91 B / 86 B 604%↑641 B / 115%↑185 B
types/stable/@ember/routing/route.d.ts 43.1 kB / 7.9 kB -1.04%↓42.7 kB / -1.25%↓7.8 kB
types/stable/@ember/routing/router.d.ts 18.6 kB / 4.1 kB 2%↑19 kB / 2%↑4.1 kB
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 10%↑5.9 kB / 18%↑1.4 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
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