From 738c1db25255727906943b658f052a83d51652f8 Mon Sep 17 00:00:00 2001 From: Jaap de Haan <261428+jdehaan@users.noreply.github.com> Date: Sun, 22 Mar 2026 10:56:36 +0000 Subject: [PATCH 1/3] ci: Bump setup-go github action to v5 --- .github/workflows/go.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 6b7f570..46fe8bc 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -14,7 +14,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup NodeJS uses: actions/setup-node@v6 @@ -22,7 +22,7 @@ jobs: node-version: 24.x - name: Set up Go - uses: actions/setup-go@v4 + uses: actions/setup-go@v5 with: go-version: '1.25' From ada982158169e5b6cb9911a75ace8b758a2d710a Mon Sep 17 00:00:00 2001 From: Jaap de Haan <261428+jdehaan@users.noreply.github.com> Date: Sun, 22 Mar 2026 10:58:00 +0000 Subject: [PATCH 2/3] chore: github templates --- .github/ISSUE_TEMPLATE/bug_report.md | 23 +++++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 14 ++++++++++++++ .github/pull_request_template.md | 5 +++++ 3 files changed, 42 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/pull_request_template.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..9021e69 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,23 @@ +--- +name: Bug Report +about: Report a bug +labels: bug +--- + +**Description** +A clear description of the bug. + +**Steps to Reproduce** +1. Run `...` +2. ... + +**Expected Behavior** +What you expected to happen. + +**Actual Behavior** +What actually happened. Include any error output. + +**Environment** +- OS: +- Go version: +- rsync version: diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..ec3c93b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,14 @@ +--- +name: Feature Request +about: Suggest a new feature or improvement +labels: enhancement +--- + +**Description** +A clear description of the feature or improvement. + +**Use Case** +Why is this needed? What problem does it solve? + +**Proposed Solution** +How you think it could work (optional). diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..1cd77f2 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,5 @@ +**Description** +What does this PR do? + +**Related Issue** +Fixes # From d201d8142d02534fd850d88dfaa410ae1ad1316c Mon Sep 17 00:00:00 2001 From: Jaap de Haan <261428+jdehaan@users.noreply.github.com> Date: Sun, 22 Mar 2026 11:00:43 +0000 Subject: [PATCH 3/3] docs: Add CONTRIBUTING.md --- CONTRIBUTING.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..5c4ba03 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,37 @@ +# Contributing + +Thanks for your interest in contributing to backup-rsync! + +## Getting Started + +1. Fork the repo and clone it +2. Install Go 1.25+ and `rsync` +3. Run `make build` to verify the setup + +## Development Workflow + +```sh +make format # Format code +make lint # Run linter +make test # Run unit tests +make test-integration # Run integration tests (requires rsync) +make check-coverage # Verify coverage threshold (98%) +``` + +## Submitting Changes + +1. Create a branch from `main` +2. Make your changes — keep commits focused +3. Ensure `make lint` and `make test` pass +4. Open a pull request against `main` + +## Guidelines + +- Follow idiomatic Go conventions +- Add tests for new functionality +- Use dependency injection over global state +- Keep the CI green — all checks must pass before merge + +## License + +By contributing, you agree that your contributions will be licensed under the [GPL-3.0 License](LICENSE).