Skip to content

Latest commit

 

History

History
48 lines (34 loc) · 1.92 KB

Contributing.md

File metadata and controls

48 lines (34 loc) · 1.92 KB

Contributing to Rust Persian Tools

First off, thanks for taking the time to contribute! ❤️

Common rules

  • You can email me before doing anything else.
  • Never do a pull request on master/main/stable branches. (do it on 'dev' branch)
  • Before any commit
    • make sure you are passing all tests by running: 'make test'
    • make sure the code is formatted correctly by running 'make fmt'
      • you can config your text editor/IDE to run 'cargo fmt' file save event
    • make sure there is no clippy warning (optional)
  • If you need to do a breaking change let me know before doing anything. (we will make a new branch for it and add that to next major update X.x.x)

Add a module

  1. Add module-name to Cargo.toml at features section with list of dependencies
  2. Add module-name to Cargo.toml at features under 'full' feature
  3. Add module-name to Makefile to the end of build task
  4. Add your module build test to end of file (checkout other build task)
  5. Add 'pub mod module-name' to end of lib.rs
  6. Add your module-name to the beginning of the lib.rs under '#[cfg(not(any())]'
  7. Make a Pull request
  8. Implement your feature
  9. Add tests for your feature
  10. Add standard function docs to your public functions

Fix a bug

  1. Make an issue on this repository and describe this bug (make sure its actually a bug and not a feature😄)
  2. Write a test and make it fail
  3. Make a pull request
  4. Try to fix it and pass the test or tell me to do that

Update database

Lets say there is a new bank or city or... out there and its not exist in this library

If you have a Github account

Make an issue on this repository and explain what is missing or wrong.

If you don't have a Github account

Email me