From c1d0d6aea1789970ae906f9ee309440b381340d4 Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:22:31 +0200 Subject: [PATCH 01/20] Update rust-fmt.yml --- .github/workflows/rust-fmt.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/rust-fmt.yml b/.github/workflows/rust-fmt.yml index f4eb09c..db6b52e 100644 --- a/.github/workflows/rust-fmt.yml +++ b/.github/workflows/rust-fmt.yml @@ -22,8 +22,7 @@ jobs: - name: Formatting Code run: cargo fmt --all --verbose - name: Create Pull Request - uses: repo-sync/pull-request@v2 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - destination_branch: "rewrite" - source_branch: rewrite + - name: pull-request + run: | + gh_pr_up() { gh pr create $* || gh pr edit $* } + gh_pr_up --title "Bot Fix: Formatting" --body "Fix formatting with cargo fmt" From 449e37bf3efda74d07e4e3aa4a67b590e8c61ae0 Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:23:20 +0200 Subject: [PATCH 02/20] Update rust-fmt.yml --- .github/workflows/rust-fmt.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/rust-fmt.yml b/.github/workflows/rust-fmt.yml index db6b52e..85ebc56 100644 --- a/.github/workflows/rust-fmt.yml +++ b/.github/workflows/rust-fmt.yml @@ -22,7 +22,6 @@ jobs: - name: Formatting Code run: cargo fmt --all --verbose - name: Create Pull Request - - name: pull-request run: | gh_pr_up() { gh pr create $* || gh pr edit $* } gh_pr_up --title "Bot Fix: Formatting" --body "Fix formatting with cargo fmt" From 4669ffad9df0d1fef3fde22d307b6d452384a5ae Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:28:55 +0200 Subject: [PATCH 03/20] Update and rename rust-fmt.yml to rust-check.yml --- .github/workflows/rust-check.yml | 20 ++++++++++++++++++++ .github/workflows/rust-fmt.yml | 27 --------------------------- 2 files changed, 20 insertions(+), 27 deletions(-) create mode 100644 .github/workflows/rust-check.yml delete mode 100644 .github/workflows/rust-fmt.yml diff --git a/.github/workflows/rust-check.yml b/.github/workflows/rust-check.yml new file mode 100644 index 0000000..48f2a13 --- /dev/null +++ b/.github/workflows/rust-check.yml @@ -0,0 +1,20 @@ +name: Rust Check + +on: + push: + branches: [ "rewrite" ] + pull_request: + branches: [ "rewrite" ] + +env: + CARGO_TERM_COLOR: always + +jobs: + format: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - uses: mirlahiji/rust-action@master + with: + args: cd integration-test && cargo fmt -- --check && cargo clippy -- -Dwarnings && cargo test diff --git a/.github/workflows/rust-fmt.yml b/.github/workflows/rust-fmt.yml deleted file mode 100644 index 85ebc56..0000000 --- a/.github/workflows/rust-fmt.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Rust Fmt - -on: - push: - branches: [ "rewrite" ] - -permissions: - pull-requests: write - -env: - CARGO_TERM_COLOR: always - -jobs: - format: - runs-on: ubuntu-latest - - permissions: - contents: write - - steps: - - uses: actions/checkout@v3 - - name: Formatting Code - run: cargo fmt --all --verbose - - name: Create Pull Request - run: | - gh_pr_up() { gh pr create $* || gh pr edit $* } - gh_pr_up --title "Bot Fix: Formatting" --body "Fix formatting with cargo fmt" From 702993b94b8e1d5188e84267d31a78954202c465 Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:29:18 +0200 Subject: [PATCH 04/20] Update rust.yml --- .github/workflows/rust.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 7c85fe4..1b288a7 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -20,5 +20,3 @@ jobs: run: cargo build --verbose - name: Run tests run: cargo test --verbose - - name: Check formatting - run: cargo fmt --all -- --check From 01ac1ce043758372d6d065e1fb880afd25cbf5af Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:37:12 +0200 Subject: [PATCH 05/20] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a5c8847..2d2ebbd 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # winapps rewrite [![Rust](https://github.com/winapps-org/winapps/actions/workflows/rust.yml/badge.svg?branch=rewrite)](https://github.com/winapps-org/winapps/actions/workflows/rust.yml) [![Rust Clippy](https://github.com/winapps-org/winapps/actions/workflows/rust-clippy.yml/badge.svg?branch=rewrite)](https://github.com/winapps-org/winapps/actions/workflows/rust-clippy.yml) +[![Rust Check](https://github.com/winapps-org/winapps/actions/workflows/rust-check.yml/badge.svg?branch=rewrite)](https://github.com/winapps-org/winapps/actions/workflows/rust-check.yml) The winapps rewrite project is a whole rewrite of the legacy winapps in rust. Its goal is to simplify the installation and provide a cleaner codebase. From c6a96dc43c33acaab55dc91925b344c9fc628632 Mon Sep 17 00:00:00 2001 From: LDprg <71488985+LDprg@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:37:39 +0200 Subject: [PATCH 06/20] Update rust-check.yml --- .github/workflows/rust-check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust-check.yml b/.github/workflows/rust-check.yml index 48f2a13..c6da49b 100644 --- a/.github/workflows/rust-check.yml +++ b/.github/workflows/rust-check.yml @@ -17,4 +17,4 @@ jobs: - uses: actions/checkout@v3 - uses: mirlahiji/rust-action@master with: - args: cd integration-test && cargo fmt -- --check && cargo clippy -- -Dwarnings && cargo test + args: cargo fmt -- --check && cargo clippy -- -Dwarnings && cargo test From 3ea1da6f07f3b0e3389e64d51f6150deaae9d5ed Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Sat, 15 Jul 2023 15:14:02 +0000 Subject: [PATCH 07/20] feat: contribution guidelines --- CODE_OF_CONDUCT.md | 134 +++++++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 6 ++ 2 files changed, 140 insertions(+) create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..d33878e --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,134 @@ + +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or advances of + any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email address, + without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +[INSERT CONTACT METHOD]. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][Mozilla CoC]. + +For answers to common questions about this code of conduct, see the FAQ at +[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at +[https://www.contributor-covenant.org/translations][translations]. + +[homepage]: https://www.contributor-covenant.org +[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html +[Mozilla CoC]: https://github.com/mozilla/diversity +[FAQ]: https://www.contributor-covenant.org/faq +[translations]: https://www.contributor-covenant.org/translations + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..a600ba8 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,6 @@ +# Contribution Guidelines + +Thank you for contributing to winapps! Before you can contribute, we ask some things of you: + +- Please follow our Code of Conduct, the Contributor Covenant. You can find a copy in this repository or under https://www.contributor-covenant.org/ +- All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assitant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us. \ No newline at end of file From 7b29598bc1d0835606a70bb038024d289a5194dd Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Mon, 24 Jul 2023 18:04:45 +0200 Subject: [PATCH 08/20] feat: add ide config to gitignore --- .gitignore | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index bac0002..df3220d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,8 @@ target/ # The library shouldn't decide about the exact versions of # its dependencies, but let the downstream crate decide. -Cargo.lock \ No newline at end of file +Cargo.lock + +# We don't want to commit IDE configuration files. +.idea/ +.vscode/ \ No newline at end of file From 60a6a8055b9c93b5e2374e1a708b1381809f7ff9 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Mon, 24 Jul 2023 18:05:11 +0200 Subject: [PATCH 09/20] chore: run rustfmt once --- winapps-cli/src/main.rs | 2 +- winapps/src/lib.rs | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/winapps-cli/src/main.rs b/winapps-cli/src/main.rs index fd58b79..61ca1ec 100644 --- a/winapps-cli/src/main.rs +++ b/winapps-cli/src/main.rs @@ -12,7 +12,7 @@ fn cli() -> Command { fn main() { let cli = cli(); - let matches = cli.clone( ).get_matches(); + let matches = cli.clone().get_matches(); match matches.subcommand() { Some(("check", _)) => { diff --git a/winapps/src/lib.rs b/winapps/src/lib.rs index 0440855..8e6937b 100644 --- a/winapps/src/lib.rs +++ b/winapps/src/lib.rs @@ -60,12 +60,14 @@ pub fn load_config(path: Option<&str>) -> Config { let mut config_file = File::create(&config_file).expect("Failed to create configuration file"); - let gen_config = toml::to_string(&config).expect("Failed to generate default configuration"); + let gen_config = + toml::to_string(&config).expect("Failed to generate default configuration"); write!(config_file, "{}", gen_config).expect("Failed to write configuration file"); } let config_file = fs::read_to_string(config_file).expect("Failed to read configuration file"); - let config: Config = toml::from_str(config_file.as_str()).expect("Failed to parse the configuration"); + let config: Config = + toml::from_str(config_file.as_str()).expect("Failed to parse the configuration"); config } From ec0d798c7588f4c7baa31766b672f9de9a518c78 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 10:47:28 +0200 Subject: [PATCH 10/20] feat: pre-commit --- .pre-commit-config.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .pre-commit-config.yaml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..fe5ad4d --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,19 @@ +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: check-byte-order-marker + - id: check-case-conflict + - id: check-merge-conflict + - id: check-symlinks + - id: check-yaml + - id: check-toml + - id: end-of-file-fixer + - id: mixed-line-ending + - id: trailing-whitespace + - repo: https://github.com/doublify/pre-commit-rust + rev: v1.0 + hooks: + - id: fmt + - id: clippy + - id: cargo-check From 01cec96cfab725ce1a87304b8a7ebb8ed306f1aa Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 10:57:13 +0200 Subject: [PATCH 11/20] feat: use own pre-commit-rust fork --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index fe5ad4d..8a28bb1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -11,8 +11,8 @@ repos: - id: end-of-file-fixer - id: mixed-line-ending - id: trailing-whitespace - - repo: https://github.com/doublify/pre-commit-rust - rev: v1.0 + - repo: https://github.com/winapps-org/pre-commit-rust + rev: v1.1 hooks: - id: fmt - id: clippy From 5b95c9b41ef61efe62b696a6eb21a5c95faff563 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:06:46 +0200 Subject: [PATCH 12/20] chore: run pre-commit once --- .github/workflows/rust-check.yml | 4 ++-- .github/workflows/rust-clippy.yml | 4 ++-- .gitignore | 4 ++-- CODE_OF_CONDUCT.md | 1 - CONTRIBUTING.md | 2 +- Cargo.toml | 2 +- README.md | 2 +- winapps-cli/src/main.rs | 5 +++-- winapps-gui/Cargo.toml | 2 +- 9 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/rust-check.yml b/.github/workflows/rust-check.yml index c6da49b..f3d3a03 100644 --- a/.github/workflows/rust-check.yml +++ b/.github/workflows/rust-check.yml @@ -5,14 +5,14 @@ on: branches: [ "rewrite" ] pull_request: branches: [ "rewrite" ] - + env: CARGO_TERM_COLOR: always jobs: format: runs-on: ubuntu-latest - + steps: - uses: actions/checkout@v3 - uses: mirlahiji/rust-action@master diff --git a/.github/workflows/rust-clippy.yml b/.github/workflows/rust-clippy.yml index 1e6a866..33a01d1 100644 --- a/.github/workflows/rust-clippy.yml +++ b/.github/workflows/rust-clippy.yml @@ -22,11 +22,11 @@ jobs: rust-clippy-analyze: name: Run rust-clippy analyzing runs-on: ubuntu-latest - + permissions: contents: read security-events: write - + steps: - name: Checkout code uses: actions/checkout@v3 diff --git a/.gitignore b/.gitignore index df3220d..c2819b0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,10 @@ # Generated files target/ -# The library shouldn't decide about the exact versions of +# The library shouldn't decide about the exact versions of # its dependencies, but let the downstream crate decide. Cargo.lock # We don't want to commit IDE configuration files. .idea/ -.vscode/ \ No newline at end of file +.vscode/ diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index d33878e..45d257b 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -131,4 +131,3 @@ For answers to common questions about this code of conduct, see the FAQ at [Mozilla CoC]: https://github.com/mozilla/diversity [FAQ]: https://www.contributor-covenant.org/faq [translations]: https://www.contributor-covenant.org/translations - diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a600ba8..60f2f7f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,4 +3,4 @@ Thank you for contributing to winapps! Before you can contribute, we ask some things of you: - Please follow our Code of Conduct, the Contributor Covenant. You can find a copy in this repository or under https://www.contributor-covenant.org/ -- All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assitant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us. \ No newline at end of file +- All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assitant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us. diff --git a/Cargo.toml b/Cargo.toml index a54817b..8cd05f6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,4 +3,4 @@ members = [ "winapps", "winapps-cli", "winapps-gui", -] \ No newline at end of file +] diff --git a/README.md b/README.md index 2d2ebbd..cc5e8b4 100644 --- a/README.md +++ b/README.md @@ -3,4 +3,4 @@ [![Rust Clippy](https://github.com/winapps-org/winapps/actions/workflows/rust-clippy.yml/badge.svg?branch=rewrite)](https://github.com/winapps-org/winapps/actions/workflows/rust-clippy.yml) [![Rust Check](https://github.com/winapps-org/winapps/actions/workflows/rust-check.yml/badge.svg?branch=rewrite)](https://github.com/winapps-org/winapps/actions/workflows/rust-check.yml) -The winapps rewrite project is a whole rewrite of the legacy winapps in rust. Its goal is to simplify the installation and provide a cleaner codebase. +The winapps rewrite project is a whole rewrite of the legacy winapps in rust. Its goal is to simplify the installation and provide a cleaner codebase. diff --git a/winapps-cli/src/main.rs b/winapps-cli/src/main.rs index 61ca1ec..a7af7dd 100644 --- a/winapps-cli/src/main.rs +++ b/winapps-cli/src/main.rs @@ -24,8 +24,9 @@ fn main() { println!("Connecting to remote"); } Some((_, _)) => { - cli.about("Command not found try existing ones!") - .print_help(); + cli.about("Command not found, try existing ones!") + .print_help() + .expect("Couldn't print help"); } _ => unreachable!(), } diff --git a/winapps-gui/Cargo.toml b/winapps-gui/Cargo.toml index 1ad1b98..771b90c 100644 --- a/winapps-gui/Cargo.toml +++ b/winapps-gui/Cargo.toml @@ -6,4 +6,4 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -winapps = { path = "../winapps" } \ No newline at end of file +winapps = { path = "../winapps" } From 5b65d16e6a9fb38487fc516885205f377f9ed701 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:13:52 +0200 Subject: [PATCH 13/20] feat: instructions for pre-commit --- CONTRIBUTING.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 60f2f7f..9d4688d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,3 +4,22 @@ Thank you for contributing to winapps! Before you can contribute, we ask some th - Please follow our Code of Conduct, the Contributor Covenant. You can find a copy in this repository or under https://www.contributor-covenant.org/ - All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assitant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us. + +## How to contribute + +- Fork this repository +- Create a new branch with a descriptive name +- Make your changes +- Install and run `pre-commit` (see below) +- Open a Pull Request + +## Pre-commit + +pre-commit is a tool which allows to run checks before committing. +It is recommended to install it and run it before committing, since the same checks +are run through github actions on pull request. We will not merge a pull request unless all checks pass. + +Installation instructions can be found here: https://pre-commit.com/#install
+After installing, run `pre-commit install` in the repository root to install the git hooks. + +It is recommended to run `pre-commit run --all-files` before committing to make sure all checks pass. It is also recommended to use the git cli since graphical git solutions do not always play well with pre-commit. From 3ee971b9e92011d378800ba3bd5309e8898814d5 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:20:35 +0200 Subject: [PATCH 14/20] fix: change pre-commit ci branch to rewrite --- .pre-commit-config.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8a28bb1..5b45bb2 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,3 +1,6 @@ +ci: + autoupdate_branch: "rewrite" + repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 From 423497a19954dd8e2a4cab1cd798c0ace614f0a9 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:25:08 +0200 Subject: [PATCH 15/20] feat: pre-commit action --- .github/workflows/pre-commit.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .github/workflows/pre-commit.yml diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml new file mode 100644 index 0000000..b2d92ba --- /dev/null +++ b/.github/workflows/pre-commit.yml @@ -0,0 +1,14 @@ +name: pre-commit-ci-lite + +on: + push: + branches: [ "rewrite" ] + pull_request: + branches: [ "rewrite" ] + +jobs: + ci: + runs-on: ubuntu-latest + steps: + - uses: pre-commit-ci/lite-action@v1.0.1 + if: always() From 728861694aad2d1c63aa540bd74cd856589c309c Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:42:17 +0200 Subject: [PATCH 16/20] fix: ci config is ignored on non-default branch --- .pre-commit-config.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5b45bb2..8a28bb1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,3 @@ -ci: - autoupdate_branch: "rewrite" - repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 From 97549bc5ba2ded08f53b46a77001a3420ecb8fc2 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:42:20 +0000 Subject: [PATCH 17/20] rm: remove pre-commit workflow as it's not needed --- .github/workflows/pre-commit.yml | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 .github/workflows/pre-commit.yml diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml deleted file mode 100644 index b2d92ba..0000000 --- a/.github/workflows/pre-commit.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: pre-commit-ci-lite - -on: - push: - branches: [ "rewrite" ] - pull_request: - branches: [ "rewrite" ] - -jobs: - ci: - runs-on: ubuntu-latest - steps: - - uses: pre-commit-ci/lite-action@v1.0.1 - if: always() From 4d380f2e1859fde169388f2c89bb571eeb06e977 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Thu, 27 Jul 2023 11:54:02 +0200 Subject: [PATCH 18/20] fix: skip clippy and rust-check for ci pre-commit.ci has no network connection per design, so now pre-commit ci only enforces styling --- .pre-commit-config.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8a28bb1..23a7ce7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,3 +1,6 @@ +ci: + skip: [clippy, cargo-check] + repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 From ce607143e6066f78d45976ba8f845149588b64e2 Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Thu, 27 Jul 2023 11:54:18 +0200 Subject: [PATCH 19/20] rm: remove rust-check.yml Other workflows already run the same checks, so it's unnecessary --- .github/workflows/rust-check.yml | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 .github/workflows/rust-check.yml diff --git a/.github/workflows/rust-check.yml b/.github/workflows/rust-check.yml deleted file mode 100644 index f3d3a03..0000000 --- a/.github/workflows/rust-check.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Rust Check - -on: - push: - branches: [ "rewrite" ] - pull_request: - branches: [ "rewrite" ] - -env: - CARGO_TERM_COLOR: always - -jobs: - format: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - uses: mirlahiji/rust-action@master - with: - args: cargo fmt -- --check && cargo clippy -- -Dwarnings && cargo test From 6c071a35c5e32d5c006dc5b24e6b615d5869f0ec Mon Sep 17 00:00:00 2001 From: Oskar Manhart <52569953+oskardotglobal@users.noreply.github.com> Date: Thu, 27 Jul 2023 11:54:43 +0200 Subject: [PATCH 20/20] fix: enable env colors for rust-clippy.yml --- .github/workflows/rust-clippy.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/rust-clippy.yml b/.github/workflows/rust-clippy.yml index 33a01d1..b77be5c 100644 --- a/.github/workflows/rust-clippy.yml +++ b/.github/workflows/rust-clippy.yml @@ -18,6 +18,9 @@ on: schedule: - cron: '23 2 * * 5' +env: + CARGO_TERM_COLOR: always + jobs: rust-clippy-analyze: name: Run rust-clippy analyzing