awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
yyuu avatar

yyuu/pyenv

0
View on GitHub↗

Pyenv

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-side installation by building specific versions from source. Version management includes the ability to activate runtimes globally or on a per-project basis, the simultaneous activation of multiple versions, and the removal of installed runtimes.

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Features

  • Python Version Managers - Installs and switches between different Python versions on a single machine without affecting the system installation.
  • Command Interception Shims - Uses lightweight proxy scripts to intercept command calls and redirect them to the correct Python version.
  • Runtime Version Managers - Downloads and builds specific Python versions from source based on a list of available releases.
  • Path-Based Version Switchers - Switches active Python versions by dynamically modifying the system PATH environment variable.
  • Shell-Based - Manages Python binaries through shell integration and shims to redirect executable calls.
  • Toolchain Versioning - Allows changing the active Python runtime globally or for specific directories.
  • Per-Project Runtime Assignments - Assigns a particular Python version to a specific directory so the correct environment is used for each project.
  • Python Runtime Managers - Provides an environment for managing multiple Python installations to test code across different releases.
  • CLI Extensions - Adding new subcommands and custom logic to the Python version manager using shell script plugins.
  • Plugin Systems - Provides a system for extending core functionality and adding custom subcommands via modular plugins.
  • Shell Plugin Architectures - Extends the tool's functionality by executing external shell scripts discovered in a dedicated plugins directory.
  • Configuration Cascade Resolutions - Determines the active Python version by cascading settings from the current directory up to the root.
  • Plugin-Extensible Runtimes - Implements a version management system that supports custom subcommands and logic via shell script plugins.
  • Version Managers - Enables simultaneous activation of several Python versions to search for commands across multiple installations.
  • Runtime Builds - Builds specific Python versions from source code to ensure compatibility with the local operating system.
  • Isolated Runtime Directories - Organizes multiple Python installations in independent directories to prevent conflicts between different version binaries.
  • Side-by-Side Runtimes - Enables the compilation of various Python versions on a single machine without interfering with the system-wide installation.
  • Environment Management - Simple Python version management.
  • Python Frameworks and Tools - Python version management tool.
44,899 stars·3,252 forks·Shell·MIT·5 vues

Historique des stars

Graphique de l'historique des stars pour yyuu/pyenvGraphique de l'historique des stars pour yyuu/pyenv

Questions fréquentes

Que fait yyuu/pyenv ?

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.

Quelles sont les fonctionnalités principales de yyuu/pyenv ?

Les fonctionnalités principales de yyuu/pyenv sont : Python Version Managers, Command Interception Shims, Runtime Version Managers, Path-Based Version Switchers, Shell-Based, Toolchain Versioning, Per-Project Runtime Assignments, Python Runtime Managers.

Quelles sont les alternatives open-source à yyuu/pyenv ?

Les alternatives open-source à yyuu/pyenv incluent : sstephenson/rbenv — rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby… pyenv-win/pyenv-win — pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions… rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… astral-sh/rye — Rye is a comprehensive Python toolchain manager, package manager, and virtual environment orchestrator. It provides a… nvm-sh/nvm — This project is a command-line tool designed for managing multiple runtime versions on a local machine. It functions… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a…

Alternatives open source à Pyenv

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Pyenv.
  • sstephenson/rbenvAvatar de sstephenson

    sstephenson/rbenv

    16,711Voir sur GitHub↗

    rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby versions on a single machine and coordinates the selection of the active version based on the current directory or shell session. The tool functions as an extensible command line framework that intercepts executable calls using shell shims. These shims route requests to the selected language version, ensuring environment isolation by storing binaries in independent directories. The system includes capabilities for language runtime administration, including the ability to downlo

    Shell
    Voir sur GitHub↗16,711
  • pyenv-win/pyenv-winAvatar de pyenv-win

    pyenv-win/pyenv-win

    7,006Voir sur GitHub↗

    pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions without affecting the system global installation. It functions as a multi-version installer and environment controller that ensures isolation and reproducibility across different projects. The tool uses a shim-based routing system to intercept executable calls and direct them to specific versioned binaries. This allows for both system-wide default configurations and local directory-level overrides, where a specific version is automatically activated when entering a project folder

    VBScriptpyenvpyenv-alternativepyenv-for-windows
    Voir sur GitHub↗7,006
  • rbenv/rbenvAvatar de rbenv

    rbenv/rbenv

    16,710Voir sur GitHub↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    Voir sur GitHub↗16,710
  • astral-sh/ryeAvatar de astral-sh

    astral-sh/rye

    14,209Voir sur GitHub↗

    Rye is a comprehensive Python toolchain manager, package manager, and virtual environment orchestrator. It provides a unified system for installing Python runtimes, resolving dependencies, and coordinating isolated environments across different projects. The project distinguishes itself through workspace management capabilities that coordinate dependencies and builds across multiple libraries within a single multi-package project structure. It further enables the global installation of Python tools into sandboxed environments, making them accessible system-wide without manual environment acti

    Rustpackage-managerpackagingpython
    Voir sur GitHub↗14,209
  • Voir les 30 alternatives à Pyenv→