Metadata-Version: 2.4
Name: panproto-grammars-scripting
Version: 0.72.0
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Rust
Requires-Dist: panproto>=0.72,<0.73
Summary: panproto grammar pack: Scripting — Python, Ruby, Lua, Bash, Perl, R, Julia, Nushell, Fish
Keywords: panproto,tree-sitter,grammar,scripting
Author-email: Aaron Steven White <aaronstevenwhite@gmail.com>
License-Expression: MIT
Requires-Python: >=3.13
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/panproto/panproto
Project-URL: Issues, https://github.com/panproto/panproto/issues

# panproto-grammars-scripting

Python companion package for Python, Ruby, Lua, Bash, Perl, R, Julia, Nushell, and Fish.

## Install

```bash
pip install panproto-grammars-scripting
```

The package requires Python 3.13 or newer. Its current metadata requires the matching panproto minor release, `panproto>=0.72,<0.73`.

## Discovery

The wheel registers `panproto_grammars_scripting._impl` in the `panproto.grammars` entry-point group. Each call to `panproto.AstParserRegistry()` loads installed entries and calls their `grammars_metadata()` functions. Duplicate names already registered by the core wheel or another pack are ignored. A pack that cannot load produces a `RuntimeWarning`. Registry construction continues without its grammars.

Application code does not need to import this companion package. Its top-level Python package exposes only `__version__`. Calling `panproto._native.AstParserRegistry()` directly bypasses companion discovery.

## Use

```python
import panproto

registry = panproto.AstParserRegistry()
schema = registry.parse_with_protocol("ruby", b"x = 1", "main.rb")
```

The Rust extension is implemented in `crates/panproto-grammars-scripting/`. The wheel metadata and Python package are in this directory.

## License

MIT.

