Skip to main content

Shared local-dev CLI for Swarm Systems Lab Python projects

Project description

ssl_pydev

Shared local-dev CLI for Swarm-Systems-Lab Python projects. Wraps the same build/publish/docs-validation logic that ssl_ci's composite actions run in CI, packaged here so it can be installed once per machine instead of copy-pasted into every project's scripts/ directory.

Install

uv tool install ssl_pydev

This installs a single ssl-pydev command, available from any project directory, independent of that project's own virtualenv/dependencies.

Using VS Code installed via snap on Linux? Run the command above from a regular system terminal, not VS Code's integrated terminal. Snap confinement redirects $HOME/$XDG_DATA_HOME for processes spawned inside VS Code's snap, so uv tool install ends up putting ssl-pydev somewhere only visible from inside that snap (e.g. ~/snap/code/<rev>/.local/share/uv/tools/...), invisible to any other terminal.

Usage

ssl-pydev -h

ssl-pydev new my-project       # scaffold a new project from ssl_py_template
ssl-pydev new-sim my-project   # scaffold a new ssl_simulator research project
ssl-pydev prune                # find and interactively remove files orphaned by a template update

ssl-pydev setup-env --extras dev,tests
ssl-pydev build
ssl-pydev build-native     # for compiled-extension (pybind11/scikit-build-core) projects
ssl-pydev publish          # uv-based publish, requires UV_PUBLISH_* env vars
ssl-pydev publish-ci       # twine-based publish, requires TWINE_* env vars
ssl-pydev validate-docs
ssl-pydev generate-stubs --module mypkg._core --output src/   # pybind11 type stubs

Every command operates on the current working directory, so run it from the root of the project you want to act on.

A project's justfile recipes become one-liners, e.g.:

setup:
    ssl-pydev setup-env --extras dev,lint,tests,type-checking,pre-commit

Versioning

Released the same way as the other Swarm-Systems-Lab packages: tag vX.Y.Z, push, and ssl_ci's publish.yml builds and uploads to 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

ssl_pydev-0.1.6.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

ssl_pydev-0.1.6-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file ssl_pydev-0.1.6.tar.gz.

File metadata

  • Download URL: ssl_pydev-0.1.6.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for ssl_pydev-0.1.6.tar.gz
Algorithm Hash digest
SHA256 38887b16564fe8cd1213f8a8df8043022b7f4a504db256de300c931fe5818f5e
MD5 8b461b6e1ad19505d85945bb851500fa
BLAKE2b-256 5968157fe9dd59004bbec6de3241cbcd0557d9f7a3ecba5ffc6f31f453b8f0a6

See more details on using hashes here.

File details

Details for the file ssl_pydev-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: ssl_pydev-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for ssl_pydev-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 ccb3f5d69f96d9ae4ecb0f81a4a1904ff90c689a18b7fdbabf23d69c0360e373
MD5 005f9012a090a6965c659d12c6e048e1
BLAKE2b-256 210ca1e266e2727d9598d87e849edca95bed18064fb8adef16698f6f80eb942e

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