Skip to content

Conversation

@shtse8
Copy link
Contributor

@shtse8 shtse8 commented Dec 10, 2025

Summary

  • Upgraded all tree-sitter-based synth parsers to WASM versions (v0.3.1)
  • Added synth-php and synth-ruby parsers
  • Updated ast-chunking.ts to use parseAsync() for WASM compatibility

Changes

Package Old Version New Version
@sylphx/synth-c ^0.2.1 ^0.3.1
@sylphx/synth-go ^0.2.1 ^0.3.1
@sylphx/synth-java ^0.2.1 ^0.3.1
@sylphx/synth-python ^0.2.1 ^0.3.1
@sylphx/synth-rust ^0.2.3 ^0.3.1
@sylphx/synth-php - ^0.3.1 (new)
@sylphx/synth-ruby - ^0.3.1 (new)

Why

This fixes Windows npx native module errors:

Error: Cannot find module 'bindings'

The WASM-based parsers work across all platforms without requiring native compilation.

Breaking Change

Synth parsers now use parseAsync() instead of parse(). The coderag internals have been updated to handle this.

Test plan

  • All 406 tests pass locally
  • CI passes

…lity

Move tree-sitter based synth parsers and lancedb to optionalDependencies
so they don't block installation when native modules fail to compile.

This allows npx @sylphx/coderag-mcp to work on Windows and other
platforms where native module compilation fails, falling back to
character-based chunking instead of AST-based chunking.
… support

BREAKING CHANGE: Synth parsers now use parseAsync() instead of parse()
- Updated @sylphx/synth-{c,go,java,php,python,ruby,rust} to ^0.3.1
- Added synth-php and synth-ruby parsers
- Modified ast-chunking.ts to use parseAsync for WASM compatibility

This fixes Windows npx native module errors by using WASM-based parsers
instead of native tree-sitter bindings.
@vercel
Copy link

vercel bot commented Dec 10, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
coderag Ready Ready Preview Comment Dec 10, 2025 2:32pm
coderag-j1ok Ready Ready Preview Comment Dec 10, 2025 2:32pm

@shtse8 shtse8 merged commit e589110 into main Dec 10, 2025
3 of 5 checks passed
shtse8 added a commit that referenced this pull request Dec 10, 2025
Add JSDoc comment explaining that WASM-based synth parsers (v0.3.x)
require parseAsync() and that sync parse() throws for tree-sitter
based languages.

This commit triggers a new release to publish the correct synth
version constraints (^0.3.1) that were added in PR #44 but not
published because 0.1.21 was already released from PR #43.
shtse8 added a commit that referenced this pull request Dec 10, 2025
Add JSDoc comment explaining that WASM-based synth parsers (v0.3.x)
require parseAsync() and that sync parse() throws for tree-sitter
based languages.

This commit triggers a new release to publish the correct synth
version constraints (^0.3.1) that were added in PR #44 but not
published because 0.1.21 was already released from PR #43.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants