Autor
Molly Karcher
Fecha de publicación
Estamos consolidando nuestras herramientas de desarrollador de Golang - incluyendo los clientes de Horizon y RPC, SDK de Ingest y utilidades clave - en un único SDK de Go unificado para Stellar. Este cambio simplifica la experiencia del desarrollador, mejora la capacidad de descubrimiento y alinea el ecosistema Go con la estructura de otros SDKs de Stellar.
Durante años, los desarrolladores que construyen en Stellar con Go han trabajado dentro de un único y extenso monorepo. Ese repositorio albergaba casi todo, pero no siempre estaba claro dónde estaban los límites.
En la práctica, esto significaba que los desarrolladores a menudo tenían que:
Esta estructura desdibujaba líneas importantes: no era obvio qué paquetes de Go formaban parte del paradigma de la Plataforma de Datos Componible (y por lo tanto diseñados para reutilización) versus cuáles estaban estrechamente vinculados a Horizon u otros servicios. Esa falta de claridad dificultaba que la comunidad adoptara o extendiera nuestras herramientas de datos, aunque muchas de ellas se construyeron pensando en la reutilización.
Mientras tanto, los desarrolladores en otros lenguajes disfrutaban de una configuración más simple y clara. La mayoría de los SDKs de Stellar (JavaScript, Python, Java, etc.) ya ubican sus clientes de Horizon y RPC en un único repositorio bien definido, con puntos de entrada explícitos y documentación.
El nuevo SDK de Go soluciona esto. Significa que solo los paquetes orientados al desarrollador reutilizables permanecen en el monorepo, dejando claro qué es parte de la superficie oficial del SDK de Stellar. Se trata de la capacidad de descubrimiento, mantenibilidad y de dar a los desarrolladores de Go la misma experiencia cohesiva disfrutada en otros lugares del ecosistema de Stellar.
El repo de Go - previamente stellar/go - será renombrado a stellar/go-stellar-sdk para alinearse con las convenciones de nombres adoptadas por la mayoría de los otros SDKs de Stellar y hacer su intención más clara para los usuarios finales. Esto significa que cualquier desarrollador que actualmente esté usando cualquiera de los siguientes clientes, bibliotecas o utilidades necesitará renombrar todas las declaraciones de importación de paquetes de github.com/stellar/go/* a github.com/stellar/go-stellar-sdk/*.
El nuevo SDK de Go Stellar contiene:
Al mismo tiempo, se están realizando varios cambios estructurales para simplificar el ecosistema de Go y aclarar la propiedad:
Esta reorganización no es solo una limpieza, es un paso hacia una experiencia de desarrollador más clara y unificada en todo el ecosistema de Stellar. Con esta nueva estructura del SDK, podemos:
Si eres un desarrollador de Go que actualmente usa Horizon, RPC, el SDK de Ingest o cualquier otra utilidad de Golang mantenida por SDK, nos encantaría tu feedback (¡o contribuciones!) mientras continuamos dando forma a esta experiencia unificada de SDF. Comparte tus pensamientos en nuestro Discord de Desarrolladores o participa en la Discusión de Github.