Skip to main content

A tool to manage python projects and their dependencies.

Project description

psycho

Python project management automation using standard build tools.

Status

This project is a working prototype.

It can be installed from pypi:

pip install psycho

Overview

Python projects are migrating away from using setup.py to pyproject.toml. While a number of excellent projects provide custom tooling, there is no built in support for automating project management with the standard tools:

Psychotic Commands

The following are supported.

  • install
  • uninstall
  • build
  • publish

install

When used without specifying packages this command installs the project as editable.

# equivalent to: pip install --editable .
psycho install

When used with a package requirement, the requirement is written to the pyproject.toml and the package is install into the python environment using pip.

psycho install "pandas>=1.5.3"

The -optional flag can be used (with a group name) to add an optional dependency.

psycho install --optional dev pytest

uninstall

This command removes a package from the pyproject.toml file, and uninstalls it using pip.

psycho uninstall pandas

This can be used with the optional flag (with a group name) to uninstall an optional dependency.

psycho install --optional dev pytest

build

The build command will build a package, prior to publishing it.

# The equivalent of: python -m build
psycho build

publish

The publish command will upload a package with twine.

# The equivalent of: twine upload dist/*
psycho publish

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

psycho-1.0.0a2.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

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

psycho-1.0.0a2-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file psycho-1.0.0a2.tar.gz.

File metadata

  • Download URL: psycho-1.0.0a2.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for psycho-1.0.0a2.tar.gz
Algorithm Hash digest
SHA256 77785cd3fbb68fea8ee56302e8e14c5ac8b6c7ec5d8acf7e81556f9a70c987f4
MD5 3cc8c7d733f76f29c22802e8aced69dd
BLAKE2b-256 2aa193462eb050a66ec4288e42f65637fab8ae3ee30b1a1b07da72964be48e02

See more details on using hashes here.

File details

Details for the file psycho-1.0.0a2-py3-none-any.whl.

File metadata

  • Download URL: psycho-1.0.0a2-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for psycho-1.0.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 02077ce892d919974f25931b7ebf743e0f1ce2b1022a1063490b5c95caf8ea65
MD5 b06bdc784a821fc0125cd4597d49c080
BLAKE2b-256 af9b89139eac26906876dce3d815b0bc56addd7eabaac580d5275a9211fa7e8c

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