Central Docs
Catálogo Inicio

Paquetes RIF

.pack es el paquete portable de un target RIF. Es un ZIP reproducible con las fuentes RIF y, si se solicita, una base SQLite precompilada.

Crear un paquete

rif --pack main.rif
rif --pack main.rif -o targets/amd64.pack

Puede contener:

manifest.json
sources/main.rif
sources/other.rif
funcs.py                 (opcional)
assets/...               (payloads de `.file` en inserts)
compiled.sqlite          (si se precompila)

El manifiesto registra formato, hashes de fuentes, grafo de @LOAD, orden de dependencias, funciones y base compilada. Los archivos referenciados por .file dentro de @insert se copian como assets opacos con su tamaño y hash SHA-256. No se ejecutan al crear el paquete.

Ventajas

El paquete valida y resuelve las cargas antes de usar el target. Con precompile=True también guarda Rules, configuración, linker, definiciones y filas de tablas. Así puede abrirse sin parsear todas las fuentes otra vez.

Es útil cuando hay muchas fuentes, tablas grandes, muchos MIR contra el mismo target o se necesita distribuir un solo archivo.

Validación

RIF valida rutas y hashes SHA-256. Rechaza dependencias ausentes, ciclos, fuentes modificadas, esquemas SQLite incompatibles y metadatos inválidos.

El .pack contiene la definición del target, no el MIR externo ni el binario final.