This repository has been archived by the owner on Jun 19, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #22 from pros-rs/changelog
docs: add changelog and contributing info
- Loading branch information
Showing
7 changed files
with
350 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
name: Bug report | ||
about: Something is not working as expected | ||
title: '' | ||
labels: bug, need repro | ||
assignees: '' | ||
|
||
--- | ||
|
||
## Bug Description | ||
<!-- Include a clear description of the issue and the steps to reproduce it --> | ||
|
||
## Code to reproduce | ||
<!-- A minimum reproducible sample of the issue --> | ||
|
||
## Expected vs. actual behavior | ||
<!-- A clear description of how the library should be behaving versus how it is behaving --> | ||
|
||
## Additional information | ||
<!-- | ||
Add any other context about the problem here. | ||
Move all applicable items out of the comment: | ||
- Operating system (Linux/macOS/Windows): | ||
- pros-rs version (see `Cargo.toml`): | ||
- Rust version (see `rustc --version`): | ||
- Priority this issue should have (low/med/high): | ||
- I have tested this issue on the latest development release. | ||
- I would be willing to implement a fix for this issue. | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
--- | ||
name: Feature request | ||
about: Propose an idea or new feature | ||
title: '' | ||
labels: enhancement | ||
assignees: '' | ||
|
||
--- | ||
|
||
## What your the motivation for this feature? | ||
<!-- | ||
For example: | ||
- I'm frustrated when [...] happens | ||
- VEX has recently released [...] | ||
- A useful feature to add would be [...] | ||
--> | ||
|
||
## Describe the solution you'd like | ||
<!-- A clear and specific description of what you want to happen. --> | ||
|
||
### Describe any drawbacks, if any | ||
<!-- | ||
A clear and specific description of any problems your solution could cause, if any. | ||
Consider: | ||
- How maintainable is it? | ||
- Is it future-proof? | ||
- Will it make the library harder to use? | ||
--> | ||
|
||
## Describe alternative solutions, if any | ||
<!-- A clear and specific description of any alternative solutions or features that would solve the same problem. --> | ||
|
||
## Additional context | ||
<!-- | ||
Any other context, including screenshots, that could help describe your feature request. | ||
Would you be willing to work on implementing this feature? | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--- | ||
name: Small issue | ||
about: Report a small problem (e.g. typo) | ||
title: '' | ||
labels: bug, need repro | ||
assignees: '' | ||
|
||
--- | ||
|
||
## Problem Description | ||
<!-- Include a clear description of the issue as well as how to reproduce it. --> | ||
|
||
## Screenshots | ||
<!-- If applicable, add screenshots to help show the problem. --> | ||
|
||
## Additional information | ||
<!-- | ||
Add any other context about the problem here. | ||
Move all applicable items out of the comment: | ||
- Operating system (Linux/macOS/Windows): | ||
- pros-rs version (see `Cargo.toml`): | ||
- Rust version (see `rustc --version`): | ||
- I have tested this issue on the latest development release. | ||
- I would be willing to implement a fix for this issue. | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
## Describe the changes this PR makes. Why should it be merged? | ||
|
||
## Additional Context | ||
<!-- | ||
Move all applicable items out of the comment: | ||
- I have tested these changes on a VEX V5 brain. | ||
- I have tested these changes in a simulator. | ||
- These are breaking changes (semver: major). | ||
- These are *only* non-code changes (e.g. documentation, README.md). | ||
- These changes update the crate's interface (e.g. functions/modules added or changed). | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
# Changelog | ||
|
||
All notable changes to this project will be documented in this file. | ||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | ||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
||
<!-- | ||
Before releasing: | ||
- change versions in Cargo.toml | ||
- change Unreleased to the version number | ||
- create new Unreleased section | ||
- update links at the end of the document | ||
--> | ||
|
||
## [Unreleased] | ||
|
||
### Added | ||
|
||
### Fixed | ||
|
||
### Changed | ||
|
||
- Add contributing information, pull request templates, and changelog. | ||
|
||
### Removed | ||
|
||
## [0.4.0] - 2024-01-02 | ||
|
||
### Added | ||
|
||
- Add methods to controller for checking individual buttons and axes. | ||
|
||
### Fixed | ||
|
||
### Changed | ||
|
||
- Write doc comments for previously undocumented modules and functions. | ||
|
||
### Removed | ||
|
||
[unreleased]: https://github.com/pros-rs/pros-rs/compare/v0.4.0...HEAD | ||
[0.4.0]: https://github.com/pros-rs/pros-rs/releases/tag/v0.4.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,196 @@ | ||
# Contributing to pros-rs | ||
|
||
Thanks for taking the time to help this project improve! All contributions are | ||
helpful and welcome. | ||
|
||
## Table of Contents | ||
|
||
- [Contributing to pros-rs](#contributing-to-pros-rs) | ||
- [Table of Contents](#table-of-contents) | ||
- [I have a question!](#i-have-a-question) | ||
- [Ways to contribute](#ways-to-contribute) | ||
- [Reporting a problem](#reporting-a-problem) | ||
- [If you find an issue that describes the same problem](#if-you-find-an-issue-that-describes-the-same-problem) | ||
- [Reporting a small problem](#reporting-a-small-problem) | ||
- [Writing and submitting your report](#writing-and-submitting-your-report) | ||
- [Suggesting features](#suggesting-features) | ||
- [Writing and submitting your suggestion](#writing-and-submitting-your-suggestion) | ||
- [Contributing code](#contributing-code) | ||
- [Project structure](#project-structure) | ||
- [Code styleguide](#code-styleguide) | ||
- [Committing \& commit messages](#committing--commit-messages) | ||
- [Pull requests](#pull-requests) | ||
- [Acknowledgements](#acknowledgements) | ||
|
||
## I have a question! | ||
|
||
If you just have a question about the library or need help, the best way you can | ||
get support is by creating a post in the [Q&A Discussions | ||
category](https://github.com/pros-rs/pros-rs/discussions/categories/q-a) or by asking | ||
in the project's [Discord Server][discord-server]. | ||
|
||
## Ways to contribute | ||
|
||
### Reporting a problem | ||
|
||
If something is not working as expected, you can use the repository's | ||
[Issues][issues-page] page to report it. Before | ||
creating a bug report, use the search bar to make sure that what you're | ||
experiencing isn't already a known issue. | ||
|
||
#### If you find an issue that describes the same problem | ||
|
||
If the issue you found is closed, feel free to make a new one, but it helps | ||
to link the one you found under the **Additional information** header. | ||
|
||
If the issue you found is open, the best way to help is by leaving a | ||
comment on it, describing your experience. | ||
|
||
#### Reporting a small problem | ||
|
||
If the problem you're reporting is a typo or a just a simple mistake, you might | ||
want to use the **Small issue** template in the next step. | ||
|
||
#### Writing and submitting your report | ||
|
||
When creating your report, you should use the **Bug report** issue template to | ||
be provided with a list of questions that will help describe the problem you are | ||
having. | ||
|
||
Additionally, try to do the following: | ||
|
||
- Give the issue a **clear and concise** title. | ||
- Fill out **as many of the template's headers as possible**. | ||
- Provide a **code sample** to help readers reproduce the issue. | ||
- Provide your Rust version, pros-rs version, and operating system. | ||
- If you have **screenshots, photos, or videos**, attach them to the GitHub issue. | ||
- Explain **when the problem started happening**. Was it after a recent update? | ||
Or has it always been an issue? | ||
|
||
### Suggesting features | ||
|
||
First of all, thanks for wanting to share your idea! Feature requests help this | ||
project grow. | ||
|
||
Before submitting your suggestion, please consider the following: | ||
|
||
- Your idea may have already been discussed. Use the [Issues][issues-page] | ||
search bar to see if there are any similar suggestions. | ||
- Your idea should be within the project's scope. The goal of this project is to | ||
provide an opinionated Rust framework for developing VEX V5 robots. | ||
|
||
#### Writing and submitting your suggestion | ||
|
||
When creating your report, you should use the **Feature request** issue template | ||
to be provided with a list of questions that will help describe the suggestion | ||
you are submitting. | ||
|
||
Additionally, try to do the following: | ||
|
||
- Give the issue a **clear and concise** title. | ||
- Fill out **as many of the template's headers as possible**. | ||
- Provide **code samples, photos, or videos** to help readers understand what | ||
you're saying. | ||
- Consider **how the suggestion would be implemented**. | ||
|
||
|
||
### Contributing code | ||
|
||
The simplest ways to start contributing code to pros-rs are by checking the [TODO list](./TODO.md) or by finding an | ||
[Issue][issues-page] to tackle. Each one requests changes to the project, and some are | ||
more involved than others. Issues with the [good first | ||
issue][first-issue-search] label are good candidates for your first | ||
contribution. | ||
|
||
When you're ready to start coding, fork the project, then use `git clone` or `gh repo clone` to clone the repository. | ||
|
||
#### Project structure | ||
|
||
- `.github/`: CI workflows & issue/pull request templates | ||
- `.devcontainer/`: GitHub Codespaces configuration | ||
- `.vscode/`: Visual Studio Code configuration | ||
- `.cargo/`: Cargo configuration | ||
- `pros/`: Project source code | ||
- `pros-sys/`: C bindings source code | ||
- `flake.nix`: Nix package configuration | ||
|
||
#### Code styleguide | ||
|
||
All Rust source code should be formatted with Rustfmt, by running `cargo fmt` after making changes. | ||
|
||
Use Clippy to lint your changes: `cargo clippy`. | ||
|
||
#### Committing & commit messages | ||
|
||
All pros-rs projects use [Conventional Commits][conventional-commits-website] | ||
to keep commit messages informational. Conventional commits have the following form: | ||
|
||
``` | ||
type(OptionalScope): description | ||
[optional body] | ||
[optional footers] | ||
``` | ||
|
||
Here is an example of a conforming commit message: | ||
|
||
``` | ||
docs(contributing): add Acknowledgements section | ||
``` | ||
|
||
From this commit, you can easily see that the commit altered **docs** in the | ||
**contributing** guidelines file by **add**ing an **Acknowledgements section**. | ||
When writing the commit description, make sure to use the present imperative | ||
tense ("add ABC" instead of "added ABC" or "adds ABC"). It might help to imagine | ||
that you are telling someone to do something ("go add ABC"). | ||
|
||
Here is a list of common commit types: | ||
|
||
| Type | Description | | ||
|------|------------| | ||
| chore | Changes to workspace & configuration files | | ||
| feat | New features | | ||
| fix | Bug fixes | | ||
| refactor | Changes to internal features but not the external interface | | ||
| revert | Reversion of a previous change | | ||
| style | Changes to code style and formatting | | ||
| test | Changes or additions to unit tests | | ||
| types | Changes to type definitions | | ||
| docs | Changes to documentation files | | ||
|
||
<!-- | ||
#### Unit tests | ||
TODO | ||
--> | ||
|
||
#### Pull requests | ||
|
||
When you're ready for your changes to be merged, head over to the [Pull | ||
Requests][pr-page] page and create a new pull request. Include a description of | ||
what changed, and [link to an Issue][link-to-issue-guide] if applicable. | ||
|
||
If you're not quite done with the changes but are ready to start sharing them, you can | ||
[mark it as a draft][about-draft-prs] to prevent it from being merged. | ||
|
||
Once your pull request has been merged, congrats! Your changes will be mentioned | ||
in the next release's changelog. | ||
|
||
## Acknowledgements | ||
|
||
This CONTRIBUTING.md file contains excerpts from and was inspired in part by the | ||
Atom editor's CONTRIBUTING.md. [Click here to go check it | ||
out.][atom-contributing] | ||
|
||
[discord-server]: https://discord.gg/DhfnWNX7ah | ||
[issues-page]: https://github.com/pros-rs/pros-rs/issues | ||
[pr-page]: https://github.com/pros-rs/pros-rs/pulls | ||
[first-issue-search]: | ||
https://github.com/pros-rs/pros-rs/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22 | ||
[conventional-commits-website]: https://conventionalcommits.org | ||
[link-to-issue-guide]: | ||
https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue | ||
[about-draft-prs]: | ||
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests | ||
[atom-contributing]: https://github.com/atom/atom/blob/master/CONTRIBUTING.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,6 +8,11 @@ categories = ["os", "api-bindings", "no-std", "science::robotics"] | |
license = "MIT" | ||
repository = "https://github.com/pros-rs/pros-rs" | ||
readme = "../README.md" | ||
authors = [ | ||
"pros-rs", | ||
"Gavin Niederman <[email protected]>", | ||
"doinkythederp <[email protected]>", | ||
] | ||
|
||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html | ||
|
||
|