Skip to main content

Easily toggle between development and production packages with uv. Quickly close development packages locally.

Project description

Python Uv Development Package Toggler

A utility script for easily switching between local development and published sources for Python packages in your pyproject.toml.

Features

  • Automatically toggles between local development paths and GitHub sources
  • Preserves TOML file comments and structure
  • Automatically clones repositories when switching to local development
  • Supports branch tracking
  • Falls back to PyPI metadata if direct GitHub repository is not found
  • Integrates with GitHub CLI for username detection
  • Creates necessary TOML structure (tool.uv.sources) if it doesn't exist

Installation

pip install uv-development-toggle

Usage

To toggle a package activemodel:

uv-development-toggle activemodel --local

Then, after you push to a custom branch, reference the branch in your pyproject.toml:

uv-development-toggle activemodel --published

To revert a package to PyPI:

uv-development-toggle activemodel --pypi

This will:

  1. Check if the package exists in your PYTHON_DEVELOPMENT_TOGGLE directory
  2. If switching to local and the repository doesn't exist, clone it automatically (attempts to determine the repo URL from pypi information)
  3. Update your pyproject.toml with the appropriate source configuration (creating the tool.uv.sources structure if needed)
  4. Preserve any existing branch information when toggling

Arguments

  • MODULE_NAME: The name of the Python module to toggle
  • --local: Force using local development path
  • --published: Force using published source
  • --pypi: Revert to default PyPI source

Environment Variables

  • PYTHON_DEVELOPMENT_TOGGLE: Directory for local development repositories (default: "pypi")

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

uv_development_toggle-0.2.2.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

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

uv_development_toggle-0.2.2-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file uv_development_toggle-0.2.2.tar.gz.

File metadata

File hashes

Hashes for uv_development_toggle-0.2.2.tar.gz
Algorithm Hash digest
SHA256 033f5e42dd24448d9df72dec06f4a6271c25a0978b6d0a50c257a2e218d76fbd
MD5 6edd8925de9ffc55ce43d9696e33361b
BLAKE2b-256 8048fa535a3f58822250979a4c7ece1ad1de5ce1a971a585d1df55dcaf286925

See more details on using hashes here.

File details

Details for the file uv_development_toggle-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for uv_development_toggle-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6a3d919cd3706e9d04d4809c74b559c37ef8902909384523e91ce9d3b097b18c
MD5 ff71684e72ea5139f607e56f092d5ed9
BLAKE2b-256 9a49bb26df1a4a9f0b8e1392559299e15f0a995a41aa2da0801818dee1a70da8

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