Skip to content

Cannot read property 'length' of undefined with getCodeFixes & CompletionEntryDetail #19286

Closed
@angelozerr

Description

@angelozerr

TypeScript Version: 2.6.0-dev.20171018

Code

Create a a.ts file like this:

export const PI = 3.14;

Create a b.ts file like this:

PI

Expected behavior:

  • when you call getCodeFixes for PI (b.ts), it should return the import code fixes
  • when you open completion after PI (b.ts), ComplentionEntryDetail should return the code actions, detail, etc

Actual behavior:

The 2 call getCodeFixes, ComplentionEntryDetail fails with Error processing request. Cannot read property 'length' of undefined

{
	"seq": 0,
	"type": "response",
	"command": "getCodeFixes",
	"request_seq": 640,
	"success": false,
	"message": "Error processing request. Cannot read property 'length' of undefined\nTypeError: Cannot read property 'length' of undefined\n    at Object.firstDefined (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1322:34)\n    at tryGetModuleNameFromTypeRoots (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76001:23)\n    at getModuleSpecifierForNewImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:75943:17)\n    at getCodeActionForAddImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76131:20)\n    at getCodeActionForImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:75869:26)\n    at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76221:60\n    at forEachExternalModule (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76238:21)\n    at getActionsForNonUMDImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76205:13)\n    at Object.getImportCodeActions [as getCodeActions] (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76180:19)\n    at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:74963:33\n    at Object.forEach (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1312:30)\n    at Object.getFixes (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:74962:16)\n    at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:80069:35\n    at Object.flatMap (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1550:25)\n    at Object.getCodeFixesAtPosition (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:80067:23)\n    at IOSession.Session.getCodeFixes (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86471:64)\n    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:85384:61)\n    at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86625:88\n    at IOSession.Session.executeWithRequestId (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86616:28)\n    at IOSession.Session.executeCommand (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86625:33)\n    at IOSession.Session.onMessage (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86645:35)\n    at Interface.<anonymous> (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:87818:27)\n    at emitOne (events.js:96:13)\n    at Interface.emit (events.js:188:7)\n    at Interface._onLine (readline.js:239:10)\n    at Interface.<anonymous> (readline.js:376:12)\n    at Array.forEach (native)\n    at Interface._normalWrite (readline.js:375:11)\n    at Socket.ondata (readline.js:107:10)\n    at emitOne (events.js:96:13)\n    at Socket.emit (events.js:188:7)\n    at readableAddChunk (_stream_readable.js:176:18)\n    at Socket.Readable.push (_stream_readable.js:134:10)\n    at Pipe.onread (net.js:548:20)"
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScriptFixedA PR has been merged for this issue

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions