Skip to main content

Python versions and dependency management made easy.

Project description

Lootbox

Lootbox creates isolated Python installations to easily manage multiple Python versions on your computer. It allows you to create projects with its CLI and add and manage dependencies for them. It was created by a student, and for serious usage, you should probably check out Poetry instead. It is also written in Rust, so it's automatically faster and better than Poetry. ;)

Usage

You can create and manage project dependencies and install Python versions right now. It also provides a simple utility for bundling the project if you want to get a simpler version with requirements.txt. If I have time, I might even add the option to use it to publish packages to PyPI (adding the functionality of "pyproject.toml", "setup.py", etc., directly to Lootbox).

Installation

pip install py-lootbox

Install Python Version

This works differently on Linux and Windows to avoid the weird behaviors of the Python installer. On Windows, the version is installed using NuGet, and on Linux (and maybe macOS, though I haven't tested it), it builds the Python version from source (Python tarball), so the installation can be quite slow.

loot install {version_to_install}
loot install 3.10.0

Create project

loot new {name} {python_version}
loot new test 3.10.0

cd {name}
cd test

Run project

loot run

Add dependency

loot add {package_name}
loot add bs4

Bundle

loot bundle

Run command inside venv

In some cases you might want to run a command inside the projects venv. This is common if one of your dependencies provides a cli.

loot exec {command_to_run}
loot exec alembic -h

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_lootbox-1.6.0.tar.gz (24.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_lootbox-1.6.0-cp310-cp310-manylinux_2_34_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

File details

Details for the file py_lootbox-1.6.0.tar.gz.

File metadata

  • Download URL: py_lootbox-1.6.0.tar.gz
  • Upload date:
  • Size: 24.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for py_lootbox-1.6.0.tar.gz
Algorithm Hash digest
SHA256 735ab94210e14c7fa443f8032b0cb042de260211dc4f67662b6c0d1edbf3fd07
MD5 f548d8e6dcffe849cf854c82846de20d
BLAKE2b-256 fff74567e9a74d94510d746de1f2e506251444f2cc6c9877e222899c374d4fa1

See more details on using hashes here.

File details

Details for the file py_lootbox-1.6.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for py_lootbox-1.6.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 31dabe27b7b3871976cd355a7f52ad3722474b099aa1c631d5e8f09badf2b203
MD5 7d54eb16fa405ab8254f963ac42339b6
BLAKE2b-256 21391b7b502be00c18b83ee5eaa9ea29818c8c87ce52c8993b664182f4464bd1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page