Skip to content

Commit c505e87

Browse files
committed
feat: Add sync-langs.py script to automate arborium feature sync
1 parent 7bba455 commit c505e87

File tree

7 files changed

+314
-125
lines changed

7 files changed

+314
-125
lines changed

.github/renovate.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
{
77
"matchManagers": ["cargo"],
88
"groupName": "arborium crates",
9-
"matchPackageNames": ["/^arborium-/"]
9+
"matchPackageNames": ["/^arborium/"],
10+
"rangeStrategy": "bump"
1011
}
1112
]
1213
}

.github/workflows/sync-langs.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: Sync arborium languages
2+
3+
on:
4+
push:
5+
branches:
6+
- 'renovate/arborium-crates'
7+
8+
jobs:
9+
sync:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v4
13+
14+
- name: Sync language features
15+
run: python scripts/sync-langs.py
16+
17+
- name: Commit if changed
18+
run: |
19+
git diff --quiet crates/*/Cargo.toml && exit 0
20+
git config user.name github-actions[bot]
21+
git config user.email github-actions[bot]@users.noreply.github.com
22+
git add crates/*/Cargo.toml
23+
git commit -m "chore: Sync arborium language features"
24+
git push

Cargo.lock

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/plotnik-cli/Cargo.toml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ default = [
3434
"lang-yaml",
3535
]
3636
all-languages = [
37+
# @generated:all-languages:begin
3738
"lang-ada",
3839
"lang-agda",
3940
"lang-asciidoc",
@@ -79,7 +80,6 @@ all-languages = [
7980
"lang-jq",
8081
"lang-json",
8182
"lang-julia",
82-
"lang-kdl",
8383
"lang-kotlin",
8484
"lang-lean",
8585
"lang-lua",
@@ -106,6 +106,7 @@ all-languages = [
106106
"lang-scala",
107107
"lang-scheme",
108108
"lang-scss",
109+
"lang-solidity",
109110
"lang-sparql",
110111
"lang-sql",
111112
"lang-ssh-config",
@@ -132,7 +133,9 @@ all-languages = [
132133
"lang-yuri",
133134
"lang-zig",
134135
"lang-zsh",
136+
# @generated:all-languages:end
135137
]
138+
# @generated:lang-features:begin
136139
lang-ada = ["plotnik-langs/lang-ada"]
137140
lang-agda = ["plotnik-langs/lang-agda"]
138141
lang-asciidoc = ["plotnik-langs/lang-asciidoc"]
@@ -178,7 +181,6 @@ lang-jinja2 = ["plotnik-langs/lang-jinja2"]
178181
lang-jq = ["plotnik-langs/lang-jq"]
179182
lang-json = ["plotnik-langs/lang-json"]
180183
lang-julia = ["plotnik-langs/lang-julia"]
181-
lang-kdl = ["plotnik-langs/lang-kdl"]
182184
lang-kotlin = ["plotnik-langs/lang-kotlin"]
183185
lang-lean = ["plotnik-langs/lang-lean"]
184186
lang-lua = ["plotnik-langs/lang-lua"]
@@ -205,6 +207,7 @@ lang-rust = ["plotnik-langs/lang-rust"]
205207
lang-scala = ["plotnik-langs/lang-scala"]
206208
lang-scheme = ["plotnik-langs/lang-scheme"]
207209
lang-scss = ["plotnik-langs/lang-scss"]
210+
lang-solidity = ["plotnik-langs/lang-solidity"]
208211
lang-sparql = ["plotnik-langs/lang-sparql"]
209212
lang-sql = ["plotnik-langs/lang-sql"]
210213
lang-ssh-config = ["plotnik-langs/lang-ssh-config"]
@@ -231,13 +234,14 @@ lang-yaml = ["plotnik-langs/lang-yaml"]
231234
lang-yuri = ["plotnik-langs/lang-yuri"]
232235
lang-zig = ["plotnik-langs/lang-zig"]
233236
lang-zsh = ["plotnik-langs/lang-zsh"]
237+
# @generated:lang-features:end
234238

235239
[dependencies]
236240
clap = { version = "4.5", features = ["derive"] }
237241
plotnik-core.workspace = true
238242
plotnik-langs = { path = "../plotnik-langs", version = "0.2.2", default-features = false }
239243
plotnik-lib.workspace = true
240-
arborium-tree-sitter = "2.5.0"
244+
arborium-tree-sitter = "2.7.0"
241245
serde = { version = "1.0", features = ["derive"] }
242246
serde_json = "1.0"
243247
thiserror = "2.0"

0 commit comments

Comments
 (0)