Skip to main content

Lifecycle manager for the global pyControl application.

Project description

pycontrol-manager

pycontrol-manager manages the lifecycle of the global pyControl application. It installs pycontrol-gui and the pycontrol CLI with uv, updates and uninstalls the app, switches between published and editable sources, manages optional dependencies, and creates the OS launcher.

Workspace creation and experiment operation are deliberately outside the manager. Create or open a workspace in the GUI, or use pycontrol workspace.

Quickstart

Install the manager:

uv tool install --prerelease if-necessary-or-explicit pycontrol-manager

Install and launch the app:

pycontrol-manager app install --launch

On first launch, the GUI offers to create or open a workspace. The app is installed once per computer and can switch among plain-data workspaces.

Application lifecycle

pycontrol-manager app install
pycontrol-manager app update
pycontrol-manager app launch
pycontrol-manager app status
pycontrol-manager app uninstall

app install is safe to repeat. It preserves the current published or editable source mode and all enabled extras. app update installs the newest published packages and refuses to replace editable local sources.

app uninstall removes the pycontrol-gui uv tool environment, the OS shortcut, and GUI preferences. It leaves pycontrol-manager installed for diagnostics or a future reinstall. Remove the manager separately when it is no longer needed:

uv tool uninstall pycontrol-manager

Published and local sources

Switch the app to editable sibling pycontrol-core/ and pycontrol-gui/ checkouts:

pycontrol-manager app source local /path/to/source-root

Source edits are immediately live in the global commands and OS launcher. Switch back to the newest published packages with:

pycontrol-manager app source pypi

Optional dependencies

Available extras are analysis, notion, s3, and slack.

pycontrol-manager app extras list
pycontrol-manager app extras add slack notion
pycontrol-manager app extras add integrations
pycontrol-manager app extras remove s3

integrations expands to notion, s3, and slack. Extras are installed into the global app environment and preserved across installs, updates, and source switches.

Status and diagnostics

app status reports installed core and GUI versions, Python, source mode, enabled extras, executable paths, and shortcut state:

pycontrol-manager app status

Run read-only installation diagnostics with:

pycontrol-manager doctor

The doctor checks uv, the tool receipt, editable source paths, package versions, command location, and shortcut state. It does not modify the installation.

Installation options

Commands that install or rebuild the app accept:

--python PYTHON
--prerelease {allow,disallow,if-necessary,explicit,if-necessary-or-explicit}
--index-url URL
--extra-index-url URL

Index URLs can also be supplied through PYCONTROL_MANAGER_INDEX_URL and PYCONTROL_MANAGER_EXTRA_INDEX_URL.

app install additionally accepts --launch, --shortcut, and --no-shortcut.

Development

Install this checkout as an editable tool:

uv tool install --editable /path/to/pycontrol-manager

Run checks:

uv sync --group dev
uv run pytest
uv run ruff check src tests

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

pycontrol_manager-0.1.0a1.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

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

pycontrol_manager-0.1.0a1-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file pycontrol_manager-0.1.0a1.tar.gz.

File metadata

  • Download URL: pycontrol_manager-0.1.0a1.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pycontrol_manager-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 47cc65eb1f69bbb14c32810e35eb64eb4276adb1d16d844c41201393c52ea318
MD5 091e547544449ace2f17dd6d8c28b752
BLAKE2b-256 5c987c0b0fc66b9401b6b9d234598ef6f8cefc6d35a4560052afcd6e1352f3eb

See more details on using hashes here.

File details

Details for the file pycontrol_manager-0.1.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for pycontrol_manager-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 63e75cd766235ccf8a81a646962fd20586f543614c20f8f28ecec9fe513f0a25
MD5 c6b6b4ee51e01ee5191292a2ee691c32
BLAKE2b-256 4ae79b34f32fa861b92ea168a4e68d0712e4b5f6c97cfb13f6ed2559396a7e95

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