redhat-developer / redhat-developer/vscode-java
Organize Imports should be smarter about single-letter types
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 2.3k
- Forks
- 546
- Ø Merge
- 20 Std. 1 Min.
- Gemergte PRs (30 T.)
- 11
Beschreibung
When there's an unresolved single-letter type usage in the code, doing Organize Imports should not blindly import a type it finds
Environment
- Operating System: Windows 10
- JDK version: 14
- Visual Studio Code version: 1.45.0
- Java extension version: 0.61.0
Steps To Reproduce
- do Organize Imports on the code below, while there's a single type T available for import (in my case it was inside Apache POI, but you could just create a trivial
T.javafile
import java.util.Map;
//import org.apache.poi.ss.formula.functions.T;
public class Bar {
public void print(Comparable<T> bar, Map<Integer, T> whatever) {
}
}
Current Result
the type T is imported
Expected Result
the actual issue here is that I forgot to specify the type variable T. Ideally, the extension would give a single error saying exactly that. If that's not feasible, it should at least ask confirmation before importing single-letter types, even if there's only a single one available: the chances that the user actually wants to import such a type are much smaller than the chance that there's an error w.r.t. type variables
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne am Einstiegspunkt von Organize Imports und reproduziere das Verhalten mit dem Java-Snippet in diesem Issue, wobei ein einzelner Buchstabe wie T verwendet wird, der für den Import verfügbar ist. Die Arbeit ist abgeschlossen, wenn die Erweiterung den Typ mit nur einem Buchstaben nicht mehr blind importiert, sondern stattdessen das Problem mit der fehlenden Typvariablen meldet oder um Bestätigung bittet.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, typescript, vscode
- Bereich
- developer-experience, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100