Cover photo

Inside Fuel: Q1 2023

Bienvenido a Inside Fuel, nuestro repaso trimestral de los avances técnicos y de todo lo que sucede en Fuel Network. Tómese un momento para ponerse al día de las últimas noticias.

📖 Disclaimer : Esta publicación es una traducción realizada por un miembro de la comunidad de Fuel. Se realizan verificaciones cuidadosas para proporcionar traducciones precisas, pero pueden contener errores u omisiones. Fuel Labs no se hace responsable de la exactitud, confiabilidad o puntualidad de la información traducida.

Original: Inside Fuel Q1: 2023


post image

Construir la execution layer modular más rápida no sería posible sin un increíble equipo de colaboradores. Estas son las nuevas incorporaciones al equipo este trimestre:

post image

post image

🦀 Rust in Blockchain

Según la revisión mensual de Rust in Blockchain, Fuel es uno de los proyectos basados en Rust más activos de este trimestre, situándonos una vez más en el Top 5 de las blockchains basadas en Rust más activas.

✨Presentación de la nueva marca Fuel

Desvelamos oficialmente la nueva identidad visual de Fuel, la execution layer modular más rápida.


post image

🎙️ Layer 2 Day

Justo antes de ETH Denver, organizamos el Layer 2 Day, un evento de un día de duración que reunió a los principales maximalistas de la escalabilidad de Ethereum de todo el mundo para hablar sobre el futuro de blockchain, el diseño de lenguajes, account abstraction y más.

post image

Vea la repetición de todas las charlas y paneles:

🏔️ ETH Denver

ETH Denver fue una oportunidad increíble para reunirnos, crecer y compartir ideas con la comunidad de Fuel. Si estuviste allí, quizás también tuviste la oportunidad de beber los cócteles Moscow Fuel y recibir el exclusivo swag de Fuel.

post image

ETH Denver fue también una oportunidad para que los desarrolladores experimentaran la construcción en Fuel utilizando Sway. Aquí un resumen de los proyectos ganadores:

https://twitter.com/fuel_network/status/1633863056496132101?s=20


post image

Una muestra de algunos de los mejores contenidos compartidos en las redes sociales por algunos colaboradores internos y externos de Fuel:

Puede encontrar mucho más contenido sobre Fuel aquí.


post image

Fuelup

¿Qué es Fuelup?

Fuelup es el gestor de paquetes y multiplexor oficial de Fuel que instala La Toolchain de Fuel desde los canales de publicación oficiales. Permite instalar fácilmente toolchains pre-empaquetadas, mantenerlas actualizadas, o incluso crear toolchains personalizadas e intercambiar entre ellas.

Los binarios se ejecutan a través de Fuelup como proxies permitiendo flexibilidad en la ejecución de las herramientas.

Simplifica la construcción y el mantenimiento de aplicaciones Sway con forc y fuel-core para plataformas comunes.

  • El script de instalación de fuelup y la documentación ahora se encuentran en https://install.fuel.network/latest;

  • fuelup show muestra la versión del SDK de fuels-rs con la que se probó la versión de lanzamiento [Leer más];

  • fuelup show ahora muestra la versión de fuels-rs que se utilizó en las pruebas de compatibilidad. Esto da a los usuarios una idea de qué versión de fuels será sin duda compatible con la toolchain;

🌴 Sway

Actualizaciones generales

  • Se agregó un nuevo gestor de pases para el optimizador IR;

  • Se introdujo la notación #[allow(dead_code)];

  • Se agregó soporte para la sintaxis Enum::<T>::Variant;

  • Se mejoró el rendimiento del asignador de registros;

  • Se deshabilitó el uso de paréntesis en las variantes enum unitarias;

  • Se agregó soporte para supertraits para ABIs;

Corrección de errores

  • Varias correcciones y mejoras en el análisis de dead code;

  • Se corrigieron múltiples errores en el sistema de tipos;

  • Corrección de algunos problemas relacionados con las reglas de name shadowing en Sway;

Biblioteca estándar

  • Se amplió el soporte para campos de tipo Input::Message en std::inputs;

  • Se actualizó std::storage::get y std::storage::StorageMap::get para devolver un Option;

  • Se introdujo __state_clear, std::storage::clear y std::storage::StorageMap::remove;

  • Se introdujo std::storage::StorageBytes;

  • Se agregaron implementaciones del trait Not para U128 y U256;

  • Se agregó el trait TryFrom;

Herramientas

  • Se agregó formato Markdown a las vistas previas de elementos en forc doc;

  • Se agregó soporte para atributos del módulo interno doc con sintaxis #! y //!

  • Se agregó resaltado de sintaxis a los bloques de código en forc doc;

  • Varias mejoras en el LSP, incluida la colección de más tokens del lenguaje;

  • Permitir formatear un único archivo mediante forc fmt --path;

Forc

  • Se agregó un comando plugin forc-submit para enviar txs a un nodo dado;

  • Se agregó una flag salt a forc deploy y una flag maturity a forc deploy y forc run;

  • Se agregó una flag forc build para tratar las advertencias como errores;

Fuel Core

Funciones:

  • Implementación de un Keygen CLI para configurar nodos;

  • Gráficos Helm para despliegues multinodo con sentries;

  • Sesiones persistentes para enrutar las request de API a los sentries;

  • Apagado eficiente para todos los componentes fuel-core;

  • Lógica API desacoplada de los resolvers de GraphQL para soportar RPCs alternativos;

  • Soporte para TxPointer en inputs;

  • Se han implementado mensajes de reintento;

  • Pruebas de retirada que soportan commits periódicos a L1;

  • Merklización completa del estado de un contrato, los saldos, y los encabezados de bloque;

  • Los rangos de memoria de longitud cero ahora pueden pasar la comprobación de ownership si la posición es correcta;

  • Nuevos opcodes de salto relativo, nueva instrucción CFE y una actualización de LDC para soportar código position-independent en el compilador;

Mejoras:

  • Numerosas mejoras significativas en el rendimiento de la base de datos;

  • Mejora en la seguridad del bridging con una columna separada para el estado del gasto de mensajes;

  • Eliminación de la mayoría de los usos de unsafe con alternativas de igual rendimiento en la VM;

  • Eliminación de cuellos de botella recursivos en la VM;

  • ChainID ahora se utiliza durante los IDs de transacción y del hashing del dueño del predicado;

  • $HP ahora registra puntos al primer byte disponible en el heap;

  • SMO se ha actualizado para cargar desde un balance interno en un contexto interno;

  • Se ha mejorado el equilibrio de carga, las métricas, el formato de registro de campos muy grandes y el recorte de UTXO;

Refactorización:

  • Refactorización de la VM para mejorar la testeabilidad unitaria;

SDK (Fuel-TS y Fuel-RS)

🦀SDK de Rust

Características:

  • Soporte de retornos raw_slice desde scripts y contratos;

  • Soporte para reenvío de activos personalizados en llamadas a contratos;

  • Soporte para #[payable] de Sway;

  • Soporte para las constantes configurables de Sway - utiliza el SDK para actualizar los valores de las constantes sin necesidad de recompilar tu código Sway;

  • derive able Parameterize y Tokenizable;

  • Nuevas APIs de script: ScriptTransaction y CreateTransaction;

  • Soporte de type path y resolución de tipos conflictivos;

  • Vec como output types para métodos de contrato;

  • Una nueva forma de filtrar los spendable resources;

  • Habilitación de pagos con predicates;

  • Soporte para devolver tipos Vec<> desde contratos;

  • Devolución del result desde try_from_type_application;

  • Se agregó el último tiempo de bloque y spendable resources con exclusión;

Mejoras:

  • Mejor testeabilidad con el nuevo soporte para registros assert_eq;

  • Mejor configuración de despliegue de contratos;

  • Manera más amigable de recuperar el último tiempo de bloque;

Corrección de errores:

  • Los slots de almacenamiento tienen que ser ordenadas en una tx de creación;

  • Se hizo público load_contract;

  • La consulta de monedas ya no devuelve las monedas gastadas;

Refactorización:

  • Paquetes/reexportaciones fuels wasm-offending ocultos detrás de la bandera std;

  • Mejora de la decodificación de registros y simplificación de ParamType;

  • Configuración del despliegue de contratos;

  • Eliminación del tipo Byte del SDK;

  • Eliminación del archivo sin usar cargo;

  • Reorganización de las pruebas de conexiones;

  • Actualización de la plantilla PR;

Documentación:

  • Actualización de documentación sobre vectores;

🧰 TypeScript SDK

Características:

  • Soporte completo para predicates y script ABI en el nuevo typegen;

  • Soporte de argumento main para predicates y scripts;

  • Agregado de soporte de ABIs de predicates a Typegen;

  • Agregado de soporte de ABIs de scripts a Typegen;

  • Implementación de vector como output slice;

Mejoras:

  • Predicates ahora funcionan de forma similar a las wallets - ahora son utilizables para pagar fees y más;

  • Cambiado el motor de documentación;

  • Reorganización de constantes en todo el repositorio;

  • Estandarización de las configuraciones de los paquetes;

Corrección de errores:

  • Se corrigió el codificador ABI B512 y Typegen a esperar su tipo correcto en Sway;


Síguenos en

Sobre Nosotros

Fuel es la execution layer más rápida para el stack modular de blockchain. Potente y elegante, la tecnología permite la ejecución paralela de transacciones, empoderando a desarrolladores con el mayor rendimiento flexible y la máxima seguridad necesaria para escalar. Los desarrolladores eligen FuelVM por su experiencia superior para el desarrollador y la capacidad de ir más allá de las limitaciones de la EVM.

Conviértete en un Colaborador