Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
f41b4f6
ci: bump tree-sitter/setup-action from 1 to 2
dependabot[bot] Nov 11, 2024
b70136f
chore: add `FUNDING.yml`
amaanq Jan 24, 2025
a352ed8
chore: update `FUNDING.yml`
amaanq Jan 25, 2025
4373ae7
c++23: support additional lambda expression syntax (P1102R2)
jdrouhard Jan 28, 2025
950b4fc
chore: generate
jdrouhard Jan 28, 2025
35a0491
fix lambda declarator front-attr location in parameter-list-included …
jdrouhard Jan 29, 2025
0a4623a
chore: generate
jdrouhard Jan 29, 2025
1e75b69
Include LICENSE file (#303)
michel-slm Jan 30, 2025
5343337
Implement productions and tests
Tomcat-42 Feb 6, 2025
b40a491
Add highlights
Tomcat-42 May 18, 2024
dd4086a
Add missing tests
Tomcat-42 May 18, 2024
4ec3574
Cleanup modules rules
jdrouhard Feb 6, 2025
557f8f5
chore: eslint
jdrouhard Feb 6, 2025
89bfae2
chore: generate
jdrouhard Feb 6, 2025
ac5dc6f
attributes: support [[using attr-namespace: ...]]
jdrouhard Feb 6, 2025
5e18e2b
using directives: allow attributes to appear at the beginning
jdrouhard Feb 6, 2025
e5cea0e
chore: generate
jdrouhard Feb 6, 2025
56455f4
Lambda specifiers implementation (#316)
Aaalibaba42 May 9, 2025
f80847b
chore: update tree-sitter-cli to 0.25.0 and tree-sitter-c to 0.23.6
rktdm Jun 28, 2025
1a05663
chore: update swift bindings
rktdm Jun 28, 2025
803a93a
Fix function declarations with ms_call_modifier being incorrect.
eezstreet Jun 6, 2025
b51a1dd
Added tests
eezstreet Jun 6, 2025
413a2e6
chore: generate
jdrouhard Jul 4, 2025
6d63114
feat: allow extern template instantiantions
rktdm Jun 26, 2025
2871652
chore: generate
jdrouhard Jul 4, 2025
d749ef5
feat: support explicit object parameters
rktdm Jul 8, 2025
5cb9b69
chore: generate
rktdm Jul 8, 2025
077f14f
ci: bump actions/checkout from 4 to 5
dependabot[bot] Aug 25, 2025
e89fbaf
ci: bump actions/setup-node from 4 to 5
dependabot[bot] Sep 8, 2025
e593e55
ci: bump tree-sitter/parser-test-action from 2 to 3
dependabot[bot] Sep 15, 2025
4910efc
fix: Support explicit calls to overloaded operators
wetneb Jul 22, 2025
1832dd7
chore: update tree-sitter-cli
jdrouhard Sep 16, 2025
2a682d3
chore: generate
jdrouhard Sep 16, 2025
c95a0b1
feat!: add support for reflection (P2996)
rktdm Jul 6, 2025
3fd1c51
feat: add support for annotations (P3394)
rktdm Jul 6, 2025
cacfb40
feat: add support for expansion statements (P1306)
rktdm Jul 6, 2025
12bd6f7
chore: generate
rktdm Sep 19, 2025
a0d1092
feat: additional modules support
rktdm Feb 21, 2026
80f5bd8
chore: update tree-sitter-c, tree-sitter-cli, regenerate with ABI 15
rktdm Feb 21, 2026
8b5b49e
chore: temporarily disable node binding test
rktdm Feb 21, 2026
c009222
Explicitly inherit highlights from C (#361)
paveloom Sep 17, 2026
0507d45
Sync upstream C++ grammar and prepare 0.24.0
DavidBakerEffendi Oct 9, 2026
7e45544
Anchor Rust package paths and ignore Python bytecode
DavidBakerEffendi Oct 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# These are supported funding model platforms

github: tree-sitter
patreon: # Replace with a single Patreon username
open_collective: tree-sitter # Replace with a single Open Collective username
ko_fi: amaanq
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
polar: # Replace with a single Polar username
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
thanks_dev: # Replace with a single thanks.dev username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
60 changes: 55 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,12 @@ on:
- pyproject.toml
- setup.py
- tree-sitter.json
- go.mod
- go.sum
- Package.swift
- Package.resolved
- CMakeLists.txt
- Makefile
- .github/workflows/**
pull_request:
paths:
Expand All @@ -32,6 +38,12 @@ on:
- pyproject.toml
- setup.py
- tree-sitter.json
- go.mod
- go.sum
- Package.swift
- Package.resolved
- CMakeLists.txt
- Makefile
- .github/workflows/**

concurrency:
Expand All @@ -45,7 +57,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-14]
os: [ubuntu-latest, windows-latest, macos-15]
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand All @@ -58,16 +70,25 @@ jobs:
shell: bash
run: |
npm ci --legacy-peer-deps --ignore-scripts
npm rebuild tree-sitter-cli
npm rebuild
- name: Verify generated parser
shell: bash
run: |
npx tree-sitter generate --abi 14
npx tree-sitter generate --abi 15
git diff --exit-code -- src
- name: Run grammar corpus and highlight tests
run: npx tree-sitter test
- name: Build C binding
if: runner.os == 'Linux'
run: |
cmake -S . -B build/c -DTREE_SITTER_CLI="$PWD/node_modules/.bin/tree-sitter"
cmake --build build/c --parallel 2
- name: Run Node.js binding tests
run: npm test
- name: Run Rust compatibility tests
run: cargo test --locked
run: |
cargo test --locked
cargo test --locked --all-features
- name: Check Rust formatting
run: cargo fmt --check
- name: Check whitespace
Expand All @@ -76,7 +97,7 @@ jobs:
package:
name: Verify package artifacts
runs-on: ubuntu-latest
needs: test
needs: [test, python, go, swift]
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand All @@ -93,3 +114,32 @@ jobs:
run: npm pack --dry-run
- name: Verify Python wheel contents
run: python3 -m pip wheel --no-deps . --wheel-dir dist

python:
name: Test Python binding
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Install Python binding and runtime
run: python3 -m pip install . "tree-sitter~=0.25"
- name: Run Python binding tests
run: python3 -m unittest discover -s bindings/python/tests

go:
name: Test Go binding
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Run Go binding tests
run: go test ./bindings/go

swift:
name: Test Swift binding
runs-on: macos-15
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Run Swift binding tests
run: swift test
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ _obj/
dist/
*.egg-info
*.whl
__pycache__/
*.py[cod]

# C artifacts
*.a
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

158 changes: 139 additions & 19 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading