Releases: BitWeb/java-core-lib
Releases · BitWeb/java-core-lib
Release list
v5.1.0
Compatibility release for Spring Boot 4.1 / Spring AMQP 4.1.
Highlights
- Raises the baseline from Spring Boot 4.0.6 → 4.1.0 (Spring Framework 7.0.7 → 7.0.8)
- Fixes a context-load failure on Boot 4.1 caused by the relocation of Spring AMQP's
ConditionalRejectingErrorHandler(#112)
Fixed
- AMQP autoconfig on Spring Boot 4.1 — Spring AMQP 4.1 moved
ConditionalRejectingErrorHandlerandFatalExceptionStrategyfromorg.springframework.amqp.rabbit.listenertoorg.springframework.amqp.listener, and the old nestedDefaultExceptionStrategyno longer resolves. spring-core built against the old coordinates threwNoClassDefFoundErrorat context load. Imports now target the new package. (#112) FieldNameResolver— migrated off the hibernate-validator internalNodeImpl/PathImpl/ConstraintViolationImpltypes (removed in hibernate-validator 9.1.0, pulled in by Boot 4.1.0) to the publicjakarta.validation.Path/Path.NodeAPI. Behavior is unchanged.
Breaking Changes
- Requires Spring Boot 4.1+. The relocated Spring AMQP package (
org.springframework.amqp.listener) does not exist in Spring AMQP 4.0.x, so this release no longer supports Spring Boot 4.0.x. Applications on Boot 4.0.x must stay on spring-core 5.0.0 or upgrade Boot to 4.1.
Dependency Upgrades
| Dependency | v5.0.0 | v5.1.0 |
|---|---|---|
| Spring Boot | 4.0.6 | 4.1.0 |
| Spring Framework | 7.0.7 | 7.0.8 |
| Spring AMQP | 4.0.x | 4.1.0 |
Upgrade note: If your application overrides the AMQP error handler and imports ConditionalRejectingErrorHandler or FatalExceptionStrategy directly, update those imports from org.springframework.amqp.rabbit.listener to org.springframework.amqp.listener.
v5.0.0
v5.0.0
Major release upgrading to Spring Boot 4, Spring Framework 7, and Jackson 3.
Highlights
- Spring Boot 3.5.0 → 4 / Spring Framework 6.2.7 → 7
- Jackson 2.x → 3.x (
tools.jacksonpackage) as primary, with Jackson 2.x retained for Retrofit compatibility - OkHttp 4.x → 5.x, Tomcat 10.x → 11.x, Testcontainers 1.x → 2.x
- Java module name (
ee.bitweb.core) added to JAR manifest - CI now tests on Java 17, 21, and 25
Breaking Changes
- Jackson 3 package rename: All internal Jackson usage moved from
com.fasterxml.jacksontotools.jackson. Applications directly referencing library Jackson types must update imports. InvalidFormatValidationExceptionnow extendsRuntimeExceptioninstead ofInvalidFormatExceptionMDCTaskDecoratorremoved — useBasicMDCTaskDecoratororSecurityAwareMDCTaskDecoratorTrimmedStringDeserializer.addToObjectMapper()removed — usecreateModule()insteadpersistenceExceptionlog-level property removed — useentityNotFoundExceptionandconflictExceptionseparately- AMQP:
Jackson2JsonMessageConverterreplaced byJacksonJsonMessageConverter(Jackson 3) - Actuator/Security import paths changed (Spring Boot 4 package reorganization)
- Test:
AutoConfigureMockMvcmoved toorg.springframework.boot.webmvc.test.autoconfigure - ObjectMapper config refactored: Now uses
JsonMapperBuilderCustomizerfor Jackson 3 and a nested customizer for Jackson 2
New
Jackson2TrimmedStringDeserializer— Jackson 2 string trimming for Retrofit compatibilityStringUtil.trim()utility method- Dual Jackson auto-configuration (Jackson 2 + Jackson 3 configured identically)
Removed
MDCTaskDecorator(deprecated since 3.3.0)persistenceExceptionlog-level property (deprecated since 3.1.0)- OWASP dependency-check Gradle plugin
- Spring version matrix CI workflow
Full migration guide: Wiki
v5.0.0-RC1
v5.0.0-RC1
Major release upgrading to Spring Boot 4.0.0, Spring Framework 7.0.0, and Jackson 3.0.x.
Highlights
- Spring Boot 3.5.0 → 4.0.0 / Spring Framework 6.2.7 → 7.0.0
- Jackson 2.x → 3.x (
tools.jacksonpackage) as primary, with Jackson 2.x retained for Retrofit compatibility - OkHttp 4.x → 5.x, Tomcat 10.x → 11.x, Testcontainers 1.x → 2.x
- Java module name (
ee.bitweb.core) added to JAR manifest - CI now tests on Java 17, 21, and 25
Breaking Changes
- Jackson 3 package rename: All internal Jackson usage moved from
com.fasterxml.jacksontotools.jackson. Applications directly referencing library Jackson types must update imports. InvalidFormatValidationExceptionnow extendsRuntimeExceptioninstead ofInvalidFormatExceptionMDCTaskDecoratorremoved — useBasicMDCTaskDecoratororSecurityAwareMDCTaskDecoratorTrimmedStringDeserializer.addToObjectMapper()removed — usecreateModule()insteadpersistenceExceptionlog-level property removed — useentityNotFoundExceptionandconflictExceptionseparately- AMQP:
Jackson2JsonMessageConverterreplaced byJacksonJsonMessageConverter(Jackson 3) - Actuator/Security import paths changed (Spring Boot 4 package reorganization)
- Test:
AutoConfigureMockMvcmoved toorg.springframework.boot.webmvc.test.autoconfigure - ObjectMapper config refactored: Now uses
JsonMapperBuilderCustomizerfor Jackson 3 and a nested customizer for Jackson 2
New
Jackson2TrimmedStringDeserializer— Jackson 2 string trimming for Retrofit compatibilityStringUtil.trim()utility method- Dual Jackson auto-configuration (Jackson 2 + Jackson 3 configured identically)
Removed
MDCTaskDecorator(deprecated since 3.3.0)persistenceExceptionlog-level property (deprecated since 3.1.0)- OWASP dependency-check Gradle plugin
- Spring version matrix CI workflow
Full migration guide: Wiki
v4.0.5
What's Changed
- Fix FieldNameResolver bug dealing with @RequestParam by @rammrain in #91
Full Changelog: v4.0.4...v4.0.5
v4.0.4
v4.0.3
v4.0.2
What's Changed
- Retrofit response body mapper fix by @ennoeller in #44
- Run tests with every supported Spring Boot version by @rammrain in #51
- Convert suppressed headers to lowercase before comparing by @rammrain in #53
Full Changelog: v4.0.1...v4.0.2
v4.0.1
4.0.0
What's Changed
- Bump the all-deps-minor-and-patch group with 13 updates by @dependabot in #29
- New Retrofit logging interceptor by @ennoeller in #23
Breaking changes:
- Logs are written to a single log entry now. Data from mappers is mostly added to MDC. The new log message looks as follows for every log level:
GET https://localhost:3000/api?data=true&test 404 1024bytes 14ms RetrofitApiBuilder.createadded a third argument,RetrofitLoggingInterceptor. Builder methodsloggingLevelandsuppressedHeadershave been removed.
New Contributors
- @ennoeller made their first contribution in #23
Full Changelog: v3.4.0...v4.0.0