Skip to main content

Crate gvsn

Crate gvsn 

Source
Expand description

Library crate exposing gvsn’s internals for the benchmark targets under benches/. The gvsn binary (src/main.rs) is a thin wrapper around run; every module listed here is the exact same code that ships in the binary, just also reachable from outside src/main.rs.

This crate is not published or intended for use as a dependency by other projects - it exists solely so cargo bench has something to link against.

Modules§

archive
Archive download and extraction.
cli
Command-line interface definition.
commands
Command handlers.
config
User configuration and directory layout.
dispatch
Command dispatch trait and registry.
fs
File-system utilities.
gvsn_release
Shared lookup of gvsn’s own latest GitHub release.
http
Shared HTTP client, verbose-logging helpers, and download options.
lock
File locking utilities using fs2 for cross-platform advisory locks.
profile
Structured shell profile management.
prompt
Shared confirmation-prompt helper for destructive commands.
remote
Remote Go release index.
shell
Shell integration layer.
tempdir
RAII wrapper for temporary directories using tempfile.
toolchain
Local toolchain storage and version resolution.
update_check
Background “a new gvsn version is available” notifier.
user_version
User-facing version specification.
version
Canonical Go version representation.

Functions§

run
Loads configuration and runs the selected command.