[
https://issues.apache.org/jira/browse/IGNITE-22096?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nusrat Shakarov updated IGNITE-22096:
-------------------------------------
Description:
This is epic about spring 6 support in ignite extensions.
Spring boot 3 and Spring 6 users may have difficulties using ignite spring
extensions in their applications, because extensions based on spring 5.
Actually, most of them should work fine in spring 6 apps, but we may find
ourselves on thin ice with this approach.
For some spring modules like spring-data-commons and spring-session-core,
Spring has finished spring 5 support in Nov 2023. For other modules(and
spring-core) support ends in Aug 2024.
The proposal is to upgrade spring based ignite extensions to spring 6. The
upgrade will affect modules which won't work in spring 6 environment(basically,
where api was broken).
Taking into consideration that spring 6 comes with JDK 17+ baseline the plan is
the following:
1. Build ignite extensions using JDK 17 (JDK 8 build option still will be
available for patch releases)
2. Use maven.compiler.release=8, for all modules except spring based modules
3. Upgrade spring modules(where it is necessary) to spring 6 and
maven.compiler.release=17
4. Use new versioning approach. Use the same major and minor for spring
extension as corresponding spring module used. For example, If
spring-session-core is updated to
3.2.2, spring-session-ext version should be 3.2.x, where x is revision number.
was:
This is epic about spring 6 support in ignite extensions.
Spring boot 3 and Spring 6 users may have difficulties using ignite spring
extensions in their applications, because extensions based on spring 5.
Actually, most of them should work fine in spring 6 apps, but we may find
ourselves on thin ice with this approach.
For some spring modules like spring-data-commons and spring-session-core,
Spring has finished spring 5 support in Nov 2023. For other modules(and
spring-core) support ends in Aug 2024.
Considering that, the proposal is to upgrade all spring based ignite extensions
to spring 6. Taking into consideration that spring 6 comes with JDK 17+
baseline the plan is the following:
1. Build ignite extensions using JDK 17 (JDK 8 build option still will be
available for patch releases)
2. Use maven.compiler.release=8, for all modules except spring based modules
3. Upgrade spring modules(where it is necessary) to spring 6 and
maven.compiler.release=17
4. Use new versioning approach. Use the same major and minor for spring
extension as corresponding spring module used. For example, If
spring-session-core is updated to
3.2.2, spring-session-ext version should be 3.2.x, where x is revision number.
> Upgrade ignite spring extensions to spring 6
> --------------------------------------------
>
> Key: IGNITE-22096
> URL: https://issues.apache.org/jira/browse/IGNITE-22096
> Project: Ignite
> Issue Type: Epic
> Reporter: Nusrat Shakarov
> Assignee: Nusrat Shakarov
> Priority: Major
>
> This is epic about spring 6 support in ignite extensions.
> Spring boot 3 and Spring 6 users may have difficulties using ignite spring
> extensions in their applications, because extensions based on spring 5.
> Actually, most of them should work fine in spring 6 apps, but we may find
> ourselves on thin ice with this approach.
> For some spring modules like spring-data-commons and spring-session-core,
> Spring has finished spring 5 support in Nov 2023. For other modules(and
> spring-core) support ends in Aug 2024.
> The proposal is to upgrade spring based ignite extensions to spring 6. The
> upgrade will affect modules which won't work in spring 6
> environment(basically, where api was broken).
> Taking into consideration that spring 6 comes with JDK 17+ baseline the plan
> is the following:
> 1. Build ignite extensions using JDK 17 (JDK 8 build option still will be
> available for patch releases)
> 2. Use maven.compiler.release=8, for all modules except spring based modules
> 3. Upgrade spring modules(where it is necessary) to spring 6 and
> maven.compiler.release=17
> 4. Use new versioning approach. Use the same major and minor for spring
> extension as corresponding spring module used. For example, If
> spring-session-core is updated to
> 3.2.2, spring-session-ext version should be 3.2.x, where x is revision number.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)