[ https://issues.apache.org/jira/browse/IGNITE-22096?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nusrat Shakarov updated IGNITE-22096: ------------------------------------- Description: This epic is about spring 6 support for 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: # Add ignite extensions build on TC with JDK 17. JDK 8 build still will be available. Project will support both options, sprint 6 modules will be enabled only when jdk 17 is used. The main build will be with jdk 17, because it covers all modules. # Use maven.compiler.release=8 for parent pom. # If spring module won't work in spring 6 env, upgrade it with spring 6 dependencies and set maven.compiler.release=17. # Otherwise, make sure that spring 6 is covered with compatibility tests(we have such at least for cache-ext and tx-ext). If spring 6 is added to compatibility test, this module should be build only with JDK 17, otherwise tests will fail. But maven.compiler.release can be 8. # For updated modules use new versioning approach. Use the same major and minor for spring extension as corresponding spring module uses. 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 epic is about spring 6 support for 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: # Add ignite extensions build on TC with JDK 17. JDK 8 build option still will be available. Project will support both options, sprint 6 modules will be enabled only when jdk 17 is used, so in the end the main build will be with jdk 17, because it covers all modules. # Use maven.compiler.release=8 for parent pom. # If spring module won't work in spring 6 env, upgrade it with spring 6 dependencies and set maven.compiler.release=17. # Otherwise, make sure that spring 6 is covered with compatibility tests(we have such at least for cache-ext and tx-ext). If spring 6 is added to compatibility test, this module should be build only with JDK 17, otherwise tests will fail. But maven.compiler.release can be 8. # For updated modules use new versioning approach. Use the same major and minor for spring extension as corresponding spring module uses. 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. > Spring 6 support for ignite spring extensions > --------------------------------------------- > > 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 epic is about spring 6 support for 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: > # Add ignite extensions build on TC with JDK 17. JDK 8 build still will be > available. Project will support both options, sprint 6 modules will be > enabled only when jdk 17 is used. The main build will be with jdk 17, because > it covers all modules. > # Use maven.compiler.release=8 for parent pom. > # If spring module won't work in spring 6 env, upgrade it with spring 6 > dependencies and set maven.compiler.release=17. > # Otherwise, make sure that spring 6 is covered with compatibility tests(we > have such at least for cache-ext and tx-ext). If spring 6 is added to > compatibility test, this module should be build only with JDK 17, otherwise > tests will fail. But maven.compiler.release can be 8. > # For updated modules use new versioning approach. Use the same major and > minor for spring extension as corresponding spring module uses. 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)