Home / Companies / Stream / Blog / Post Details
Content Deep Dive

Stream Is Deprecating Virtual Go – It’s Time to Move to Go Modules

Blog post from Stream

Post Details
Company
Date Published
Author
Tommaso B.
Word Count
730
Language
English
Hacker News Points
-
Summary

Stream initially developed the "virtualgo" (vg) library to address the lack of effective dependency management in Go, which was a significant concern when they transitioned from Python to Go for their backend infrastructure. As Go has evolved, particularly with the introduction of native Go modules in version 1.11, many of the previous challenges related to dependency management have been resolved, offering features such as semver enforcement, immutability, and a checksum database. Although initially hesitant due to limited library support, Stream was able to fully migrate to Go modules by mid-2019, simplifying their development process and eliminating the need for certain build optimizations. While vg will remain available on GitHub, Stream encourages developers to adopt Go modules for their superior functionality and community support. The transition was straightforward for Stream, leveraging the go mod tool to convert dependency manifests from their previous setup with vg and dep.