Ready to contribute, great! There are many ways you can improve SmartCore. Here are some ideas for you.
If you found a bug or problem please do not hesitate to report it by opening an issue in GitHub. Opening an issue is a simple matter of describing your problem or your idea and answering all follow-up questions from developer (if any). We only ask you to follow these simple recommendations when you open a new issue:
The best way to request a new feature is by opening an issue in GitHub. When you submit your idea, please keep in mind these recommendations:
Writing new code or fixing existing issues is a great way to contribute. In SmartCore all new code is peer-reviewed by core contributors. Before writing new code, please submit an issue describing your problem or feature and give us some time to look at your proposal and suggest changes (if any).
New code should be submitted as a pull request in GitHub. We do not have any preferences as to Forking vs Branching when it comes to submitting your pull request. Please request to merge your change into the development branch.
To make sure your PR is swiftly approved and merged, please make sure new features are covered by unit tests and properly documented. Also, run these tests locally:
cargo test --features "ndarray-bindings, nalgebra-bindings"
for unit tests.cargo fmt
to format the code according to the style guidelines.cargo clippy --all-features -- -Drust-2018-idioms -Dwarnings
for code linting.If you found a problem in documentation please do not hesitate to correct it and submit your proposed change as a pull request (PR) in GutHub. At this moment documentation is found in several places: API, website and examples. Please submit your pull request to a corresponding repository. If your change is a minor correction (e.g. misspelling or grammar error) there is no need to open a separate issue describing what you’ve found, just correct it and submit your PR!
Another way to make a change in documentation is to open an issue in GitHub.