Metadata-Version: 2.4
Name: openrar
Version: 2.0.23
Summary: OpenRAR Python SDK — ctypes binding over the frozen OpenRAR C ABI (RAR 5.0 read/create/mutate)
Author: OpenRAR Project
License: MIT
Project-URL: Homepage, https://github.com/geometric-dev/openrar
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS
Requires-Python: >=3.8
Description-Content-Type: text/markdown

# OpenRAR Python SDK

ctypes binding over the frozen OpenRAR C ABI (`docs/abi-freeze.md`) — no
compiled extension, the C ABI is the whole contract.

```python
from openrar import Archive, create, package_version

create("backup.rar", ["data.bin"], ["data.bin"], method=3)
with Archive("backup.rar") as a:
    for entry in a.list():
        print(entry["path"], entry["size"])
    a.extract_to_path(0, "data-out.bin")
    assert a.test(0)
```

## Conformance

The normative cross-binding case list lives in `tests/conformance_test.py`
(freeze prereq 3). It runs as the `python_conformance` ctest gate against
the freshly built library on every CI leg, and can run standalone:

    OPENRAR_LIB=/path/to/libopenrar.so pytest tests/ -q

The wheel bundles the platform shared library beside the package; the
loader performs the documented startup probes (ABI version strict equality
+ feature-mask negotiation).
