nestjs/nest dad9ba3b..b3f85e9c
base and head as given
- Application contexts now expose a module identifier algorithm setting.
- Module compilation now depends on a dedicated opaque-key factory component.
- Three opaque-key factory exports replace the former token-factory export.
- files changed
- 11
- in a component
- 8
- lines in components
- 312
- components
- 4
- public routes changed
- 0
- schema statements
- 0
- new dependencies
- 0
- excluded by role
- 3
Configurable module identifiers
Added- Before
- One token factory chose identifiers
- After
- Identifier strategy is selectable
Applications can choose deep-hash or reference-based module identifiers through context options. Reference-based identifiers are retained on the original static, dynamic, or forward-reference definition, while deep hashing remains available.
In favour
- In favour: Avoids serializing dynamic metadata by default
- In favour: Preserves deep-hash behavior as an explicit option
Against
- Against: Public context configuration now controls module identity
Inspect 9 source files behind this explanation
- packages/core/injector/compiler.ts
- packages/common/interfaces/nest-application-context-options.interface.ts
- packages/core/nest-application-context.ts
- packages/core/injector/opaque-key-factory/by-reference-module-opaque-key-factory.ts
- packages/core/injector/module-token-factory.ts
- packages/core/injector/opaque-key-factory/deep-hashed-module-opaque-key-factory.ts
- packages/core/injector/container.ts
- packages/core/injector/opaque-key-factory/interfaces/module-opaque-key-factory.interface.ts
- packages/core/injector/module.ts
2 new dependencies between components — Core Injector → Opaque Key Factory · Opaque Key Factory → Common Interfaces
What else could behave differently
158 components · 577 filesThese components import changed code, directly or through other files. A traced dependency is a place to review, not a confirmed runtime failure. Some paths stopped at heavily imported files; inspect those consumers separately.
Reached 3
| Component | Symbol | Cited at | Files | Reached by |
|---|---|---|---|---|
| Core Injectorpackages/core/injector/ | Signature changed NestApplicationContextOptions1 of 6 changed symbols reaching it | packages/common/interfaces/nest-application-context-options.interface.ts:6-56 | 13 | 6 direct · 5 at two steps · 2 at three stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
| packages/common/ | Signature changed NestApplicationContextOptions | packages/common/interfaces/nest-application-context-options.interface.ts:6-56 | 1 | none direct · 1 at two stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
| Common Interfacespackages/common/interfaces/ | Signature changed NestApplicationContextOptions | packages/common/interfaces/nest-application-context-options.interface.ts:6-56 | 3 | 1 direct · 1 at two steps · 1 at three stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
Held back 118
| Component | Files | Reached by | Resolution |
|---|---|---|---|
| packages/common/decorators/core/ | 7 | none direct · 6 at three steps · 1 at four steps | precise |
| packages/common/utils/ | 2 | none direct · 2 at three steps | precise |
| packages/common/decorators/http/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/common/interfaces/features/ | 3 | none direct · 1 at three steps · 2 at four steps | precise |
| packages/platform-express/ | 1 | none direct · 1 at four steps | precise |
| packages/microservices/interfaces/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/microservices/client/ | 10 | none direct · 1 at three steps · 9 at four steps | precise |
| packages/microservices/decorators/ | 5 | none direct · 2 at three steps · 3 at four steps | precise |
| packages/microservices/exceptions/ | 3 | none direct · 1 at three steps · 2 at four steps | precise |
| packages/microservices/helpers/ | 2 | none direct · 2 at four steps | precise |
| packages/core/services/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/common/pipes/ | 8 | none direct · 3 at three steps · 5 at four steps | precise |
| packages/websockets/decorators/ | 3 | none direct · 1 at three steps · 2 at four steps | precise |
| packages/common/module-utils/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/core/interfaces/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/microservices/module/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/platform-express/interfaces/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/microservices/utils/ | 1 | none direct · 1 at three steps | precise |
| packages/common/serializer/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/websockets/exceptions/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/platform-express/multer/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/platform-fastify/interfaces/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/websockets/utils/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/core/router/request/ | 1 | none direct · 1 at three steps | precise |
| packages/microservices/server/ | 10 | none direct · 1 at three steps · 9 at four steps | precise |
| packages/platform-fastify/decorators/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/platform-fastify/adapters/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/platform-socket.io/adapters/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/platform-ws/adapters/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| integration/websockets/src/ | 6 | none direct · 5 at three steps · 1 at four steps | precise |
| integration/inspector/src/ | 3 | none direct · 3 at three steps | precise |
| integration/nest-application/listen/ | 3 | none direct · 3 at three steps | precise |
| integration/send-files/src/ | 3 | none direct · 3 at three steps | precise |
| integration/auto-mock/src/ | 2 | none direct · 2 at three steps | precise |
| integration/cors/src/ | 2 | none direct · 2 at three steps | precise |
| integration/discovery/src/ | 2 | none direct · 2 at three steps | precise |
| integration/module-utils/src/ | 2 | none direct · 2 at three steps | precise |
| integration/hello-world/src/ | 1 | none direct · 1 at three steps | precise |
| integration/injector/src/ | 1 | none direct · 1 at three steps | precise |
| integration/repl/src/ | 1 | none direct · 1 at three steps | precise |
| packages/core/router/interfaces/ | 5 | none direct · 4 at three steps · 1 at four steps | precise |
| packages/core/injector/inquirer/ | 1 | none direct · 1 at three steps | precise |
| packages/core/inspector/interfaces/ | 6 | none direct · 6 at three steps | precise |
| packages/core/helpers/interfaces/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| packages/core/injector/helpers/ | 3 | none direct · 3 at three steps | precise |
| packages/microservices/module/interfaces/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| integration/inspector/src/common/ | 5 | none direct · 5 at three steps | precise |
| integration/inspector/src/cats/ | 3 | none direct · 3 at three steps | precise |
| packages/core/router/utils/ | 3 | none direct · 1 at three steps · 2 at four steps | precise |
| integration/discovery/src/decorators/ | 2 | none direct · 2 at three steps | precise |
| packages/platform-express/multer/interfaces/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| integration/inspector/src/circular-hello/ | 7 | none direct · 7 at three steps | precise |
| integration/scopes/src/hello/ | 7 | none direct · 7 at three steps | precise |
| integration/inspector/src/request-chain/ | 6 | none direct · 6 at three steps | precise |
| packages/platform-express/multer/interceptors/ | 6 | none direct · 5 at three steps · 1 at four steps | precise |
| integration/graphql-schema-first/src/cats/ | 5 | none direct · 5 at three steps | precise |
| integration/hello-world/src/hello/ | 5 | none direct · 5 at three steps | precise |
| integration/hello-world/src/host-array/ | 5 | none direct · 5 at three steps | precise |
| integration/hello-world/src/host/ | 5 | none direct · 5 at three steps | precise |
| integration/inspector/src/circular-modules/ | 4 | none direct · 4 at three steps | precise |
| integration/inspector/src/durable/ | 4 | none direct · 4 at three steps | precise |
| integration/repl/src/users/ | 4 | none direct · 4 at three steps | precise |
| packages/common/module-utils/interfaces/ | 4 | none direct · 2 at three steps · 2 at four steps | precise |
| integration/discovery/src/my-webhook/ | 3 | none direct · 1 at three steps · 2 at four steps | precise |
| integration/graphql-code-first/src/common/ | 3 | none direct · 3 at three steps | precise |
| integration/graphql-code-first/src/recipes/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/chat/ | 3 | none direct · 2 at three steps · 1 at four steps | precise |
| integration/inspector/src/core/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/database/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/dogs/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/external-svc/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/properties/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/users/ | 3 | none direct · 3 at three steps | precise |
| integration/mongoose/src/cats/ | 3 | none direct · 3 at three steps | precise |
| integration/typeorm/src/photo/ | 3 | none direct · 3 at three steps | precise |
| sample/09-babel-example/src/cats/ | 3 | none direct · 3 at three steps | precise |
| integration/injector/src/exports/ | 2 | none direct · 2 at three steps | precise |
| packages/common/module-utils/utils/ | 2 | none direct · 1 at three steps · 1 at four steps | precise |
| packages/platform-express/adapters/utils/ | 1 | none direct · 1 at three steps | precise |
| packages/platform-express/multer/multer/ | 1 | none direct · 1 at three steps | precise |
| packages/common/pipes/file/ | 2 | none direct · 2 at four steps | precise |
| packages/common/serializer/decorators/ | 1 | none direct · 1 at four steps | precise |
| integration/scopes/src/circular-transient/ | 8 | none direct · 8 at three steps | precise |
| integration/scopes/src/transient/ | 8 | none direct · 8 at three steps | precise |
| integration/scopes/src/circular-hello/ | 7 | none direct · 7 at three steps | precise |
| integration/scopes/src/msvc/ | 7 | none direct · 7 at three steps | precise |
| integration/injector/src/scoped/ | 6 | none direct · 6 at three steps | precise |
| integration/scopes/src/inject-inquirer/ | 6 | none direct · 6 at three steps | precise |
| integration/scopes/src/request-chain/ | 6 | none direct · 6 at three steps | precise |
| integration/scopes/src/durable/ | 5 | none direct · 5 at three steps | precise |
| integration/injector/src/circular-modules/ | 4 | none direct · 4 at three steps | precise |
| integration/injector/src/circular-properties/ | 4 | none direct · 4 at three steps | precise |
| integration/injector/src/inject/ | 4 | none direct · 4 at three steps | precise |
| integration/injector/src/multiple-providers/ | 4 | none direct · 4 at three steps | precise |
| integration/nest-application/raw-body/src/ | 4 | none direct · 4 at three steps | precise |
| integration/injector/src/circular/ | 3 | none direct · 3 at three steps | precise |
| integration/injector/src/defaults/ | 3 | none direct · 3 at three steps | precise |
| integration/injector/src/properties/ | 3 | none direct · 3 at three steps | precise |
| integration/inspector/src/defaults/ | 3 | none direct · 3 at three steps | precise |
| integration/microservices/src/nats/ | 3 | none direct · 3 at three steps | precise |
| integration/nest-application/get-url/src/ | 3 | none direct · 3 at three steps | precise |
| integration/scopes/src/resolve-scoped/ | 3 | none direct · 3 at three steps | precise |
| integration/injector/src/circular-structure-dynamic-module/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/kafka-concurrent/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/kafka/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/mqtt/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/redis/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/rmq/ | 2 | none direct · 2 at three steps | precise |
| integration/microservices/src/tcp-tls/ | 2 | none direct · 2 at three steps | precise |
| integration/nest-application/app-locals/src/ | 2 | none direct · 2 at three steps | precise |
| integration/nest-application/global-prefix/src/ | 2 | none direct · 2 at three steps | precise |
| integration/nest-application/sse/src/ | 2 | none direct · 2 at three steps | precise |
| integration/hello-world/src/errors/ | 1 | none direct · 1 at three steps | precise |
| integration/injector/src/core-injectables/ | 1 | none direct · 1 at three steps | precise |
| integration/injector/src/dynamic/ | 1 | none direct · 1 at three steps | precise |
| integration/injector/src/self-injection/ | 1 | none direct · 1 at three steps | precise |
| integration/microservices/src/grpc-advanced/ | 1 | none direct · 1 at three steps | precise |
| integration/microservices/src/grpc/ | 1 | none direct · 1 at three steps | precise |
Ranked lower 37
| Component | Files | Reached by |
|---|---|---|
| packages/core/ | 6 | 4 direct · 1 at two steps · 1 at three steps |
| packages/microservices/ | 6 | 3 direct · 1 at two steps · 1 at three steps · 1 at four steps |
| packages/websockets/ | 4 | 2 direct · 2 at four steps |
| packages/core/helpers/ | 12 | 1 direct · 1 at two steps · 10 at three steps |
| packages/core/inspector/ | 6 | 1 direct · 3 at two steps · 2 at three steps |
| packages/core/exceptions/ | 7 | 2 direct · 3 at three steps · 2 at four steps |
| packages/core/pipes/ | 4 | 1 direct · 1 at two steps · 2 at three steps |
| packages/core/guards/ | 3 | 1 direct · 1 at two steps · 1 at three steps |
| packages/core/interceptors/ | 3 | 1 direct · 1 at two steps · 1 at three steps |
| packages/core/adapters/ | 2 | none direct · 1 at two steps · 1 at three steps |
| packages/core/router/ | 10 | 3 direct · 2 at two steps · 4 at three steps · 1 at four steps |
| packages/core/discovery/ | 4 | none direct · 1 at two steps · 3 at three steps |
| packages/common/interfaces/http/ | 2 | none direct · 1 at two steps · 1 at three steps |
| packages/websockets/adapters/ | 2 | none direct · 1 at two steps · 1 at three steps |
| packages/core/repl/ | 6 | 1 direct · 4 at two steps · 1 at three steps |
| packages/core/errors/ | 2 | none direct · 1 at two steps · 1 at three steps |
| packages/core/middleware/ | 8 | 3 direct · 2 at two steps · 3 at three steps |
| packages/microservices/context/ | 3 | 1 direct · 1 at two steps · 1 at four steps |
| packages/websockets/context/ | 3 | 1 direct · 1 at two steps · 1 at four steps |
| packages/core/hooks/ | 6 | none direct · 5 at two steps · 1 at three steps |
| packages/platform-express/adapters/ | 2 | none direct · 1 at two steps · 1 at three steps |
| packages/core/errors/exceptions/ | 14 | none direct · 2 at two steps · 11 at three steps · 1 at four steps |
| integration/versioning/src/ | 12 | none direct · 1 at two steps · 11 at three steps |
| integration/graphql-schema-first/src/ | 7 | none direct · 1 at two steps · 6 at three steps |
| integration/typeorm/src/ | 7 | none direct · 1 at two steps · 6 at three steps |
| integration/lazy-modules/src/ | 5 | none direct · 2 at two steps · 3 at three steps |
| integration/mongoose/src/ | 5 | none direct · 1 at two steps · 4 at three steps |
| integration/microservices/src/ | 4 | none direct · 1 at two steps · 3 at three steps |
| integration/graphql-code-first/src/ | 2 | none direct · 1 at two steps · 1 at three steps |
| integration/scopes/src/ | 2 | none direct · 1 at two steps · 1 at three steps |
| sample/09-babel-example/src/ | 2 | none direct · 1 at two steps · 1 at three steps |
| integration/hooks/src/ | 1 | none direct · 1 at two steps |
| packages/common/interfaces/microservices/ | 1 | 1 direct |
| packages/core/injector/lazy-module-loader/ | 1 | 1 direct |
| packages/core/injector/internal-core-module/ | 3 | 1 direct · 1 at three steps · 1 at four steps |
| packages/core/injector/opaque-key-factory/ | 2 | 2 direct |
| packages/core/repl/native-functions/ | 7 | none direct · 1 at two steps · 6 at three steps |
Not traced past a hub 1
| Symbol | Hub file | Imported by |
|---|---|---|
| packages/core/injector/module.ts:Module | packages/core/injector/module.ts | 44 |
Statements 3
NestApplicationContextOptions signature change reached 13 files in Core Injector. 652NestApplicationContextOptions signature change reached 1 file in Common. 1NestApplicationContextOptions signature change reached 3 files in Common Interfaces. 111244 reached files belong to no component — tests, docs and config.
Routes, schema, dependencies
No public URL, no migration and no new package.
Inspect components, files and symbols
Component
File
Function
imports what changeddownstream of it, one mark per step
Diff
Analysis scope
2043 → 4- files at head2,043
- components281
- changed by this change4
Where the new files landed
2 new files| New file | Belongs to | Used by | Calls | Serves |
|---|---|---|---|---|
| packages/core/injector/opaque-key-factory/2 new files | Opaque Key Factorynew territory | Core Injector | Common Interfacespackages/common/interfaces/modules/packages/common/utils/ | — |
1 added file carries no component — 1 test.
11 files changed, 165 claims stated. 158 components reached in total.