Description
Current Behavior
SUBJECT: MFE remove remote (nx-console) NX forgets to dismantle the lazy loaded route config
upon removal of remotes
this code should have been deleted but was left behind inside the HOST preventing nx-console from deleting the HOST
HOST ROUTER
export const appRoutes: Route[] = [
{
path: 'employee',
loadChildren: () =>
loadRemote<typeof import('employee/Routes')>(
'employee/Routes'
).then((m) => m!.remoteRoutes),
},
{
path: 'login',
loadChildren: () =>
loadRemote<typeof import('login/Routes')>('login/Routes').then(
(m) => m!.remoteRoutes
),
},
Expected Behavior
route config should be deleted upon removal of a remote so the host can gracefully be removed
GitHub Repo
https://github.com/nhhockeyplayer/meanstacknh
Steps to Reproduce
create host
nx g @nx/angular:host --directory=apps/host-security --name=host-security --backendProject=gqlBff --dynamic=true --e2eTestRunner=cypress --inlineStyle=true --inlineTemplate=true --skipTests=true --style=scss --tags=host --no-interactive
create remote
nx g @nx/angular:remote --directory=apps/login --host=host-security --name=login --backendProject=gqlbff --skipTests=true --style=scss --tags=remote --viewEncapsulation=Emulated --no-interactive
create remote
nx g @nx/angular:remote --directory=apps/employee --host=host-security --name=employee --backendProject=gqlbff --skipTests=true --style=scss --tags=remote --viewEncapsulation=Emulated --no-interactive
nx g @nx/workspace:remove login
nx g @nx/workspace:remove employee
Nx Report
nx report
NX Report complete - copy this into the issue template
Node : 22.9.0
OS : darwin-x64
Native Target : x86_64-macos
npm : 10.9.0
nx (global) : 20.0.0
nx : 20.1.2
@nx/js : 20.1.2
@nx/jest : 20.1.2
@nx/eslint : 20.1.2
@nx/workspace : 20.1.2
@nx/angular : 20.1.2
@nx/cypress : 20.1.2
@nx/devkit : 20.1.2
@nx/esbuild : 20.1.2
@nx/eslint-plugin : 20.1.2
@nx/express : 20.1.2
@nx/nest : 20.1.2
@nx/node : 20.1.2
@nx/playwright : 20.1.2
@nx/vite : 20.1.2
@nx/web : 20.1.2
@nx/webpack : 20.1.2
nx-cloud : 19.1.0
typescript : 5.5.4
---------------------------------------
Registered Plugins:
@nx/cypress/plugin
@nx/eslint/plugin
@nx/playwright/plugin
---------------------------------------
Community plugins:
@compodoc/compodoc : 1.1.26
@fortawesome/angular-fontawesome : 0.15.0
@ionic/angular : 6.7.5
@jsverse/transloco : 7.5.0
@ngrx/component : 18.0.2
@ngrx/component-store : 18.0.2
@ngrx/effects : 18.0.2
@ngrx/entity : 18.0.2
@ngrx/operators : 18.0.2
@ngrx/router-store : 18.0.2
@ngrx/schematics : 18.0.2
@ngrx/store : 18.0.2
@ngrx/store-devtools : 18.0.2
apollo-angular : 7.2.1
Failure Logs
nx g @nx/workspace:remove employee-e2e
NX Generating @nx/workspace:remove
DELETE apps/employee-e2e/.eslintrc.json
DELETE apps/employee-e2e/playwright.config.ts
DELETE apps/employee-e2e/project.json
DELETE apps/employee-e2e/src/example.spec.ts
DELETE apps/employee-e2e/src
DELETE apps/employee-e2e/tsconfig.json
DELETE apps/employee-e2e
meanstack02@admin meanstacknh % nx g @nx/workspace:remove employee
NX Generating @nx/workspace:remove
NX employee is still a dependency of the following projects:
host-security
Error: employee is still a dependency of the following projects:
host-security
at checkDependencies (/Users/meanstack02/meanstacknh/node_modules/@nx/workspace/src/generators/remove/lib/check-dependencies.js:18:15)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async removeGenerator (/Users/meanstack02/meanstacknh/node_modules/@nx/workspace/src/generators/remove/remove.js:15:5)
at async /Users/meanstack02/meanstacknh/node_modules/nx/src/command-line/generate/generate.js:240:26
at async handleErrors (/Users/meanstack02/meanstacknh/node_modules/nx/src/utils/handle-errors.js:8:24)
at async Object.handler (/Users/meanstack02/meanstacknh/node_modules/nx/src/command-line/generate/command-object.js:13:22)
meanstack02@admin meanstacknh % nx g @nx/workspace:remove login
Package Manager Version
npm --version 10.9.0
Operating System
- macOS
- Linux
- Windows
- Other (Please specify)
Additional Information
please request access to repo if you need access
Activity