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 the app, verify the installation, then launch it:

pycontrol-manager app install
pycontrol-manager app status
pycontrol gui

pycontrol gui opens a workspace containing the current directory when one is available. Otherwise, it opens the last valid workspace remembered by the GUI. On the first launch outside a workspace, with nothing remembered, it shows the welcome dialog so you can create or open one. Pass pycontrol gui PATH to override that selection for one launch.

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 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 --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.0a2.tar.gz (22.4 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.0a2-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pycontrol_manager-0.1.0a2.tar.gz
  • Upload date:
  • Size: 22.4 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.0a2.tar.gz
Algorithm Hash digest
SHA256 3aff878f9719b3d3c9000ab620b7efe90216cf932e924b4c2912f22761fc06e5
MD5 f6c07895b6a711e7adaffac8f4b1edd1
BLAKE2b-256 20af3d377068f70727144d5b4d7fcf5b548ff76a1179aa5e5f41a9b756817800

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pycontrol_manager-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 a2f86b2aeea36dc39f19a13723019ac85815356631b27a1a114510c69f2f11f2
MD5 fc6ddf7fb32044663f71318872de7a60
BLAKE2b-256 a109e6538efb9cdb8379fbe1be99ab70a67cc2a721dbe85430f3315a5125f1e9

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