Add .github folder, contains the workflows and issue teplates

This commit is contained in:
TheAwiteb 2023-12-31 14:30:28 +03:00
parent 804313009d
commit 405c7c0810
No known key found for this signature in database
GPG key ID: ABF818BD15DC2D34
8 changed files with 168 additions and 0 deletions

1
.github/FUNDING.yml vendored Normal file
View file

@ -0,0 +1 @@
github: "TheAwiteb"

35
.github/ISSUE_TEMPLATE/bug.md vendored Normal file
View file

@ -0,0 +1,35 @@
---
name: Bug
about: Create a bug report to help us improve Lprs
title: '[Bug]: ...'
labels: ["🐞 Bug"]
assignees: ''
---
## Checks
* [ ] I added a descriptive title to this issue
* [ ] I have searched (Google, and GitHub) for similar issues and couldn't find anything
* [ ] I have read [the README](https://github.com/TheAwiteb/lprs/blob/master/README.md) and still think this is a bug
## Version
<!-- Report for the bug only if it's present in the latest version of Lprs.
If you are not using the latest version, please update and check if the bug is still present. -->
> Then, run `rustc --version` to get the version of Rust.
Rust version: `...`
## Description
<!-- A clear and concise description of what the bug is. -->
## The command
```bash
$ lprs ...
```
## Expected behavior
<!-- A clear and concise description of what you expected to happen. -->
## Actual behavior
<!-- A clear and concise description of what happens. -->

View file

@ -0,0 +1,16 @@
---
name: Feature request
about: Suggest an idea for Lprs
title: '[Feature request]: ...'
labels: ["🔥 Feature"]
assignees: ''
---
## Feature description
<!-- A clear and concise description of what the feature is, and why you think it is needed. -->
## Example
<!-- A clear and concise example of how the feature will be used. (If needed) -->
```bash
$ lprs ...
```

12
.github/ISSUE_TEMPLATE/question.md vendored Normal file
View file

@ -0,0 +1,12 @@
---
name: Question
about: Ask a question about Lprs
title: '[Question]: ...'
labels: ["💬 Question"]
assignees: ''
---
## Question
<!-- Please provide a clear and concise description of your question. -->
<!-- If you are asking about a specific part of the code, please provide a link to the code. -->
<!-- If you are asking about a specific part of the documentation, please provide a link to the documentation. -->

16
.github/ISSUE_TEMPLATE/typo.md vendored Normal file
View file

@ -0,0 +1,16 @@
---
name: Typo report
about: Report a typo in the documentation or the code
title: '[Typo]: ...'
labels: ["📝 Typo"]
assignees: ''
---
<!--
For the location, please provide a link to the code or the documentation.
-->
| Location | Suggestion |
|----------|------------|
| GitHub-link| Suggestion |

12
.github/pull_request_template.md vendored Normal file
View file

@ -0,0 +1,12 @@
<!--
Please change the title of the pull request to `[Fix]: {issue title}` or `[Feature]: {issue title}`.
Make sure to replace `{issue title}` with the title of the issue you are fixing.
-->
## Issue
<!-- Copy the issue link from the issue you are fixing (e.g. https://github.com/TheAwiteb/lprs/issues/1) -->
This will fix {issue GitHub link}
## How I am fixing it
<!-- A clear and concise description of how you are fixing the bug. -->

26
.github/workflows/cd.yml vendored Normal file
View file

@ -0,0 +1,26 @@
name: CD
on:
push:
tags:
- v[0-9]+.[0-9]+.[0-9]+
jobs:
release:
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: dtolnay/rust-toolchain@stable
- name: Create Release 🖋
uses: softprops/action-gh-release@v1
with:
prerelease: ${{ contains(github.ref, 'rc') || contains(github.ref, 'pre') }}
env:
GITHUB_TOKEN: ${{ secrets.PAT }}
- name: Publish to crates.io 🚀
uses: katyo/publish-crates@v2
with:
token: ${{ secrets.PAT }}
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}

50
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,50 @@
name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build:
name: Rust build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- run: cargo build --workspace --all-features
rustfmt:
name: Rust format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- run: cargo fmt -- --check
check:
name: Rust check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- run: cargo check --workspace --all-features
clippy:
name: Rust clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- run: cargo clippy --workspace --all-features -- -D warnings
verify_msrv:
name: Verify Minimum Supported Rust Version in Cargo.toml
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install or use cached `cargo-msrv`
uses: baptiste0928/cargo-install@v2
with:
crate: cargo-msrv
- name: Verify Minimum Rust Version
run: cargo-msrv verify