mirror of
https://github.com/tree-sitter/tree-sitter.git
synced 2026-09-10 07:36:22 -04:00
* feat(wasm): make syntax trees sendable
* test(wasm): transfer trees across workers
* test(wasm): use JSON grammar for tree transfer
* test(wasm): edit trees across workers
* test(wasm): share dlmalloc with tree-sitter
* test(wasm): simplify worker tree exchange
* test(wasm): drive tree exchange from Rust
* test(wasm): split sendable-tree xtask
* test(wasm): generalize Rust web fixture
* test(wasm): exercise parallel Rust tree access
* fix(wasm): use Rust global allocator for C core
* test(wasm): use default Rust allocator
* feat(wasm): support external scanners in Rust web apps
* Simplify example further, add a readme
* Regenerate wasm-stdlib
* Fix wasm_stdlib check script
* Vendor the Wasm standard library subset
* Test Unicode Ruby scanner behavior in Wasm
* Make Wasm tree languages instance-aware
* Test multi-threaded use of queries in wasm32-unknown
* Refactor reference-counted language storage
* Check ABI version compat before loading rest of language
* 🎨 Remove redundant #ifdef block
* Reject unsupported Rust Wasm builds on 0.26
36 lines
1.1 KiB
JavaScript
36 lines
1.1 KiB
JavaScript
module.exports = async ({ github, context, core }) => {
|
|
if (context.eventName !== 'pull_request') return;
|
|
|
|
const prNumber = context.payload.pull_request.number;
|
|
const owner = context.repo.owner;
|
|
const repo = context.repo.repo;
|
|
|
|
const files = await github.paginate(github.rest.pulls.listFiles, {
|
|
owner,
|
|
repo,
|
|
pull_number: prNumber,
|
|
per_page: 100
|
|
});
|
|
|
|
const changedFiles = files.map(file => file.filename);
|
|
|
|
const wasmStdLibSources = [
|
|
'lib/src/wasm-stdlib/external_scanner_allocator.c',
|
|
'lib/src/wasm-stdlib/imports.txt',
|
|
'lib/src/wasm-stdlib/libc.c',
|
|
'lib/src/wasm-stdlib/stdio.c'
|
|
];
|
|
const dirChanged = changedFiles.some(file =>
|
|
wasmStdLibSources.includes(file) ||
|
|
file.startsWith('lib/src/wasm-stdlib/libc/ctype/') ||
|
|
file.startsWith('lib/src/wasm-stdlib/libc/string/')
|
|
);
|
|
|
|
if (!dirChanged) return;
|
|
|
|
const wasmStdLibHeader = 'lib/src/wasm-stdlib/external_scanner_stdlib.h';
|
|
const requiredChanged = changedFiles.includes(wasmStdLibHeader);
|
|
|
|
if (!requiredChanged) core.setFailed(`Changes detected in the Wasm stdlib sources but ${wasmStdLibHeader} was not modified.`);
|
|
};
|