29 个仓库
Capabilities for managing and switching between multiple versions of development toolchains and SDKs.
Distinct from Project Version Managers: Distinct from Project Version Managers: focuses on the development environment toolchain version rather than the project's own versioning.
Explore 29 awesome GitHub repositories matching development tools & productivity · Toolchain Versioning. Refine with filters or upvote what's useful.
nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and runtime orchestrator for installing, switching, and managing multiple versions of the Node.js runtime on POSIX systems. The tool allows for the automation of runtime switching by reading configuration files in project directories to select the required version. It supports the management of long-term support releases and the migration of global packages between different installed versions of the runtime. The project covers broader capabilities including runtime management throug
Allows creating custom aliases (like 'lts/iron') to simplify referencing specific runtime versions.
pyenv is a Python version manager and runtime orchestrator that allows for the installation and switching of multiple Python versions on a single machine without affecting the system installation. It functions as a shell-based version controller that manages binaries through shims to redirect executable calls to specific versions. The tool is a plugin-extensible system, allowing users to add custom subcommands and logic via shell script plugins. This architecture enables the extension of the command line interface through a dedicated plugins directory. It provides capabilities for side-by-si
Allows changing the active Python runtime globally or for specific directories.
This project is a cross-platform development framework and managed runtime environment designed for building high-performance applications. It provides a comprehensive toolkit for constructing web services, cloud-native microservices, and desktop applications, utilizing a unified runtime that handles memory management and execution across diverse operating systems. The framework distinguishes itself through a native ahead-of-time compilation toolchain that transforms source code into optimized, self-contained machine code binaries. This capability enables fast startup times and reduced memory
Provides command-line tools for managing SDK versions and development environments.
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
Configures specific directories to use different compiler versions automatically for consistent project environments.
Volta is a cross-platform toolchain orchestrator and JavaScript toolchain manager. It functions as a version manager for Node.js and related package managers, allowing for the installation and coordination of multiple runtimes across a system. The project operates as a project-based version switcher, automatically detecting and switching to the required tool versions based on the current directory. This ensures environment consistency across different developer machines by resolving versions through project configuration.
Stores specific tool version requirements in a project manifest to ensure consistency across developer machines.
Bottlerocket is a container-optimized operating system and minimal Linux distribution designed specifically for hosting container workloads. It functions as an immutable infrastructure OS, utilizing a read-only root filesystem and atomic partition swapping to ensure consistent and reversible system updates. The system is distinguished by an API-driven host manager that replaces traditional shell-based configuration with a local REST API for administrative tasks. To maintain security and stability, it employs a dual-runtime isolation model that separates workload runtimes from system operation
Prevents nodes from updating to newer releases by pinning the system to a specific version.
rustup is a programming language toolchain manager that automates the installation, versioning, and configuration of the Rust compiler and its associated build tools. It serves as a toolchain installer and version manager, enabling the deployment of the language ecosystem across different operating systems. The system manages multiple compiler versions across stable, beta, and nightly release channels, allowing users to switch between these versions to meet different environment requirements. It also functions as a cross-compilation manager by installing pre-compiled standard libraries to bui
Organizes multiple compiler versions from different release channels to keep the environment current.
pyenv-virtualenv is a plugin for pyenv that creates and manages isolated Python virtual environments on Unix-like systems. It functions as an environment orchestrator that extends the core version switching system to provide project isolation. The tool automates the activation and switching of Python environments based on the current working directory. It also includes a bridge for managing and interacting with Conda environments through the pyenv interface. The project covers the full lifecycle of environment management, including the creation, listing, and deletion of isolated environments
Automatically updates system paths and environment variables based on the current working directory.
Manage your Java environment
Sets the default Java version for the entire system by updating the JAVA_HOME environment variable.
Prek is a Git hook manager written in Rust that runs configured hooks as a single binary without requiring Python or other external runtimes. It executes hooks faster than standard tools through parallel processing and bundled Rust implementations, and includes a built-in hook repository that enables fully offline operation without network access or environment setup. The tool supports both TOML and YAML configuration formats with identical semantics, and can run hooks from existing pre-commit configuration files without modification. Prek distinguishes itself through workspace-aware monorepo
Automatically discovers system toolchains and downloads matching versions when not available.
CRI-O is an open-source container runtime that implements the Kubernetes Container Runtime Interface (CRI) to manage container images, pods, and containers on cluster nodes using OCI-compatible runtimes. It serves as a node-level container manager that handles image pulling, container lifecycle, and resource monitoring for Kubernetes clusters, running containers according to the Open Container Initiative specifications. The runtime distinguishes itself through live configuration reloading that applies changes to runtime definitions, registry mirrors, and TLS certificates without restarting th
Stores version files in persistent storage to determine whether to wipe containers or images on upgrade.
godep 是一个 Go 语言依赖管理工具,用于记录、恢复和更新包版本,以确保不同环境下的构建可复现。它充当版本锁定工具,通过清单文件跟踪特定的包修订版本,从而同步开发工作区和构建状态。 该工具包含 vendoring 功能,可将外部 Go 源代码复制到本地目录,使项目无需联网即可构建。 该系统管理完整的依赖生命周期,涵盖版本锁定、工作区同步以及将已跟踪的包更新至新版本。
Tracks specific package revisions in a manifest file to synchronize development workspaces and build states.
本项目是一个用于学习 Rust 编程语言的本地化教育资源,提供翻译成简体中文的综合指南和技术规范。它作为学习语言惯用法、内存管理和类型系统的教学工具。 该仓库专注于软件文档本地化,将官方指南转换为简体中文,以提高非英语使用者的可访问性。它利用基于 Markdown 的系统来组织内容,并支持导出为静态 HTML、PDF 和 EPUB 格式,以供 Web 和离线查看。 内容涵盖广泛的 Rust 技术领域,包括所有权和借用等内存管理原语、涉及 trait 和泛型的先进语言设计,以及全面的错误处理策略。它还详细介绍了编程基础、数据建模以及用于构建和依赖管理的开发者生产力工具的使用。
Details how to manage and switch between different Rust release channels and toolchain versions.
ZCF is a unified command-line environment manager that initializes, configures, and orchestrates multiple AI coding assistants within a single interface. It provides structured workflows for development, manages parallel Git worktrees, integrates Model Context Protocol (MCP) servers, and routes AI requests across multiple API providers to avoid vendor lock-in. The tool distinguishes itself by enabling parallel development streams through Git worktrees, allowing simultaneous work on multiple branches with natural language control. It supports task-based model routing that selects the most appr
Checks for newer versions of all managed tools and updates workflow templates, system prompts, and tool versions from a single command.
Anchor is a framework for building, testing, and deploying Solana smart contracts. It provides a Rust domain-specific language (DSL) that uses macro‑based instruction dispatch and derive‑macro account validation to automate ownership checks, discriminator enforcement, and serialization before instruction execution. The framework also includes a CLI toolchain for scaffolding, compiling, and managing contracts across workspaces, a test harness that simulates program execution with account manipulation and compute unit benchmarking, and an IDL generator that emits a standardized JSON interface fr
Allows overriding the Rust toolchain version for workspace compilation.
Sbt 是一个专为 Scala 和 Java 设计的 JVM 构建工具和依赖管理系统。它作为一个多项目构建编排器,管理源代码的编译、从远程仓库解析外部库,并打包二进制文件以供分发。 该项目以其交互式构建系统而著称,该系统提供了一个用于实时状态检查和任务执行的读取-求值-打印循环(REPL)。它利用基于依赖图的执行模型来处理任务,并维护一个用于动态构建配置的类型安全键值存储。 其功能涵盖具有增量重编译、模块化项目组织和自动化测试执行的 JVM 构建自动化。该系统还支持跨版本编译、向云存储发布工件,以及用于添加自定义构建逻辑的可扩展插件模型。
Ensures consistent build results across environments by locking the specific version of the build engine.
该项目是 TypeScript 语言的综合指南和教育资源。它涵盖了该语言的基本原则,包括其结构化类型系统、静态类型分析以及将类型化源文件转译为 JavaScript 的过程。 该材料详细介绍了如何使用泛型、条件类型和映射类型来建模复杂数据和可重用的类型逻辑。它还解释了如何使用声明文件为外部 JavaScript 库提供类型安全,以及如何通过 JSDoc 注释将类型检查集成到现有的 JavaScript 项目中。 内容范围扩展到面向对象编程模式、DOM 操作和编译器行为配置。它包括关于管理模块互操作性、设置构建管线以及利用编辑器智能以提高开发者生产力的指导。
Enables the locking of a specific compiler version to ensure consistent build results across environments.
该项目是一个 Cookiecutter 模板,用于引导具有标准化目录布局和配置文件的 Python 包。它通过生成项目结构、样板文件和命令行界面入口点,为新库奠定了基础。 该模板通过强化的构建流水线强调安全的软件供应链。它利用 commit SHA 锁定 Action 和最小权限集来防御攻击,同时提供了一个设置,用于使用安全身份提供程序构建并上传签名包到注册表。 该项目涵盖了广泛的功能,包括用于多版本测试、Linting 和类型检查的持续集成自动化。它还包括一个自动化的文档流水线,从 Docstring 中提取 API 参考并将其部署到托管提供商。其他工具处理依赖管理、分发工件编译和静态漏洞扫描。
Executes the same test suite across multiple Python language versions to ensure stability.
LoadLibrary is a binary instrumentation framework that loads and executes Windows PE/COFF DLLs natively within Linux processes. It provides a cross-platform binary execution layer that maps Windows portable executable files into Linux memory, resolving imports and relocations so that exported functions can be called as if they were native Linux library routines. The framework enables runtime interception and modification of Windows DLL function behavior, including redirecting API calls to Linux-native implementations through a binary patching hook engine. It includes a code coverage auditor t
Translates Windows C++ exception handling mechanisms into Linux-compatible unwinding and dispatch routines for loaded binaries.
ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with
Constrains test execution to a specific Scala version using version-matching aspects.