Hi guys. This thread has been hanging for quite some time (no pun intended). While it was hanging, CVE-2022-22965 [1] was discovered which makes it extremely dangerous to have vulnerable versions of Spring as dependencies.
As discussed, ignite-extensions has 3 versions of spring-data integrations (against versions 1.0, 2.0, 2.2 of spring-data), namely ignite-spring-data, ignite-spring-data_2.0, ignite-spring-data_2.2. They use Spring versions 4.3.x, 5.0.x, 5.2.x, respectively. Of them, only 5.2 branch is still supported and got a fix for CVE-2022-22965. My suggestion is to implement what was suggested earlier in this thread: 1. Remove ignite-spring-data and ignite-spring-data_2.0 2. Update ignite-spring-data_2.2 module to depend on the latest Spring version in branch 5.2 (it's currently 5.2.21) 3. Probably also rename ignite-spring-data_2.2 extension to ignite-spring-data (dropping the version postfix). I created a Jira ticket [2]. Later, in a separate ticket (with no rush due to the urgency of the matter), we could update the integration to work with the most recent spring-data version. What are your thoughts? [1] - https://nvd.nist.gov/vuln/detail/CVE-2022-22965 [2] - https://issues.apache.org/jira/browse/IGNITE-16869 пт, 18 февр. 2022 г. в 20:58, Maksim Timonin <timoninma...@apache.org>: > > > My proposal is not about creating a separate repository for the spring-data > extension - just left a single module > > Yeah, you're correct. I mean that we need a single point of truth for > spring-data - single repository or single module. I'm +1 here. > > > So creating some branches to store obsolete code for a module seems a bit > confusing > > IMHO, we should have an opportunity to release a hot fix asap for those > modules in case of critical CVE, particularly if it is impossible to just > make an upgrade from 2.0 to 2.2 or to the latest version due to backward > compatibility. > > WDYT? > > On Fri, Feb 18, 2022 at 2:12 PM Mikhail Petrov <pmgheap....@gmail.com> > wrote: > > > Maksim, > > > > Currently, we have a single repository where all extensions are stored > > as separate modules - [1] > > My proposal is not about creating a separate repository for the > > spring-data extension - just left a single module for the spring-data > > extension and proceed with its developments the same way as for other > > extensions - [2]. > > So creating some branches to store obsolete code for a module seems a > > bit confusing. > > > > > > One of the goals of this refactoring is to create the Spring Data > > integration extension that will be independent of the version of Spring > > Data. > > (as it is already done for Spring Cache or Spring Transactions > > integrations). It must be updated and re-released only in case of broken > > backward compatibility between Spring Data versions or if the extension > > itself is updated. This process is described in the thread - [2]. > > > > > > [1] - https://github.com/apache/ignite-extensions/tree/master/modules > > [2] - https://lists.apache.org/thread/wox65gp3fyjkx048205t9omm418o3f20 > > > > On 18.02.2022 13:13, Maksim Timonin wrote: > > > Hi Mikhail, > > > > > >> remove extension modules that are tied to the specific Spring Data > > versions > > > - keep only a single spring-data-ext module. For now, it will contain > > code > > > for the latest Ignite Spring Data integration - > > ignite-spring-data-2.2-ext. > > > > > > I'm +1 for having a single repository for the spring-data extensions. > > But I > > > think we must not completely remove code for 2.0, 2.1 versions. I'd > > propose > > > to create separated branches in the repository for those versions, and > > put > > > tags for already released versions. > > > > > >> According to [5] 1.0 and 2.0 versions are no longer supported > > > According to this 2.2 isn't supported too, the last release was a year > > ago, > > > is it? Do we have plans to support spring-data with the latest version? > > > > > > On Fri, Feb 18, 2022 at 10:57 AM Mikhail Petrov <pmgheap....@gmail.com> > > > wrote: > > > > > >> Igniters, > > >> Currently, we have three separate modules for Ignite Spring Data > > >> integrations - [1 - 3]. Each of them depends on the specific version of > > >> the Spring Data - 1.0, 2.0, and 2.2, respectively. > > >> > > >> I propose to: > > >> 1. remove extension modules that are tied to the specific Spring Data > > >> versions - keep only a single spring-data-ext module. For now, it will > > >> contain code for the latest Ignite Spring Data integration - > > >> ignite-spring-data-2.2-ext. > > >> 2. Proceed with spring-data integration future releases as were > > >> discussed here - [6]. > > >> > > >> Motivation: > > >> 1. Almost all bug fixes or improvements for the Spring Data > > >> integration are copied multiple times for each module > > >> 2. According to [5] 1.0 and 2.0 versions are no longer supported and > > >> since the corresponding integrations were already released, we can > > >> remove them safely. > > >> 3. Some patches already neglect versions 1.0 and 2.0 - [4] > > >> > > >> > > >> WDYT? > > >> > > >> [1] - > > >> > > >> > > https://github.com/apache/ignite-extensions/tree/master/modules/spring-data-ext > > >> [2] - > > >> > > >> > > https://github.com/apache/ignite-extensions/tree/master/modules/spring-data-2.0-ext > > >> [3] - > > >> > > >> > > https://github.com/apache/ignite-extensions/tree/master/modules/spring-data-2.2-ext > > >> [4] - https://github.com/apache/ignite-extensions/pull/41 > > >> [5] - > > >> > > >> > > https://mvnrepository.com/artifact/org.springframework.data/spring-data-commons > > >> [6] - https://lists.apache.org/thread/wox65gp3fyjkx048205t9omm418o3f20 > > >> > > >> > >