microsoft / microsoft/vscode-languageserver-node

Reference codeLens action not working

Open
#495 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request good first issue help wanted
Dominant language
TypeScript
Stars
1.8k
Forks
404
Avg merge
2d 8h
Merged PRs (30d)
14

Description

I'm trying to use the build in command for editor.action.showReferences and have it bound to a codeLens. But I can't figure out, what I'm doing wrong.

[Trace - 12:51:43 AM] Received response 'codeLens/resolve - (25)' in 6ms.
Result: {
    "range": {
        "start": {
            "line": 380,
            "character": 8
        },
        "end": {
            "line": 381,
            "character": 50
        }
    },
    "data": {
        "codeLensType": "referenceCounter",
        "references": [
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 380,
                        "character": 8
                    },
                    "end": {
                        "line": 380,
                        "character": 16
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 117,
                        "character": 30
                    },
                    "end": {
                        "line": 117,
                        "character": 38
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 152,
                        "character": 35
                    },
                    "end": {
                        "line": 152,
                        "character": 43
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 157,
                        "character": 35
                    },
                    "end": {
                        "line": 157,
                        "character": 43
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 350,
                        "character": 35
                    },
                    "end": {
                        "line": 350,
                        "character": 43
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 363,
                        "character": 33
                    },
                    "end": {
                        "line": 363,
                        "character": 41
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 385,
                        "character": 25
                    },
                    "end": {
                        "line": 385,
                        "character": 33
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 388,
                        "character": 23
                    },
                    "end": {
                        "line": 388,
                        "character": 31
                    }
                }
            },
            {
                "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "range": {
                    "start": {
                        "line": 479,
                        "character": 16
                    },
                    "end": {
                        "line": 479,
                        "character": 24
                    }
                }
            }
        ],
        "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm"
    },
    "command": {
        "title": "9 references",
        "command": "editor.action.showReferences",
        "arguments": [
            {
                "$mid": 1,
                "path": "/home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                "scheme": "file"
            },
            {
                "line": 380,
                "character": 8
            },
            [
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 380,
                            "character": 8
                        },
                        "end": {
                            "line": 380,
                            "character": 16
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 117,
                            "character": 30
                        },
                        "end": {
                            "line": 117,
                            "character": 38
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 152,
                            "character": 35
                        },
                        "end": {
                            "line": 152,
                            "character": 43
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 157,
                            "character": 35
                        },
                        "end": {
                            "line": 157,
                            "character": 43
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 350,
                            "character": 35
                        },
                        "end": {
                            "line": 350,
                            "character": 43
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 363,
                            "character": 33
                        },
                        "end": {
                            "line": 363,
                            "character": 41
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 385,
                            "character": 25
                        },
                        "end": {
                            "line": 385,
                            "character": 33
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 388,
                            "character": 23
                        },
                        "end": {
                            "line": 388,
                            "character": 31
                        }
                    }
                },
                {
                    "uri": "file:///home/razze/Development/elm-spa-example/src/Page/Article/Editor.elm",
                    "range": {
                        "start": {
                            "line": 479,
                            "character": 16
                        },
                        "end": {
                            "line": 479,
                            "character": 24
                        }
                    }
                }
            ]
        ]
    }
}


This is the error that happens, when I click the code action.
Screenshot from 2019-06-07 00-50-26

https://github.com/microsoft/vscode-languageserver-node/issues/210

https://github.com/elm-tooling/elm-language-server/blob/57550c1a0c95b74df3ecb71c98b261785a306c69/src/providers/codeLensProvider.ts#L79

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/providers/codeLensProvider.ts at line 79 and compare the codeLens command arguments with the behavior described for editor.action.showReferences. Read vscode-languageserver-node issue 210 and reproduce the reported error from the linked codeLens setup. Done means the reference codeLens action opens the references without the reported error.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.