Skip to content

Latest commit

 

History

History
154 lines (125 loc) · 5.99 KB

File metadata and controls

154 lines (125 loc) · 5.99 KB

Tue Jan 27 2026 GVM Contributors (imansprn)

Based on moovweb/gvm - Original work by Josh Bussdieker and contributors

Version: 2.0.0 State: Major Release

CHANGES:

  • NEW: Enhanced Go modules support with auto-detection from go.mod and go.work files
  • NEW: Configuration file support ($GVM_ROOT/config/gvm.conf) for user preferences
  • NEW: Parallel download support with progress indicators and resume capability
  • NEW: Caching system for version lists and metadata to improve performance
  • NEW: Progress bars and enhanced visual feedback for long-running operations
  • NEW: Interactive mode and improved help system with examples
  • NEW: Comprehensive documentation (user guide, migration guide, API docs)
  • ENHANCED: Better integration with Go workspaces (go.work files)
  • ENHANCED: Improved user experience with color-coded output and better error messages
  • ENHANCED: Optimized version resolution and environment loading
  • ENHANCED: Better download utilities with retry logic and verification
  • ENHANCED: Global flags support (--verbose, --quiet, --interactive)
  • SECURITY: Removed eval usage in gvmsudo to prevent command injection vulnerabilities
  • SECURITY: Added SHA256 checksum verification for binary downloads from go.dev/dl
  • SECURITY: Implemented comprehensive input validation for URLs, version names, and file paths
  • SECURITY: Fixed command injection vulnerability in alias-list script
  • Updated deprecated Google Code references to modern protobuf packages
  • Migrated CI/CD from deprecated Travis CI to GitHub Actions
  • Fixed macOS version detection to support macOS 11+ (Big Sur and later)
  • Standardized error handling with consistent exit codes across all scripts
  • Implemented logging framework with automatic rotation and cleanup
  • Updated bash practices (replaced deprecated 'which' with 'command -v')

Tue Jan 27 2026 GVM Contributors

Version: 1.0.24 State: Stable

CHANGES:

  • NEW: Added automated GitHub Actions release workflow for creating releases from tags
  • NEW: Added release documentation (docs/RELEASES.md)
  • IMPROVED: Enhanced CI workflow with better error handling and logging
  • IMPROVED: Added cache/ directory to .gitignore

Tue Jan 27 2026 GVM Contributors

Version: 1.0.23 State: Stable

CHANGES:

  • SECURITY: Removed eval usage in gvmsudo to prevent command injection vulnerabilities
  • SECURITY: Added SHA256 checksum verification for binary downloads from go.dev/dl
  • SECURITY: Implemented comprehensive input validation for URLs, version names, and file paths
  • SECURITY: Fixed command injection vulnerability in alias-list script
  • Updated deprecated Google Code references (code.google.com, goprotobuf.googlecode.com) to modern protobuf packages
  • Migrated CI/CD from deprecated Travis CI to GitHub Actions
  • Fixed macOS version detection to support macOS 11+ (Big Sur and later)
  • Standardized error handling with consistent exit codes across all scripts
  • Implemented logging framework with automatic rotation and cleanup
  • Updated bash practices (replaced deprecated 'which' with 'command -v')
  • Added new validation functions for secure input handling
  • Enhanced error messages and logging throughout the codebase

Fri Apr 6 04:06:29 PDT 2012 Joshua Bussdieker jbussdieker@gmail.com

* Created automake template

Version: 1.0.x State: LTR

CHANGES:

  • Minor bug fixes and cleanup. 1.0.x will always be a safe upgrade path.

Version: 0.0.8 State: Stable

CHANGES:

Version: 0.0.7 State: Stable

CHANGES:

  • Fixed issue with gvm use where multiple versions matched.
  • Added gvm diff for checking the state of a GOROOT.
  • Install now uses hg clone to copy source.
  • Fixed remaining error handling. Error now output to stderr.
  • Fixed error/state checking in gvm pkg list and gvm pkgset list
  • Removed all command's gvm- prefix
  • Revamped the folder structure for scripts so they don't show up in the path
  • Added gvm prompt for including Go version and/or package set info in the bash prompt
  • Added ability to build from source when running gvm pkg install <name> in a folder named .

Version: 0.0.6 State: Stable

CHANGES:

  • Added gvm pkg install to replace gvminstall
  • Added a log folder for Go download/install logs
  • Running install for the same Go version twice no longer rebuilds
  • Failed Go installs now get deleted.
  • Cache Go source.
  • Added fuzzy match for gvm uninstall
  • Allow gvm use shorthand (ex. gvm use 60.3)
  • Fixed bug with gvm install when GOBIN is set
  • Added gvminstall for version management installs
  • Added gvmake as a shortcut to running Makefile.gvm files

Version: 0.0.5 State: Stable

CHANGES:

  • Added gvm get for updating gvm source code
  • Added package sets which are containers for GOPATHs
  • Major folder restructuring. MUST gvm implode to upgrade!

Version: 0.0.4 State: Stable

CHANGES:

  • Lots more error handling
  • Added stable option for install
  • Added system install option
  • Cleaned up enviroment handling

Version: 0.0.3 State: Beta

CHANGES:

  • Go versions are now identified by the full tag name. Fuzzy matches of Go versions still works (ex. "60.3").
  • Fixed bug with ~/.gvm/gos folder not being created by Mercurial
  • Fixed error message in gvm list when no Go versions are installed
  • Added gvm listall to list all available Go versions

Version: 0.0.2 State: Alpha

CHANGES:

  • Added prerequisite checks for packages needed to build Go
  • Fixed error with version not displaying on new installs
  • Better error handling for the cloning and building of Go (log files too!)
  • Improved enviroment handling
  • Better install handling for .bashrc and .profile
  • Added ability to uninstall Go versions
  • gvm list is now a parsed ls list and indicates the current version
  • Switch to symbolic links to change Go versions

Version: 0.0.1 State: Experimental

CHANGES:

  • Hacky proof of concept implementation. Installs in subfolders and uses cp to switch between versions.