Vigia

Upgrading nx from 23.x to 24.x

Comparison of the public API of nx 23.3.1 and 24.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports0
Changed signatures3
Removed class or interface members12
Changed class or interface members18
Newly deprecated0
Requirement changes (engines, peer dependencies)0
New exports40

Removed exports

None detected.

Changed signatures

exportBeforeAfter
nx/src/native · expandFilesInput(workspaceRoot: string, globs: string[]): string[](workspaceRoot: string, globs: string[], projectRoots?: string[] | null | undefined): string[]
nx/src/native/index · expandFilesInput(workspaceRoot: string, globs: string[]): string[](workspaceRoot: string, globs: string[], projectRoots?: string[] | null | undefined): string[]
nx/src/native/index.js · expandFilesInput(workspaceRoot: string, globs: string[]): string[](workspaceRoot: string, globs: string[], projectRoots?: string[] | null | undefined): string[]

Removed class or interface members

memberimportBefore
InvocationRecord.parentPidnx/src/nativenumber
TaskInvocationTracker.getInvocationChainnx/src/native(): InvocationRecord[]
TaskUltracacheSettings.ignoredReadsnx/src/nativestring[] | undefined
TaskUltracacheSettings.ignoredWritesnx/src/nativestring[] | undefined
InvocationRecord.parentPidnx/src/native/indexnumber
TaskInvocationTracker.getInvocationChainnx/src/native/index(): InvocationRecord[]
TaskUltracacheSettings.ignoredReadsnx/src/native/indexstring[] | undefined
TaskUltracacheSettings.ignoredWritesnx/src/native/indexstring[] | undefined
InvocationRecord.parentPidnx/src/native/index.jsnumber
TaskInvocationTracker.getInvocationChainnx/src/native/index.js(): InvocationRecord[]
TaskUltracacheSettings.ignoredReadsnx/src/native/index.jsstring[] | undefined
TaskUltracacheSettings.ignoredWritesnx/src/native/index.jsstring[] | undefined

Changed class or interface members

memberBeforeAfter
TaskGraph.dependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
TaskGraph.continuousDependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
AppLifeCycle.constructor(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, isCloudEnabled?: boolean | null | undefined): AppLifeCycle(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, readyDependencies: Record<string, string[]>, isCloudEnabled?: boolean | null | undefined): AppLifeCycle
TaskInvocationTracker.constructor(db: ExternalObject<NxDbConnection>, rootPid: number): TaskInvocationTracker(db: ExternalObject<NxDbConnection>, rootPid: number, ancestorPids: number[]): TaskInvocationTracker
TaskInvocationTracker.registerTask(parentPid: number, taskId: string): void(pid: number, taskId: string, overridesHash: string): InvocationRecord[] | null
TaskInvocationTracker.unregisterTask(taskId: string): void(pid: number, taskId: string): void
TaskGraph.dependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
TaskGraph.continuousDependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
AppLifeCycle.constructor(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, isCloudEnabled?: boolean | null | undefined): AppLifeCycle(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, readyDependencies: Record<string, string[]>, isCloudEnabled?: boolean | null | undefined): AppLifeCycle
TaskInvocationTracker.constructor(db: ExternalObject<NxDbConnection>, rootPid: number): TaskInvocationTracker(db: ExternalObject<NxDbConnection>, rootPid: number, ancestorPids: number[]): TaskInvocationTracker
TaskInvocationTracker.registerTask(parentPid: number, taskId: string): void(pid: number, taskId: string, overridesHash: string): InvocationRecord[] | null
TaskInvocationTracker.unregisterTask(taskId: string): void(pid: number, taskId: string): void
TaskGraph.dependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
TaskGraph.continuousDependenciesRecord<string, string[]>Record<string, TaskGraphEdge[]>
AppLifeCycle.constructor(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, isCloudEnabled?: boolean | null | undefined): AppLifeCycle(tasks: Task[], initiatingTasks: string[], runMode: RunMode, pinnedTasks: string[], tuiCliArgs: TuiCliArgs, tuiConfig: TuiConfig, titleText: string, workspaceRoot: string, taskGraph: TaskGraph, readyDependencies: Record<string, string[]>, isCloudEnabled?: boolean | null | undefined): AppLifeCycle
TaskInvocationTracker.constructor(db: ExternalObject<NxDbConnection>, rootPid: number): TaskInvocationTracker(db: ExternalObject<NxDbConnection>, rootPid: number, ancestorPids: number[]): TaskInvocationTracker
TaskInvocationTracker.registerTask(parentPid: number, taskId: string): void(pid: number, taskId: string, overridesHash: string): InvocationRecord[] | null
TaskInvocationTracker.unregisterTask(taskId: string): void(pid: number, taskId: string): void

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

None detected.

New exports (40)
importexportkind
nx/src/nativeopenUrlfunction
nx/src/nativeLogMatcherclass
nx/src/nativeShebangFileinterface
nx/src/nativeTaskGraphEdgeinterface
nx/src/nativeTaskReadinessenum
nx/src/nativeReadinessProbeclass
nx/src/nativeSocketDirDetailsinterface
nx/src/nativereadShebangHeadersfunction
nx/src/nativeReadinessProbeConfiginterface
nx/src/nativeresolveDaemonSocketPathfunction
nx/src/nativeresolvePluginSocketPathfunction
nx/src/nativeresolveNxConsoleSocketPathfunction
nx/src/nativeresolveForkedProcessSocketPathfunction
nx/src/native/indexopenUrlfunction
nx/src/native/indexLogMatcherclass
nx/src/native/indexShebangFileinterface
nx/src/native/indexTaskGraphEdgeinterface
nx/src/native/indexTaskReadinessenum
nx/src/native/indexReadinessProbeclass
nx/src/native/indexSocketDirDetailsinterface
nx/src/native/indexreadShebangHeadersfunction
nx/src/native/indexReadinessProbeConfiginterface
nx/src/native/indexresolveDaemonSocketPathfunction
nx/src/native/indexresolvePluginSocketPathfunction
nx/src/native/indexresolveNxConsoleSocketPathfunction
nx/src/native/indexresolveForkedProcessSocketPathfunction
nx/nx-cloud-internalsTASK_GRAPH_FORMATvariable
nx/src/native/index.jsopenUrlfunction
nx/src/native/index.jsLogMatcherclass
nx/src/native/index.jsShebangFileinterface
nx/src/native/index.jsTaskGraphEdgeinterface
nx/src/native/index.jsTaskReadinessenum
nx/src/native/index.jsReadinessProbeclass
nx/src/native/index.jsSocketDirDetailsinterface
nx/src/native/index.jsreadShebangHeadersfunction
nx/src/native/index.jsReadinessProbeConfiginterface
nx/src/native/index.jsresolveDaemonSocketPathfunction
nx/src/native/index.jsresolvePluginSocketPathfunction
nx/src/native/index.jsresolveNxConsoleSocketPathfunction
nx/src/native/index.jsresolveForkedProcessSocketPathfunction

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading nx from 23 to 24?

Between nx 23.3.1 and 24.0.0, Vigia found 0 removed exports, 3 changed signatures and 30 removed or changed class or interface members.

What became deprecated in nx 24?

0 exports or members are newly marked as deprecated in nx 24.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/nx/upgrade?from=23.3.1&to=24.0.0