jdk25 upgrade
Los mantenedores suelen responder en 2 días
@shroffk ya está trabajando en esto.
Desde el 4/8/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Summary
I am going to close the PR #3839 and re-approach this effort incrementally.
Right now, this migration is blocked by a mesh of related dependency and framework upgrades, and trying to land them in one PR introduces too much change at once for safe review and validation.
Problem
The current JDK 25 migration is not isolated. It pulls in a chain of related upgrades:
- newer JavaFX requires JDK 25
- Spring upgrade is needed for JDK 25 support
- Jackson 3 upgrade is needed for the Spring upgrade path
- Spring Security 6+ upgrade is needed as part of the Spring migration
- Elasticsearch upgrade is needed for Jackson 3 compatibility
- middle-layer service objects need updates, primarily for JSON/XML serialization and deserialization
Because of these dependencies, one PR ends up touching many layers of the system at once. That makes it difficult to:
- review effectively
- test confidently
- identify regressions quickly
- merge incrementally
Proposed approach
We should split this migration into a sequence of focused efforts instead of one large PR.
low-risk Spring service migration ( alarm-logger, alarm-config-logger )
- migrate the lowest-complexity Spring service first
- use that work to validate the Spring/JDK upgrade path
- confirm compile, test, and packaging behavior before moving on
high-risk Spring service migration (save-restore)
- migrate the most complex service last
- handle:
- Jakarta namespace changes
- Spring Security updates
- Elasticsearch compatibility
- Jackson 3 integration
- serialization/deserialization updates in service-layer objects
shared dependency reconciliation ( entire phoebus project )
- reconcile shared/root Spring and related dependency versions
- remove temporary overrides introduced during the transition
- validate all Spring services together
Suggested work breakdown
This effort will likely need to be split across multiple PRs, including some combination of:
- define and document the upgrade order for JDK 25, JavaFX, Spring, Jackson, Spring Security, and Elasticsearch
- migrate low-risk Spring services first
- upgrade Spring-dependent services iteratively
- update Spring Security usage as required by the newer Spring line
- update Jackson-related serialization/deserialization code
- update Elasticsearch integration for compatibility
- update middle-layer service objects impacted by JSON/XML mapping changes
- run targeted testing after each step
- run broader regression testing before final convergence on JDK 25
Notes
A more detailed upgrade analysis already exists and can be used as the implementation plan for follow-up issues/PRs, especially for:
- Spring Boot upgrade sequencing
- save-and-restore migration details
- springdoc changes
- Spring Security API updates
- Elasticsearch/Jackson compatibility
- Jakarta namespace migration
- Lenguaje dominante
- Java
- Estrellas
- 130
- Forks
- 132
- Merge medio
- 3 d 1 h
- PR fusionados (30 d)
- 24
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ControlSystemStudio/phoebus
-
Create CONTRIBUTING.mdAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ControlSystemStudio/phoebus#3979 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
ControlSystemStudio/phoebus#3962 ·
Los mantenedores suelen responder en 2 días
-
PVA/SPVA: track SPVA version independently and move XDG keychain dir pva/<ver> -> spva/<n.n.n>Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
ControlSystemStudio/phoebus#3865 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 52/100
ControlSystemStudio/phoebus#3980 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
ControlSystemStudio/phoebus#3978 ·
Los mantenedores suelen responder en 2 días
Todos los issues de ControlSystemStudio/phoebus
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
adorsys/keycloak-config-cli#1709 ·
Los mantenedores suelen responder en 1 día
-
! and-bugs
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
osmandapp/OsmAnd#26769 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
NationalSecurityAgency/ghidra#9997 · 2 comentarios ·
Los mantenedores suelen responder en 2 días
-
[Bug] DefaultSerializationExceptionWrapper does not implement Cleanable, so cleanup() is never invoked by codecsPosiblemente ocupada @binbin0325 la tomó hoy. Abiertocomponent/need-triage type/need-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
fix: tagged PDF fails with ClassCastException when a Form and its Image share an XObject namePosiblemente ocupada @hnc-jglee la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
opendataloader-project/opendataloader-pdf#830 ·
Los mantenedores suelen responder en 1 día