Reporte Mensual Neo Global - Desarrollo

Junio 2022

Reporte Mensual Neo Global - Desarrollo

Resúmenes

La conveniencia del desarrollador fue un tema común en junio. Tanto los repositorios centrales de Neo como los proyectos desarrollados por la comunidad recibieron nuevas funcionalidades para abordar los puntos débiles o reducir el tiempo dedicado por los constructores que integran Neo en sus aplicaciones.

En el núcleo Neo, las modificaciones a los contratos nativos y el sistema RPC fueron las mejoras más destacadas en esta dirección. Un nuevo método de contrato nativo para verificar la existencia de un método en un contrato inteligente evita el costo y el esfuerzo de desarrollo al analizar un ABI completo, y dos métodos RPC para manejar iteradores hacen posible que los integradores recuperen datos de un iterador sin toparse con límites de nodos.

Del mismo modo, los ajustes a la infraestructura de la comunidad siguieron el patrón. NGD Enterprise introdujo la nueva función de descarga de contratos como parte del Kit de herramientas Neo Blockchain; una poderosa herramienta que permite a los desarrolladores probar sus aplicaciones contra contratos MainNet o TestNet en vivo sin salir de la seguridad de un entorno de desarrollo local.

Una actualización del paquete de desarrollo neow3j de AxLabs introdujo interfaces de contrato, una nueva forma útil para que los desarrolladores de Java interactúen con los contratos inteligentes implementados. Esta funcionalidad complementa naturalmente la función de descarga de contrato del kit de herramientas; Los autores de contratos inteligentes pueden descargar un contrato de MainNet en su instancia de Neo Express y, a continuación, escribir un contrato Java con una interfaz de contrato dinámica que puede interactuar con el contrato descargado y sus datos de almacenamiento reales.

Otros esfuerzos notables en el frente de la conveniencia del desarrollador incluyen la adición de soporte de API WalletConnect al SDK de NeoFS por Neo SPCC, y una anulación de la tarifa del sistema introducida en la dAPI de NeoLine por NEXT para otorgar flexibilidad a los desarrolladores de dApp.

El informe mensual global completo de Neo para junio se puede encontrar a continuación.

DESARROLLO DE PROTOCOLOS

DESARROLLO DE PROTOCOLOS

Neo Núcleo

Ajustes menores de contrato nativo para mejorar la comodidad del desarrollador y corregir errores

Tres pequeños cambios en los contratos nativos llegaron en junio. Los métodos de contrato nativos ahora se ordenan mediante comparaciones ordinales, lo que brinda compatibilidad con ASCII para evitar diferencias de estado que podrían ser causadas por diferencias en la configuración de la región.

Además, se corrigió un error que impedía que se emitieran notificaciones cuando se registran nuevos candidatos a la gobernanza, y el nuevo
hasMethod
se agregó al contrato nativo de ContractManagement. Este método facilita a los desarrolladores verificar si existe un método determinado en un contrato inteligente sin la necesidad de analizar todo el ABI, lo que reduce los costos de GAS en el proceso.


NeoVM optimizado para mejorar la velocidad de arranque, la ejecución y los errores implementados abordados

Se completaron las optimizaciones para neoVM, mejorando la velocidad de sincronización fuera de línea. Los errores de ejecución de máquinas virtuales en escenarios específicos también se resolvieron modificando el método utilizado para inicializar los campos estáticos relativos a subprocesos, y se agregó una nueva comprobación de desplazamiento de métodos en la implementación de contratos para evitar errores fuera de los límites durante la implementación.


Manejo mejorado del iterador sobre tierras RPC en neo-módulos, entre otras mejoras

Varias modificaciones dirigidas a los complementos principales de Neo se enviaron en junio. El cambio más notable fue en el manejo de los datos del iterador devueltos por un contrato inteligente a través de RPC. Dos nuevos métodos, se han agregado traverseiterator

y terminatesession

para permitir a los desarrolladores recuperar todos los datos de un iterador sin toparse con limitaciones de nodo.

Otros cambios incluyeron una corrección de errores para el método StateService findstates

, se agregó el nuevo método getcandidates

RPC para mejorar la comodidad del desarrollador para las integraciones relacionadas con la gobernanza y un aumento en el número de nodos de consenso que responderían a RecoveryRequests en el módulo DBFT, mejorando la confiabilidad del consenso.

DESARROLLO DE INFRAESTRUCTURA Y HERRAMIENTAS

DESARROLLO DE INFRAESTRUCTURA Y HERRAMIENTAS

Resúmenes

DESARROLLO DE INFRAESTRUCTURA Y HERRAMIENTAS

Hitos del proyecto

NODO

NeoGo por Neo SPCC

La implementación alternativa de Neo SPCC en Go estaba en el extremo receptor de una larga lista de cambios. Junto con varias confirmaciones que rastrearon las actualizaciones de Neo 3.3.0 y 3.3.1, el equipo impulsó una serie de nuevas características y correcciones de errores. En particular, en junio se completaron optimizaciones de rendimiento para mejorar las degradaciones de TPS de los cambios recientes en el protocolo, correcciones de errores en el subsistema RPC, correcciones de dBFT y una serie de mejoras de registro, compilación y CLI.

https://github.com/nspcc-dev/neo-go

SDK

neow3j por AxLabs

Neow3j v3.18 fue lanzado a finales de junio, trayendo soporte para los diversos cambios introducidos en Neo v3.3.1. La mejora más notable del devpack fue la introducción de nuevas interfaces de contrato para agilizar las llamadas a otros contratos inteligentes implementados. El equipo también ajustó la concatenación de cadenas haciendo que la operación fuera exclusiva de los tipos de cadenas, destinada a evitar diferencias en las codificaciones esperadas en JVM frente a NeoVM.

https://github.com/neow3j/neow3j

COMPILADOR

Boa por COZ

Los mantenedores del compilador de contratos inteligentes Python para N3 identificaron una serie de mejoras potenciales durante el hackathon Polaris y en el desarrollo de proyectos internos como Props. Los ejemplos incluyen la adición de un método para convertir valores de ECPoint y de clave pública al formulario hash de script, y la capacidad de definir la longitud de una bytearray en su constructor. La última versión de Boa también trae soporte para Python 3.10 y una variedad de correcciones misceláneas.

https://github.com/CityOfZion/neo3-boa/

CONTRATO INTELIGENTE Y MARCO DAPP

Neo Blockchain Toolkit por NGD Enterprise

La nueva y poderosa función de descarga de contratos llegó al Kit de herramientas Neo Blockchain este mes. Esta nueva característica, desarrollada por NGD Enterprise en colaboración con COZ, permite a los desarrolladores descargar fácilmente contratos inteligentes y sus registros de almacenamiento de N3 MainNet o TestNet y agregarlos a una red privada local basada en Express.

La descarga de contratos hace que probar integraciones de aplicaciones o escribir contratos inteligentes que invocan dinámicamente contratos existentes sea mucho más fácil. Los desarrolladores pueden mantener el control total de su entorno de desarrollo local mientras utilizan datos de producción reales para garantizar un comportamiento correcto.

https://marketplace.visualstudio.com/items?itemName=ngd-seattle.neo-blockchain-toolkit

BILLETERA

Neon Wallet Móvil por COZ

COZ completó la implementación central de su billetera móvil en junio y ahora está cambiando su prioridad al refinamiento de la experiencia del usuario. Se completaron varias correcciones de errores y mejoras de rendimiento, y se agregaron nuevas características: soporte nativo para NFT y soporte para autenticación PKI a través de WalletConnect.

https://github.com/CityOfZion/neon-wallet

NeoLine de NEXT

Hasta junio, el equipo de NEXT repitió la nueva funcionalidad agregada en el mes anterior. Se mejoró el soporte de la billetera de hardware Ledger y se completaron varias correcciones de errores. Una adición notable fue el campo overrideSystemFee agregado a la dAPI, lo que permite a las aplicaciones la opción de personalizar las tarifas del sistema según sea necesario.

https://neoline.io/

NEOFS

NeoFS por Neo SPCC

Un gran número de mejoras en el núcleo y el servicio de NeoFS se completaron en junio. En el núcleo, Neo SPCC refactorizó la CLI para mejorar su capacidad de mantenimiento y unificar las interfaces comunes. El soporte para la API de WalletConnect se integró en el SDK y se agregaron optimizaciones de almacenamiento local para mejorar el rendimiento y reducir el consumo de recursos.

En el frente del servicio, la puerta de enlace de S3 recibió optimizaciones de lista de buckets, mientras que la puerta de enlace HTTP vio ajustes de tamaño de búfer en los componentes internos para mejorar las velocidades de carga / descarga de objetos. La puerta de enlace REST recibió soporte para firmas WalletConnect, proporcionando una solución nativa para controlar los activos de NeoFS desde aplicaciones web. Finalmente, el equipo actualizó los detalles y la información de precios para el próximo lanzamiento del servicio Morph.CDN, junto con la integración del soporte de zonificación de borde.

https://fs.neo.org/

AUDITORÍA

Auditoría por Red4Sec

Este mes, el equipo de Red4Sec comenzó el proceso de auditoría para los contratos inteligentes de Saffron Finance y revisó las correcciones enviadas para el intercambio GhostMarket GhostMarket y Muffin. Además, las últimas modificaciones al proyecto PayProxy también están siendo revisadas.

https://red4sec.com/en