Building on Aman's point about testing on forks—I'd like to share a practical challenge I ran into, especially on free GitHub accounts.
Fineract's CI pipeline is massive: each push triggers ~37 parallel jobs. On free accounts, this eats through your *2,000 minutes/month quota* incredibly fast. Since the workflows don’t currently use *concurrency groups*, pushing a quick fix doesn't cancel the previous run—it just doubles the burn. Here’s the workflow I’ve found saves time and minutes: 1. *Run unit tests locally first:* > ./gradlew test -x :twofactor-tests:test -x :oauth2-tests:test -x :integration-tests:test (Runs ~1,000 tests with no external services). 2. *Run code quality checks locally:* > ./gradlew spotlessApply spotlessCheck checkstyleMain checkstyleTest (Catches formatting/style issues *before* the CI fails on them). 3. *Run targeted integration tests:* Only for the area you changed. The Cargo container plugin handles the Fineract startup automatically. 4. *Push only when confident:* Use the full CI matrix as a final confirmation rather than a debugging tool. This gives you faster feedback and saves the heavy-lifting (multi-DB matrix, E2E, messaging smoke tests) for the final push. Regards, Krishna On Wed, 18 Feb 2026 at 18:56, Arnav Patil <[email protected]> wrote: > Hi Adam, > > Thank you for the guidance > > I’ve already made a couple of contributions to Fineract, and I’m looking > to gradually take up more impactful issues. I plan to continue working on > unresolved bug tickets and possibly address some compilation warnings to > improve maintainability. > > I’m also exploring some loan-related issues to better understand the > accrual and transaction processing flow, and I’ll make sure to discuss any > larger feature ideas on the DEV list before starting. > > Thanks again for the direction. > > Regards, > Arnav > > On Wed, Feb 18, 2026 at 6:48 PM Aman Mittal <[email protected]> > wrote: > >> Adding few bits regarding code refractoring. >> >> >> You can you 2 tools that are easily available in Intelij Idea >> >> 1. Idea's inbuilt code analysis. >> 2. Another is SonarLint >> >> >> Caveats included >> >> There are some suggestions that may not follow fineract coding >> conventions. Or may cause regressions >> >> To detect them early you can run GitHub Actions on your local fork. So >> that you can double sure that your not breaking anything. >> >> Regards >> Aman Mittal >> >> >> >> On Wed, 18 Feb, 2026, 6:38 pm Aira Jena, <[email protected]> wrote: >> >>> Hi Adam, >>> Thanks for putting this together — this is very helpful, especially for >>> newcomers like me who are trying to understand where to start. >>> I particularly like the emphasis on bug fixes and reducing compilation >>> warnings. Those types of improvements may look small individually, but they >>> significantly improve long-term maintainability and overall code health. >>> Thanks again for sharing this direction. >>> Best, >>> Aira >>> >>> >>> On 2026/02/18 12:58:06 Ádám Sághy wrote: >>> > Hi, >>> > >>> > I wanted to share some thoughts on what newcomers could work on. >>> > >>> > This isn’t a final list, just something that came to mind while I was >>> thinking about it: >>> > >>> > Every contribution that enhances the codebase’s safety, effectiveness, >>> or readability is valuable! :) >>> > >>> > Considering your availability and willingness to contribute, there are >>> several areas where improvements are needed: >>> > >>> > Bug tickets >>> > >>> https://issues.apache.org/jira/browse/FINERACT-2492?filter=-1&jql=project%20%3D%20%22Apache%20Fineract%22%20%20AND%20type%20%3D%20Bug%20%20%20AND%20resolution%20%3D%20Unresolved%20order%20by%20created%20DESC >>> > >>> > Code maintainability / readability >>> > We have a significant number of compilation warnings due to various >>> reasons. I believe at least half of these warnings could be easily fixed. >>> As we work on resolving these warnings, the codebase could become safer and >>> easier to maintain. >>> > >>> > All the rest of the stories >>> > >>> https://issues.apache.org/jira/browse/FINERACT-2494?filter=-1&jql=project%20%3D%20%22Apache%20Fineract%22%20%20AND%20resolution%20%3D%20Unresolved%20order%20by%20created%20DESC >>> > >>> > All the rest of the stories that are considered beginner friendly >>> > >>> https://issues.apache.org/jira/browse/FINERACT-2489?filter=-1&jql=project%20%3D%20%22Apache%20Fineract%22%20and%20labels%20IN%20(beginner-friendly%2C%20beginner%2C%20begineer%2C%20beginners%2C%20Beginner)%20%20AND%20resolution%20%3D%20Unresolved%20order%20by%20created%20DESC >>> > >>> > >>> > Hopefully, this gives you some ideas! >>> > >>> > P.S.: Before you pick up a story that describes a new feature to be >>> introduced, please send an email to the Fineract DEV email list to discuss >>> whether it’s something we really want to include in Fineract. >>> > >>> > Regards, >>> > Adam >>> > >>> >>
