Subject: Major changes with Isis v2


Hi folks,

to keep you in the loop, we are currently re-platforming Isis on top of the latest Spring release. First thought was to make Spring integration a plug-able feature, but by having a closer look at how Spring handles persistence and especially transactions, it has now become clear, that we want to go all-in with Spring, and fully utilize Spring Data. This will not be optional but mandatory.

This move has some profound consequences. Isis was initially built around JDO, which we will no longer support. We instead delegate any JDO concerns to the Spring community. Sadly there is no 'spring-data-jdo' module [1] yet, and it appears that there wont be one in the near future [2].

Also at the moment it is not clear, whether Isis' builtin domain-event will be still supported with a v2 release. Spring's event API is much more powerful, why not just use that instead. However, we will have a look at whether its doable to provide some kind of backward compatibility.

Also persistence and transactions [3] do work differently in Spring Data, than what you might be used to when using JDO. Its very likely that we'll drop eg. the 'RepositoryService'.

All these changes for Isis appear necessary to stay relevant as a platform. We hope to have a 2.0.0-M3 milestone-release ready around Q3 to showcase Isis powered by Spring.

In case you really need Jdo support, the way to go is to help the Spring community and implement the missing 'spring-data-jdo' module. This should not be to hard in terms of lines of code required.

Cheers, Andi!

[1] https://github.com/spring-projects/spring-framework/issues/18702
[2] https://jira.spring.io/browse/DATACMNS-96
[3] https://docs.spring.io/spring/docs/current/spring-framework-reference/data-access.html#spring-data-tier