apex-dev-tools / apex-dev-tools/apex-ls

Revise the use of Refresh in RenameProvider

Abierto
#249 0 comentarios 0 reacciones 0 asignados Ver en GitHub
backlog
Lenguaje dominante
Scala
Estrellas
12
Forks
3
Merge medio
13 h 43 min
PR fusionados (30 d)
19

Descripción

The rename provider currently calls `refresh` in `getClassBodyDeclaration` method. This is done to correctly resolve dependency holders. When this call is not in place, the list of dependency holders returned from calling getDependencyHolders on a declaration is incomplete.
For example: a function is defined and used in Class A but also used in Class B. If the user tries to rename the function from its **usage** (a callout) in class A - when getDependencyHolders is called on the declaration, it will not return the class body declaration from Class B as a dependency. As a result only instances in Class A are returned.
This is easiest to reproduce the first time you call rename after launching vscode. Subsequent attempts may behave correctly so it's important to make sure the first attempt works.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.