# Jyro for Blender downloads

This directory hosts the release ZIPs for the Jyro for Blender add-on.

Current version: **v1.0.0**

## File layout

Each supported Python ABI has its own ZIP, named per the packaging convention in
[`docs/RELEASING.md`](https://github.com/jyro/jyro-website/blob/main/docs/RELEASING.md):

| Python ABI | Blender compatibility | File name |
|---|---|---|
| `cp311` | Blender 4.0 \u2013 5.1 | `Jyro-1.0.0-blender-4.0-5.1-cp311-windows-x64.zip` |
| `cp312` | Blender 5.2 | `Jyro-1.0.0-blender-5.2-cp312-windows-x64.zip` |
| `cp313` | Blender 5.2 and newer | `Jyro-1.0.0-blender-5.2-plus-cp313-windows-x64.zip` |

Each ZIP has a sibling `.sha256` file with the same base name.

## Picking the right package

Open Blender's Python console and run:

```python
import sys
print(f"cp{sys.version_info.major}{sys.version_info.minor}")
```

Download the ZIP whose Python ABI matches the output. Mixing ABIs will fail
with a clear error on enable ("This Jyro package contains cpXYZ native modules,
but Blender uses cpABC...").

## Upload steps

After running `scripts/build-release.ps1` and producing the ZIPs + SHA256 files:

1. Copy the artifact into this directory:

    ```bash
    scp dist/Jyro-1.0.0-blender-4.0-5.1-cp311-windows-x64.zip \
        downloads:/var/www/jyro/downloads/jyro-blender/1.0.0/
    ```

    The public Nginx route `/downloads/jyro-blender/<version>/<file>` must map
    to this directory.

2. Verify the SHA256 files alongside the ZIPs match the actual archive contents.

3. Smoke-test install: download the ZIP into a clean Blender 4.x install,
   install the add-on, enable it, and confirm the license panel appears
   without an ABI mismatch error.