Skip to content

Commit 0d9cf08

Browse files
authored
Merge pull request #199 from epage/template
chore: Update from _rust template
2 parents 6f6ae85 + 9968b8a commit 0d9cf08

File tree

7 files changed

+108
-12
lines changed

7 files changed

+108
-12
lines changed

.github/renovate.json5

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
commitMessageLowerCase: 'never',
77
configMigration: true,
88
dependencyDashboard: true,
9+
"pre-commit": {
10+
enabled: true
11+
},
912
customManagers: [
1013
{
1114
customType: 'regex',
@@ -25,6 +28,18 @@
2528
packageNameTemplate: 'rust-lang/rust',
2629
datasourceTemplate: 'github-releases',
2730
},
31+
{
32+
customType: 'regex',
33+
managerFilePatterns: [
34+
'/^\\.github/workflows/pre-commit.yml$/',
35+
],
36+
matchStrings: [
37+
'prek-version.*?(?<currentValue>\\d+\\.\\d+(\\.\\d+)?)',
38+
],
39+
depNameTemplate: 'prek',
40+
packageNameTemplate: 'j178/prek',
41+
datasourceTemplate: 'github-releases',
42+
},
2843
],
2944
packageRules: [
3045
{
@@ -41,6 +56,20 @@
4156
],
4257
automerge: true,
4358
},
59+
{
60+
commitMessageTopic: 'Prek',
61+
matchManagers: [
62+
'custom.regex',
63+
],
64+
matchDepNames: [
65+
'prek',
66+
],
67+
extractVersion: '^(?<version>\\d+\\.\\d+\\.\\d+)',
68+
schedule: [
69+
'* * * * *',
70+
],
71+
automerge: true,
72+
},
4473
// Goals:
4574
// - Keep version reqs low, ignoring compatible normal/build dependencies
4675
// - Take advantage of latest dev-dependencies

.github/workflows/ci.yml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,10 @@ jobs:
5656
run: cargo hack test --each-feature --workspace
5757
msrv:
5858
name: "Check MSRV"
59-
runs-on: ubuntu-latest
59+
strategy:
60+
matrix:
61+
os: ["ubuntu-latest"]
62+
runs-on: ${{ matrix.os }}
6063
steps:
6164
- name: Checkout repository
6265
uses: actions/checkout@v6
@@ -70,7 +73,10 @@ jobs:
7073
run: cargo hack check --each-feature --locked --rust-version --ignore-private --workspace --all-targets --keep-going
7174
minimal-versions:
7275
name: Minimal versions
73-
runs-on: ubuntu-latest
76+
strategy:
77+
matrix:
78+
os: ["ubuntu-latest"]
79+
runs-on: ${{ matrix.os }}
7480
steps:
7581
- name: Checkout repository
7682
uses: actions/checkout@v6
@@ -126,7 +132,7 @@ jobs:
126132
components: rustfmt
127133
- uses: Swatinem/rust-cache@v2
128134
- name: Check formatting
129-
run: cargo fmt --all -- --check
135+
run: cargo fmt --check
130136
clippy:
131137
name: clippy
132138
runs-on: ubuntu-latest

.github/workflows/pre-commit.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ jobs:
2323
runs-on: ubuntu-latest
2424
steps:
2525
- uses: actions/checkout@v6
26-
- uses: actions/setup-python@v6
26+
- uses: j178/prek-action@v1
2727
with:
28-
python-version: '3.x'
29-
- uses: pre-commit/action@v3.0.1
28+
prek-version: '0.2.27'

.github/workflows/rust-next.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,12 @@ jobs:
4646
run: cargo hack test --each-feature --workspace
4747
latest:
4848
name: "Check latest dependencies"
49-
runs-on: ubuntu-latest
49+
strategy:
50+
matrix:
51+
os: ["ubuntu-latest"]
52+
runs-on: ${{ matrix.os }}
53+
env:
54+
CARGO_RESOLVER_INCOMPATIBLE_RUST_VERSIONS: allow
5055
steps:
5156
- name: Checkout repository
5257
uses: actions/checkout@v6

.github/workflows/template.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Template Update
2+
3+
permissions:
4+
contents: read
5+
6+
on:
7+
schedule:
8+
- cron: '1 1 1 * *'
9+
workflow_dispatch:
10+
11+
env:
12+
RUST_BACKTRACE: 1
13+
CARGO_TERM_COLOR: always
14+
CLICOLOR: 1
15+
TEMPLATE_URL: "https://github.com/epage/_rust.git"
16+
TEMPLATE_BRANCH: "main"
17+
18+
concurrency:
19+
group: "${{ github.workflow }}-${{ github.ref }}"
20+
cancel-in-progress: true
21+
22+
jobs:
23+
update:
24+
permissions:
25+
security-events: write # to create PR
26+
pull-requests: write
27+
contents: write # to push the branch
28+
runs-on: ubuntu-latest
29+
steps:
30+
- name: Checkout repository
31+
uses: actions/checkout@v6
32+
with:
33+
fetch-depth: 0
34+
- name: Configure git
35+
run: |
36+
git config --global user.name '${{ github.actor }}'
37+
git config --global user.email '<>'
38+
- name: Fetch template
39+
run: "git remote add template ${{ env.TEMPLATE_URL }} && git fetch template ${{ env.TEMPLATE_BRANCH }}"
40+
- name: Merge template
41+
run: "git checkout -b template-update && git merge template/${{ env.TEMPLATE_BRANCH }} -m 'chore: Update from template'"
42+
- name: Clear any existing branch
43+
run: "git push origin --delete template-update"
44+
continue-on-error: true
45+
env:
46+
GH_TOKEN: ${{ github.token }}
47+
- name: Push branch
48+
run: "git push --set-upstream origin template-update"
49+
env:
50+
GH_TOKEN: ${{ github.token }}
51+
- name: Create PR
52+
run: "gh pr create --head template-update --title 'chore: Update from template' --body ''"
53+
env:
54+
GH_TOKEN: ${{ github.token }}
55+
- name: Merge PR
56+
run: "gh pr merge --auto --delete-branch"
57+
env:
58+
GH_TOKEN: ${{ github.token }}

.pre-commit-config.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
default_install_hook_types: ["pre-commit", "commit-msg"]
22
repos:
33
- repo: https://github.com/pre-commit/pre-commit-hooks
4-
rev: v5.0.0
4+
rev: v6.0.0
55
hooks:
66
- id: check-yaml
77
- id: check-json
@@ -10,10 +10,10 @@ repos:
1010
- id: check-case-conflict
1111
- id: detect-private-key
1212
- repo: https://github.com/crate-ci/typos
13-
rev: v1.32.0
13+
rev: v1.42.1
1414
hooks:
1515
- id: typos
1616
- repo: https://github.com/crate-ci/committed
17-
rev: v1.1.7
17+
rev: v1.1.10
1818
hooks:
1919
- id: committed

Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ create_dir = "warn"
3535
dbg_macro = "warn"
3636
debug_assert_with_mut_call = "warn"
3737
doc_markdown = "warn"
38-
empty_enum = "warn"
38+
empty_enums = "warn"
3939
enum_glob_use = "warn"
4040
expl_impl_clone_on_copy = "warn"
4141
explicit_deref_methods = "warn"
@@ -79,7 +79,6 @@ str_to_string = "warn"
7979
string_add = "warn"
8080
string_add_assign = "warn"
8181
string_lit_as_bytes = "warn"
82-
string_to_string = "warn"
8382
todo = "warn"
8483
trait_duplication_in_bounds = "warn"
8584
uninlined_format_args = "warn"

0 commit comments

Comments
 (0)