Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pull request quality gates #492

Open
altavir opened this issue Jun 18, 2022 · 2 comments
Open

Pull request quality gates #492

altavir opened this issue Jun 18, 2022 · 2 comments
Labels
discussion documentation Improvements or additions to documentation

Comments

@altavir
Copy link
Member

altavir commented Jun 18, 2022

There is already a bunch of nice features from KMath contributors. But since the code is usually sophisticated, some community design process needs to be enforced in order to make them play together. So here are some rules.

  1. Any contribution with new classes/features must have test coverage of algorithmic part (not necessary 100% code coverage).
  2. Any feature contribution must include a set of examples (goes into examples project), short feature description (goes into readme/feature section of appropriate module build file) and a design document (goes into docs directory). The design document is made to explain the design decisions made for the specific features (look at how KEEP works). Designing mathematics library is hard and we want all decisions to be consistent. The discussion in Kotlin Slack is welcome.
  3. Any changes made to stable maturity modules must be ABI compatible between major versions and development maturity means ABI compatibility between minor versions. If your change is breaking it should be moved to a separate module or to the next release branch.
@CommanderTvis
Copy link
Collaborator

Completely agree with that documentation for all new features is mandatory; however, writing design documents seems to be a bit bureaucratic for research library.

@altavir
Copy link
Member Author

altavir commented Jun 22, 2022

I am not talking about "good" documentation, but at least some considerations are required. It is very hard to devise those considerations from PR. And nobody will do it after it is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants