Awesome, thanks! I will send pull request for all the libraries. I did face some issues with Cassandra driver, as i have yet to understand the new driver syntax.
For now i will send pr with old driver only. This seems an immediate next issue. Regards Rohit On Wed, 22 Jan, 2020, 6:24 pm Juhan Aasaru, <aas...@gmail.com> wrote: > Hi everyone! > > I created a new thread for Spring Boot 2 update in Fineract-Cn as it is a > large topic on its own. > I understand Rohit would be willing to work on this as in the fork of his > team they have already managed to update the versions to Spring Boot 2.2 > and to Spring 5. > > I try to help along the way and hopefully this thread will be a good > reference for the future how to get such big changes done without affecting > the current version until everything is completed and tested. > > The issue is already there in Jira: > https://issues.apache.org/jira/browse/FINCN-172 (Apache projects don't > use Github issues). Rohit, please create a user to that system and assign > the issue to yourself. > > I think the first goal would be to get fineract-cn-identity running on new > Spring Boot version 2.2 since Identity doesn't depend on any other fineract > project (it only depends on libraries). Once we have accomplished that then > getting rest of the services moved is mostly just a lot of copy-paste work. > > For this we have to include in the spring boot update the list of Fineract > libraries Identity depends on. These are (taken from > fineract-cn-identity/shared.gradle): > > frameworkcrypto : '0.1.0-BUILD-SNAPSHOT', > frameworkanubis : '0.1.0-BUILD-SNAPSHOT', > frameworkapi : '0.1.0-BUILD-SNAPSHOT', > frameworktest : '0.1.0-BUILD-SNAPSHOT', > frameworklang : '0.1.0-BUILD-SNAPSHOT', > frameworkasync : '0.1.0-BUILD-SNAPSHOT', > frameworkcassandra : '0.1.0-BUILD-SNAPSHOT', > frameworkcommand : '0.1.0-BUILD-SNAPSHOT', > > But if we just update those libraries then it would break everything that > is currently working. For this I created branch "spring_boot_2" for each of > the libraries and declared their version to be "spring_boot_2-SNAPSHOT". > For example: > https://github.com/apache/fineract-cn-lang/blob/spring_boot_2/build.gradle#L51 > > So if we push something to branch "spring_boot_2" in > apache/fineract-cn-lang then the artifact that is built and deployed by > travis-ch will have verison number "spring_boot_2-SNAPSHOT". And > 0.1.0-BUILD-SNAPSHOT remains unaffected. > > So I did that and now you see that the fineract-cn-identity in branch > "spring_boot_2" depends on these versions: > https://github.com/apache/fineract-cn-identity/blob/spring_boot_2/shared.gradle#L19 > > Rohit. As step #2 please make sure you get Idenity woring with Spring Boot > 2 and create pull requests to all of the needed libraries Identity > depends + a pull request to Identity itself and please make your pull > requests point branch "spring_boot_2" (and not "develop"): > > In order not to send your other changes, please frirst create clean > branches to all of your local forks (or even better - create new forks > under your personal github name for this). > > I know creating all these pull requests is pain (and also they depend on > each other so some of the pull request builds won't pass at first - ignore > that). There is a cure for that but please bare with me on this one and > once this is luckily done we might find a way where you can push code > directly. > > Kind regards > Juhan > >