We welcome contributions and want to make contributing to this project as easy and transparent as possible. Contributors are encouraged to have a good understanding of SMT and SMT-LIB. See the SMT-LIB website for information and documentation on SMT and SMT-LIB.
Every pull request should have a description that motivates it and should have tests that cover all of the source lines touched and added by the request.
No pull request will be merged unless all tests are passing.
The person approving a pull request will also merge it into main.
In order to accept your pull request, we need you to submit a CLA. You only need to do this once to work on any of Facebook's open source projects.
Complete your CLA here: https://code.facebook.com/cla
We use GitHub issues to track public bugs. Please ensure your description is clear and has sufficient instructions to be able to reproduce the issue.
Facebook has a bounty program for the safe disclosure of security bugs. In those cases, please go through the process outlined on that page and do not file a public issue.
We rely on cargo fmt
and cargo clippy
to ensure consistent formatting and enforce
common style rules.
A TODO comment should include the number of an issue that describes the outstanding work in greater detail.
New public APIs should be documented.
Additional guidelines may be found in the Rust style guide and in the Rust API guidelines.
By contributing to smt2utils, you agree that your contributions will be licensed under the LICENSE-MIT and LICENSE-APACHE files in the root directory of this source tree.