Skip to content

Latest commit

 

History

History
47 lines (32 loc) · 1.7 KB

CONTRIBUTING.md

File metadata and controls

47 lines (32 loc) · 1.7 KB

Contributing

Thanks for contributing!

Getting Started

  • Install rust
  • Install database dependencies (linux):
    • PostgreSQL: apt install postgresql libpq-dev
    • SQLite: apt install sqlite3 libsqlite3-dev
    • MySQL: See mysql install docs
  • cargo build

Making Changes

  • Please be mindful of the feature gates used to implement functionality with and without database connection crates.
  • After making changes, be sure to run the tests (see below)!
  • This crate makes use of cargo-readme (cargo install cargo-readme) to generate the README.md from the crate level documentation in src/lib.rs. This means README.md should never be modified by hand. Changes should be made to the crate documentation in src/lib.rs and the readme.sh script run.

Running Tests

The test.sh script exists to handle setup and tear-down of testing databases before running library tests, as well as ensuring the tests are run with and without the various feature flags. Note: Some commands in this script will ask for sudo access for managing a postgres test database, and your mysql root password must be provided when running locally.

./test.sh <mysql-root-pass>

Submitting Changes

Pull Requests should be made against master. Travis CI will run the test suite on all PRs. Remember to update the changelog!