|
| 1 | +# Contributing |
| 2 | + |
| 3 | +Thank you for considering contributing to this project! |
| 4 | + |
| 5 | + |
| 6 | +When contributing to this repository, please first discuss the change you wish to |
| 7 | +make via issue, email, or any other method with the owners of this repository |
| 8 | +before making a change. |
| 9 | + |
| 10 | +Please note we have a code of conduct, please follow it in all your interactions |
| 11 | +with the project. |
| 12 | + |
| 13 | +## Submitting issues |
| 14 | + |
| 15 | +When you submit an issue, please make sure it is **clear** and **concise**. |
| 16 | +Including code examples is much appreciated for bug reports, but if at all possible |
| 17 | +please remove extraneous details from your example code. |
| 18 | + |
| 19 | +Feature requests are welcome but be aware that due to time constraints we may not |
| 20 | +be able to implement all features in a timely fashion. Also, be aware that `iui` |
| 21 | +is constrained by the underlying `ui` library, so even if we are interested in |
| 22 | +implementing a feature, it is possible we will have to wait a long time for |
| 23 | +a corresponding implemention in `ui`. |
| 24 | + |
| 25 | +## Submitting pull requests |
| 26 | + |
| 27 | +Thank you for submitting code! We will work to get your changes merged as fast as |
| 28 | +possible. To facilitate this, consider the following steps: |
| 29 | + |
| 30 | +* Run `rustfmt` or `cargo fmt` on your code. This will prevent style nitpicks |
| 31 | +from slowing down your PR. |
| 32 | +* Mark unsafe functions as `unsafe`. This includes _anything_ with potential |
| 33 | +undefined behavior, not just memory unsafety. |
| 34 | +* Document your code! This is the number one holdup for pull requests, especially |
| 35 | +large ones. Don't forget to insert appropriate entries into the changelog. |
| 36 | +* If implementing a new feature from `ui`, please mention the stability of that |
| 37 | +feature in your pull request. We are fine with implementing unstable APIs from |
| 38 | +`ui`, but it's important to mark such APIs as unstable. |
| 39 | + |
| 40 | +## Changelog and Versioning |
| 41 | + |
| 42 | +This project adheres to [SemVer](https://semver.org) and uses a |
| 43 | +[KeepAChangelog](https://keepachangelog.com)-style changelog at |
| 44 | +[CHANGELOG.md](CHANGELOG.md). All PRs MUST include editing the changelog with any |
| 45 | +new API surface, deprecations, fixes, et cetera. |
| 46 | + |
| 47 | +## Code of Conduct |
| 48 | + |
| 49 | +### Our Pledge |
| 50 | + |
| 51 | +In the interest of fostering an open and welcoming environment, we as |
| 52 | +contributors and maintainers pledge to making participation in our project and |
| 53 | +our community a harassment-free experience for everyone, regardless of age, body |
| 54 | +size, disability, ethnicity, gender identity and expression, level of experience, |
| 55 | +nationality, personal appearance, race, religion, or sexual identity and |
| 56 | +orientation. |
| 57 | + |
| 58 | +### Our Standards |
| 59 | + |
| 60 | +Examples of behavior that contributes to creating a positive environment |
| 61 | +include: |
| 62 | + |
| 63 | +* Using welcoming and inclusive language |
| 64 | +* Being respectful of differing viewpoints and experiences |
| 65 | +* Gracefully accepting constructive criticism |
| 66 | +* Focusing on what is best for the community |
| 67 | +* Showing empathy towards other community members |
| 68 | + |
| 69 | +Examples of unacceptable behavior by participants include: |
| 70 | + |
| 71 | +* The use of sexualized language or imagery and unwelcome sexual attention or |
| 72 | +advances |
| 73 | +* Trolling, insulting/derogatory comments, and personal or political attacks |
| 74 | +* Public or private harassment |
| 75 | +* Publishing others' private information, such as a physical or electronic |
| 76 | + address, without explicit permission |
| 77 | +* Other conduct which could reasonably be considered inappropriate in a |
| 78 | + professional setting |
| 79 | + |
| 80 | +### Our Responsibilities |
| 81 | + |
| 82 | +Project maintainers are responsible for clarifying the standards of acceptable |
| 83 | +behavior and are expected to take appropriate and fair corrective action in |
| 84 | +response to any instances of unacceptable behavior. |
| 85 | + |
| 86 | +Project maintainers have the right and responsibility to remove, edit, or |
| 87 | +reject comments, commits, code, wiki edits, issues, and other contributions |
| 88 | +that are not aligned to this Code of Conduct, or to ban temporarily or |
| 89 | +permanently any contributor for other behaviors that they deem inappropriate, |
| 90 | +threatening, offensive, or harmful. |
| 91 | + |
| 92 | +### Scope |
| 93 | + |
| 94 | +This Code of Conduct applies both within project spaces and in public spaces |
| 95 | +when an individual is representing the project or its community. Examples of |
| 96 | +representing a project or community include using an official project e-mail |
| 97 | +address, posting via an official social media account, or acting as an appointed |
| 98 | +representative at an online or offline event. Representation of a project may be |
| 99 | +further defined and clarified by project maintainers. |
| 100 | + |
| 101 | +### Enforcement |
| 102 | + |
| 103 | +Instances of abusive, harassing, or otherwise unacceptable behavior may be |
| 104 | +reported by contacting the project team on GitHub or via [email ](mailto:[email protected]). All |
| 105 | +complaints will be reviewed and investigated and will result in a response that |
| 106 | +is deemed necessary and appropriate to the circumstances. The project team is |
| 107 | +obligated to maintain confidentiality with regard to the reporter of an incident. |
| 108 | +Further details of specific enforcement policies may be posted separately. |
| 109 | + |
| 110 | +Project maintainers who do not follow or enforce the Code of Conduct in good |
| 111 | +faith may face temporary or permanent repercussions as determined by other |
| 112 | +members of the project's leadership. |
| 113 | + |
| 114 | +### Attribution |
| 115 | + |
| 116 | +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, |
| 117 | +available at [http://contributor-covenant.org/version/1/4][version] |
| 118 | + |
| 119 | +[homepage]: http://contributor-covenant.org |
| 120 | +[version]: http://contributor-covenant.org/version/1/4/ |
0 commit comments