chore: add GitHub automation and fix rand vulnerability
Code Quality / quality-checks (push) Has been cancelled
Security Scan / security-audit (push) Has been cancelled

GitHub Actions:
- Add Dependabot for weekly dependency updates (cargo, github-actions)
- Add PR labeler workflow with file-based auto-labeling
- Add issue/PR templates (bug report, feature request, PR template)
- Fix release.yml artifact paths and labeler.yml config syntax
Security:
- Upgrade rand 0.8 → 0.10 to fix RUSTSEC-2026-0097 unsoundness
- Update screenshot.rs for rand 0.10 API (thread_rng → rng, gen_range → random_range)
This commit is contained in:
2026-04-11 18:18:41 +02:00
parent 7a0adc4d82
commit c6ec65c851
10 changed files with 379 additions and 46 deletions
+23
View File
@@ -0,0 +1,23 @@
# Bug Report
**Description**
**Steps to Reproduce**
**Expected Behavior**
**Actual Behavior**
**Environment**
- OS:
- Rust version:
- RustLock version:
**Logs**
**Additional Context**
+12
View File
@@ -0,0 +1,12 @@
# Feature Request
**Is your feature request related to a problem? Please describe.**
**Describe the solution you'd like**
**Describe alternatives you've considered**
**Additional context**
+23
View File
@@ -0,0 +1,23 @@
# Pull Request Template
## Description
Please include a summary of the change and which issue is fixed (if relevant).
## Type of Change
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Documentation update
- [ ] Refactoring
## How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
## Checklist
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
+32
View File
@@ -0,0 +1,32 @@
# Dependabot configuration for RustLock
version: 2
updates:
- package-ecosystem: "cargo"
directory: "/"
schedule:
interval: "weekly"
day: "monday"
time: "09:00"
timezone: "UTC"
open-pull-requests-limit: 10
labels:
- "dependencies"
- "rust"
commit-message:
prefix: "deps"
reviewers:
- "JorySeverijnse"
versioning-strategy: "increase"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
day: "monday"
time: "09:00"
timezone: "UTC"
labels:
- "dependencies"
- "github-actions"
+23
View File
@@ -0,0 +1,23 @@
documentation:
- changed-files:
- any-glob-to-any-file: ['README.md', '*.md', 'docs/**']
features:
- changed-files:
- any-glob-to-any-file: ['src/input.rs', 'src/lock.rs', 'src/config.rs']
rendering:
- changed-files:
- any-glob-to-any-file: ['src/render/**', 'src/render.rs']
ci:
- changed-files:
- any-glob-to-any-file: ['.github/**', '.github/workflows/**']
dependencies:
- changed-files:
- any-glob-to-any-file: ['Cargo.toml', 'Cargo.lock']
refactoring:
- changed-files:
- any-glob-to-any-file: ['src/util.rs', 'src/system.rs']
+15
View File
@@ -0,0 +1,15 @@
name: PR Labeler
on:
pull_request:
types: [opened, synchronize]
jobs:
label:
runs-on: ubuntu-latest
steps:
- name: Label PR based on changed files
uses: actions/labeler@v5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler.yml
+5 -5
View File
@@ -106,8 +106,8 @@ jobs:
draft: true
prerelease: ${{ contains(github.ref_name, 'alpha') || contains(github.ref_name, 'beta') }}
files: |
artifacts/rustlock-default-ubuntu/rustlock/rustlock:rustlock-default-ubuntu
artifacts/rustlock-no-networking-ubuntu/rustlock/rustlock:rustlock-no-networking-ubuntu
artifacts/rustlock-default-debian/rustlock/rustlock:rustlock-default-debian
artifacts/rustlock-default-fedora/rustlock/rustlock:rustlock-default-fedora
artifacts/rustlock-default-arch/rustlock/rustlock:rustlock-default-arch
artifacts/rustlock-default-ubuntu/rustlock
artifacts/rustlock-no-networking-ubuntu/rustlock
artifacts/rustlock-default-debian/rustlock
artifacts/rustlock-default-fedora/rustlock
artifacts/rustlock-default-arch/rustlock