Thanks to Ronald for suggesting I introduce this to the community. Please add suggestions and maybe we can close this after a vote if the community likes it.
Purpose The purpose of a Fineract CN Improvement Proposal (FIP) is to introduce any major change into Fineract CN. This is required in order to balance the need to support new features, use cases , and automation . Given the nature of the project that is micro services and its functional implications. To be able to bring changes in core libs and changes in the core services and maybe architecture as we move forward in time and space. What is considered a major change? Any of the following should be considered a major change: - Any major new feature, subsystem, or piece of functionality - Any change that removes the core lib - Design patterns changes that may take away the way project interact with respect to the services and db - Removal of services and core libs - Adding a new type and frameworks - Adding external service like automation and boilerplates - Architectural changes overhaul like moving service or merging service in single piece What should be included in the FIP - Motivation: describe the problem to be solved. - Proposed Change: describe the new thing you want to do. This may be fairly extensive and have large subsections of its own. Or it may be a few sentences, depending on the scope of the change. - New or Changed Public Interfaces: impact to any of the "compatibility commitments" described above. We want to call these out in particular so everyone thinks about them. - New dependencies: describe any third-party libraries that the feature will require, from PyPI or NPM. In particular, make sure their license is compatible with the [Apache License v2.0] ( https://www.apache.org/licenses/LICENSE-2.0). - Migration Plan and Compatibility: if this feature requires additional support for seamless upgrades describe how that will work. In particular, it’s important to mention if: - The feature requires a change in some way to core libs - Some API level change - Removing some lib or its generation - The feature will coexist with similar functionality for some period of time, allowing for a deprecation period. - Rejected Alternatives: What are the other alternatives you considered and why are they worse? The goal of this section is to help people understand why this is the best solution now, and also to prevent churn in the future when old alternatives are reconsidered. Who should initiate FIP Anyone can initiate a FIP, but preferably someone with the intention of implementing it. Process 1. Create an issue <https://github.com/apache/incubator-superset/issues> with the prefix “[FIP]” in the title. The issue will be tagged as “fip” by a committer, and the title will be updated with the current FIP number. 2. Notify the dev@ mailing list that the FIP has been created, use the subject line [DISCUSS] FIP-0 Fineract Improvement Proposals, the body of the email should look something like Please discuss & subscribe here: https://github.com/apache/fineract-CN-repo/issues/5602 3. When writing the issue, fill in the sections as described above in “What should be included in a FIP?”. 4. A committer will initiate the discussion, and ensure that there’s enough time to analyze the proposal. Before accepting the FIP, a committer should call for a vote, requiring 3 votes and no vetoes from committer. Votes are timeboxed at 1 week, and conducted through email (with the subject [VOTE]). 5. Create a pull request implementing the FIP, and referencing the issue. Thanks everyone if there are mistakes in the above please feel free to edit them, I have created a JIRA Link here https://issues.apache.org/jira/browse/FINCN-352 -- Thanks and regards, Saransh Sharma Research Partner This mail is governed by Muellners® IT policy. The information contained in this e-mail and any accompanying documents may contain information that is confidential or otherwise protected from disclosure. If you are not the intended recipient of this message, or if this message has been addressed to you in error, please immediately alert the sender by reply e-mail and then delete this message, including any attachments. Any dissemination, distribution or other use of the contents of this message by anyone other than the intended recipient is strictly prohibited. All messages sent to and from this e-mail address may be monitored as permitted by applicable law and regulations to ensure compliance with our internal policies and to protect our business. E-mails are not secure and cannot be guaranteed to be error free as they can be intercepted, amended, lost or destroyed, or contain viruses. You are deemed to have accepted these risks if you communicate with us by e-mail.
