Notas de la versión - v0.203.0
v0.203.0
Sección titulada «v0.203.0»Título: Ampliar la compatibilidad y reforzar la validación
Versión: v0.203.0
Esta versión amplía las API de consultas y contabilidad con tipos explícitos, mejora la fiabilidad de la decodificación y los hashes, y refuerza la validación de certificados, direcciones, cabeceras, firmas y propósitos de scripts.
💪 Mejoras
Sección titulada «💪 Mejoras»-
Mejoró los resultados de distribución de stake de DRep en LocalStateQuery:
DRepStakeDistrEntryyDRepStakeDistrResultofrecen resultados tipados con validación estricta del wrapper y el mapa CBOR, rechazo de duplicados, codificación canónica y cobertura de resultados de consultas tipadas. Las aplicaciones deben eliminar la capa de decodificación adicional que requerían los resultados CBOR sin tipo. -
Garantizó la finalización de BlockFetch no canalizado:
GetBlockRangeinvocaBatchDoneFuncexactamente una vez cuando el apagado termina una solicitud iniciada. -
Conservó los atributos desconocidos de direcciones Byron: Los atributos
Unparsedconservan sus bytes originales y permiten el recorrido de ida y vuelta sin pérdida de datos. -
Amplió los nombres de estado de la matriz de pruebas de Go: Los nombres ahora incluyen la versión de Go, la plataforma y la arquitectura, lo que facilita identificar los resultados.
-
Estabilizó la decodificación en 32 bits: La decodificación de genesis y LocalStateQuery usa enteros de ancho fijo de forma segura en
GOARCH=386, y actualiza varios tipos de campos exportados. -
Recalculó los valores de LeiosHash a partir del CBOR actual: Los hashes ya no dependen de un estado en caché, lo que evita resultados obsoletos y condiciones de carrera después de cambios en el CBOR.
-
Deduplicó los firmantes de información de transacciones:
txInfoSignatoriesya no contiene entradas duplicadas.
⚠️ Cambios incompatibles y migración
Sección titulada «⚠️ Cambios incompatibles y migración»-
Amplió los valores de certificados operativos y periodos KES: Los números de secuencia, los periodos KES y las entradas de validación ahora usan
uint64en lugar deuint32. Los consumidores deOpCertExtractoryValidateHeaderInputdeben actualizar sus tipos. -
Eliminó el límite de tamaño de transacción durante la decodificación de Dijkstra: Se eliminó el límite fijo de 16 KiB y la validación UTxO sigue aplicando
max_tx_size. Las transacciones Dijkstra sobredimensionadas conservan su clasificación, la decodificación de matrices de componentes malformadas queda limitada ydijkstra.MaxTxSizedeja de estar disponible. -
Decodificó los deltas de recompensas MIR como valores con signo: Los deltas MIR ahora usan
*big.Int, la validación según la versión del protocolo se aplica a los deltas negativos y los valores del mapaRewardscambian deuint64a*big.Int. Los consumidores deben actualizar el código que lee o crea estos valores. -
Conservó el tipo de credencial de las cuentas de recompensa de pools: La codificación ahora exige metadatos canónicos de cuenta de recompensa de 29 bytes. Los certificados creados mediante código o JSON deben llamar a
SetRewardAccountCredentialantes deMarshalCBOR. -
Aplicó la verificación estricta de Ed25519 fuera de Byron: Las firmas que no pertenecen a Byron ahora usan verificación estricta, mientras Byron conserva su comportamiento permisivo.
-
Rechazó las cabeceras de bloque nulas: La decodificación de cabeceras ahora rechaza cabeceras nulas. La decodificación interna controlada puede usar
SkipHeaderValidationcuando necesita explícitamente ese comportamiento. -
Exigió redeemers para todos los propósitos de scripts: La validación ahora exige redeemers para minting, certifying, rewarding, voting, proposing y Dijkstra guarding; los redeemers ausentes hacen que falle la validación.
Compatibilidad de red recomendada ⚠️
Sección titulada «Compatibilidad de red recomendada ⚠️»| Red | Compatible |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
Versión: v0.203.0
Comparar: v0.202.10…v0.203.0
Docs authored by Doc Holiday