Saltar a contenido

Novedades de 0.7.1

Publicada el 2026-10-06: SDK Python rayito 0.7.1, SDK TypeScript rayito 0.7.1 y rayd 0.7.1.

Una release de parche sobre 0.7.0, sin cambios de API: rayd lleva ahora los avisos de licencia de las bibliotecas que incluye, y la release firma la lista de sumas de sus ficheros. Los dos SDK sólo cambian de número, salvo una comprobación nueva en rayito image zip.

Los avisos de licencia viajan con rayd

rayd es Apache-2.0 y enlaza estáticamente unos 210 crates de terceros (MIT, Apache-2.0, BSD, ISC, Unicode-3.0, Zlib y un CC0). Esas licencias piden que su aviso acompañe al binario allí donde se distribuya, y desde 0.7.1 lo acompaña en las tres copias:

Dónde Qué encuentras
GitHub Release rayd-v0.7.1 assets LICENSE, NOTICE y THIRD_PARTY_LICENSES.md
rayito-image.zip carpeta licenses/ con los mismos tres ficheros
Imagen publicada desde ese zip /usr/share/doc/rayd/, propiedad de root y de sólo lectura para el resto

Dentro de un sandbox:

from rayito import Sandbox

with Sandbox.create(template="rayito-base") as sandbox:
    print(sandbox.commands.run("ls /usr/share/doc/rayd/").stdout)
    # LICENSE  NOTICE  THIRD_PARTY_LICENSES.md
import { Sandbox } from "rayito";

const sandbox = await Sandbox.create({ template: "rayito-base" });
try {
  const result = await sandbox.commands.run("ls /usr/share/doc/rayd/");
  console.log(result.stdout); // LICENSE  NOTICE  THIRD_PARTY_LICENSES.md
} finally {
  await sandbox.kill();
}

THIRD_PARTY_LICENSES.md no se versiona: lo genera cargo-about desde el Cargo.lock del tag cada vez que se empaqueta, y la build falla si no lista exactamente los crates que se compilan en rayd o si alguno no aparece en el .dep-v0 del binario. Cómo comprobarlo tú mismo: Verificar una release.

SHA256SUMS va firmado

La release de rayd publicaba ya SHA256SUMS. Desde 0.7.1 lleva además su firma de Sigstore, SHA256SUMS.sigstore.json. La lista cubre todos los assets salvo ella misma y su firma, así que una sola verificación cubre también el SBOM y los avisos de licencia, que no tienen firma propia:

RAYD_VERSION=0.7.1

cosign verify-blob --bundle SHA256SUMS.sigstore.json \
  --certificate-identity "https://github.com/alejandro-cedeno-10/rayito/.github/workflows/release.yml@refs/tags/rayd-v${RAYD_VERSION}" \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com \
  SHA256SUMS

sha256sum -c SHA256SUMS

rayito image zip exige los avisos

Si empaquetas tu propia imagen, rayito image zip (y make image-zip) se niega a empaquetar un directorio de imagen que lleva rayd sin licenses/LICENSE, licenses/NOTICE y licenses/THIRD_PARTY_LICENSES.md. El Dockerfile de la imagen los copia a /usr/share/doc/rayd/, así que sin ellos la build fallaría después, ya en AWS. Desde el repositorio, make image-licenses los deja en su sitio, y make image-zip lo hace solo. Un directorio sin rayd se empaqueta igual que antes.

Cómo actualizar desde 0.7.0

pip install -U "rayito[cli]"
pnpm add rayito@latest

Nada más es obligatorio. La serie de compatibilidad sigue siendo 0.7, así que un SDK 0.7.1 funciona con una imagen de rayd 0.7.0 y al revés. Republica la imagen (Imágenes) cuando quieras que los avisos estén dentro del sandbox.

Detalle completo: Changelog.