Skip to content

Conversation

@domonkos-ess
Copy link

Changes:

  • Upgrade Spring Boot version to 3.4.4
  • Upgrade Java version to 21
  • Upgrade Jackson version to 2.18.3
  • Upgrade Elasticsearch version to 8.18.0
  • Align Docker related files
  • Refactor WebSecurityConfig accordingly

Copy link
Collaborator

@georgweiss georgweiss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the Olog service we're about to switch to:

  • Java 25 (to benefit from language features like lightweight threads)
  • Spring Boot 3.5.7
  • Jackson 3.0.1
    Would this be viable for Channel Finder aswell?

@anderslindho
Copy link
Contributor

@georgweiss we specified these versions for now, but we can create follow up for java 25 + highest spring boot 3, and then follow that with spring boot 4

anderslindho
anderslindho previously approved these changes Dec 8, 2025
Copy link
Contributor

@anderslindho anderslindho left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jacomago do we wanna set a requirement for the sonar lints - whether they must be addressed?

and do we want to do something about the tests?

@georgweiss
Copy link
Collaborator

@anderslindho, since the Channel Finder service is an integral part of the Phoebus stack, it might be seen as a bit confusing to not run on the same base dependencies.
What is a "follow up" here in terms of planing and time schedule?

@anderslindho
Copy link
Contributor

@georgweiss

We do not have a precise time plan, as we are agile.

We can bump this in prio based on value, if you think this can cause confusion for maintainers. It would, however, be categorised as a maintenance change, to be prioritised lower than support and dev. Regardless, we often manage to squeeze in smaller maintenance updates in between support and dev work.

Do you have any targets for the rest of the services?

}

@Bean
public PasswordEncoder encoder() {
return new BCryptPasswordEncoder();
}

private static class EmbeddedLdapCondition implements Condition {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems mixed up with demo auth and embedded ldap. They should be separate beans.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you rename this to DemoAuthCondition

@georgweiss
Copy link
Collaborator

@anderslindho, Olog will be merged this week. For the other services I expect these to be migrated early next year.

Domonkos Gulyas added 7 commits December 10, 2025 10:11
Upgrade the Spring Boot version to 3.x.x and the Java version to 21. Update dependencies for compatibility, and align the code with these upgrades, especially in WebSecurityConfig.
Update Docker related files to use Java 21 and elasticsearch 8.18.0
Update readme to reference the correct versions.
Uplift Java version in teh Github workflow files
It have to be done later in a separate pull request.
@domonkos-ess domonkos-ess force-pushed the spring-boot-and-java-upgrade branch from 47b11e7 to aa26c17 Compare December 10, 2025 09:12
Domonkos Gulyas added 3 commits January 9, 2026 09:51
Spring Boot 3 resolves TaskExecutor beans more strictly. Explicit bean naming avoids ambiguity with TaskScheduler.
@anderslindho
Copy link
Contributor

Did you check on the sonar issue @domonkos-ess ?

Domonkos Gulyas added 2 commits January 14, 2026 15:16
CSRF disabled: application is a stateless REST API using HTTP Basic auth. No session or cookie-based authentication is used, so CSRF attacks are not applicable.
@domonkos-ess domonkos-ess force-pushed the spring-boot-and-java-upgrade branch from 48a6da7 to d7080d1 Compare January 14, 2026 14:16
@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot

See analysis details on SonarQube Cloud

@github-actions
Copy link

Overall Project 1.97% -1.45%
Files changed 3.52%

File Coverage
ChannelProcessorService.java 77.44% 🍏
MetricsService.java 20.79% 🍏
ElasticConfig.java 0% 🍏
WebSecurityConfig.java 0% -98.41%
ChannelFinderEpicsService.java 0% 🍏
ChannelRepository.java 0% 🍏
ChannelController.java 0% 🍏
Application.java 0% 🍏

2 similar comments
@github-actions
Copy link

Overall Project 1.97% -1.45%
Files changed 3.52%

File Coverage
ChannelProcessorService.java 77.44% 🍏
MetricsService.java 20.79% 🍏
ElasticConfig.java 0% 🍏
WebSecurityConfig.java 0% -98.41%
ChannelFinderEpicsService.java 0% 🍏
ChannelRepository.java 0% 🍏
ChannelController.java 0% 🍏
Application.java 0% 🍏

@github-actions
Copy link

Overall Project 1.97% -1.45%
Files changed 3.52%

File Coverage
ChannelProcessorService.java 77.44% 🍏
MetricsService.java 20.79% 🍏
ElasticConfig.java 0% 🍏
WebSecurityConfig.java 0% -98.41%
ChannelFinderEpicsService.java 0% 🍏
ChannelRepository.java 0% 🍏
ChannelController.java 0% 🍏
Application.java 0% 🍏

@domonkos-ess
Copy link
Author

Did you check on the sonar issue @domonkos-ess ?

Yes, I saw it, however this is the equivalent of the previous implementation. SonarQube just didn’t take that into account. I documented the code.

@github-actions
Copy link

Overall Project 1.97% -1.45%
Files changed 3.52%

File Coverage
ChannelProcessorService.java 77.44% 🍏
MetricsService.java 20.79% 🍏
ElasticConfig.java 0% 🍏
WebSecurityConfig.java 0% -98.41%
ChannelFinderEpicsService.java 0% 🍏
ChannelRepository.java 0% 🍏
ChannelController.java 0% 🍏
Application.java 0% 🍏

@jacomago jacomago merged commit 211929f into master Jan 19, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants