Giter Site home page Giter Site logo

lilyenv's Introduction

Lilyenv

Lilyenv is a tool for managing python interpreters and virtualenvs.

Installation

Lilyenv is written in Rust and can be installed using cargo install lilyenv.

Usage

  • lilyenv activate <project> <version> will activate a virtualenv. The interpreter will be downloaded and the virtualenv created automatically if needed.
  • lilyenv list will list all virtualenvs managed by lilyenv. The optional <project> argument shows just that project's virtualenvs.
  • lilyenv upgrade <version> will upgrade the python interpreter to the latest bugfix release.
  • lilyenv set-project-directory <project> <default_directory>? will set the default directory for the <project>. If <default_directory> is omitted the current directory is used.
  • lilyenv unset-project-directory <project> will unset the default directory for the <project>.
  • lilyenv set-shell allows explicitly setting the shell lilyenv uses when activating a virtualenv.
  • lilyenv shell-config shows shell-specific configuration information. This can be used to set a custom prompt.
  • lilyenv virtualenv <project> <version> will create a virtualenv for a project using the given python version.
  • lilyenv remove-virtualenv <project> <version> will delete the specified virtualenv.
  • lilyenv remove-project <project> will delete all virtualenvs for a project.
  • lilyenv download <version> will download a python interpreter with the given version.
  • lilyenv download will list all python interpreters available to download.

Comparison with other tools

Pyenv

pyenv is a tool for managing Python interpreters.

Pyenv Lilyenv
Compiles each interpreter from source on your machine. Downloads pre-built binaries.
Makes Python interpreters available for use both with and without a virtualenv involved. Only exposes interpreters via activated virtualenvs.
Awkward to update to newer interpreter versions. Straightforward to update an interpreter with lilyenv upgrade.

Virtualenvwrapper

Virtualenvwrapper Lilyenv
Works with existing Python interpreters on your system. Downloads Python interpreters for you.
Mostly a collection of shell scripts. Written in Rust with a small amount of shell for customising the prompt. This can be viewed with the lilyenv shell-config command.
Requires an existing python interpreter to install. Installed with Cargo and doesn't require an existing Python interpreter.
Uses the virtualenv project. Uses the built-in venv module from the downloaded interpreter.
Provides many hooks for custom scripting. Provides opinionated defaults with minimal customisability.

Poetry

Poetry Lilyenv
Optimised for project development with only one supported Python version. Optimised for library development with multiple supported Python versions.
Manages dependencies for you. Stops at providing a virtualenv.
Requires an existing python interpreter to install. Installed with Cargo and doesn't require an existing Python interpreter.

lilyenv's People

Contributors

lilyfoote avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.