Read the Java pin from .sdkmanrc

Aperta
#70 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@Utkarsh3725 ci sta già lavorando.

Dal 13/11/2026.

  • #75 di @Utkarsh3725 — aperta

Valutazione

Difficoltà
3/5
Tempo stimato
Mezza giornata
Idoneità per principianti
74/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
java, python
Ambito
cli, tooling

Direzione di ricerca

Start with the java row of RUNTIMES and the existing pins in src/devready/checks/runtimes.py, then read explain.py, docs/checks.md and the CHANGELOG format. Add a _sdkman("java") extractor that reads only the java= line of .sdkmanrc and returns the leading version digits, placed after .java-version. Done when the unit tests cover java=21.0.2-tem, comments, a missing java line and an old version, and pytest, ruff check and ruff format --check pass.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement good first issue help wanted

Problem: Java teams using SDKMAN pin the JDK in .sdkmanrc:

java=21.0.2-tem

DevReady already checks Java (.java-version, pom.xml, build.gradle) but ignores .sdkmanrc.

Do:

  • Add a pin to the java row of RUNTIMES in src/devready/checks/runtimes.py: ("project.java.sdkman", ".sdkmanrc", _sdkman("java"), Status.WARN).
  • _sdkman(name) returns an extractor that reads only the java= line (ignore comments and other candidates) and returns the leading \d+(\.\d+){0,2}, dropping the vendor suffix (-tem, -graal).
  • Put it after .java-version in the list (the first pin found wins).
  • Add the explain.py entry, a docs/checks.md row, a CHANGELOG line and unit tests (java=21.0.2-tem, comments, no java line, too old).

Done when:

  • .sdkmanrc with java=21.0.2-tem and Java 17 installed gives one warn showing 21.0.2.
  • .sdkmanrc with only gradle=8.7 gives no Java pin result.

Done when: see the list above, plus pytest, ruff check and ruff format --check pass.

Notes:

  • Read-only: never execute project files, never echo file contents; only a validated version or spec reaches the report.
  • No network, no new runtime dependencies (Python >= 3.10 stdlib only).
  • Comment below to claim it and I will assign you.
Lingua principale
Python
Stelle
2
Fork
3
Merge medio
10h 51m
PR unite (30g)
40

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Evalogical-Inc/devReady

Tutte le issue di Evalogical-Inc/devReady

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.