apex-dev-tools / apex-dev-tools/apex-ls
Revise the use of Refresh in RenameProvider
- 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.