Skip to main content

Swarm Systems Lab Python lieplusplus library

Project description

lieplusplus_py

Swarm Systems Lab Python lieplusplus library

⚠️ Warning: This project is a work in progress.

Installation

pip install lieplusplus_py

Usage

import lieplusplus

# Example usage
result = lieplusplus.hello()
print(result)

Development

This project follows the SSL Golden Path for streamlined Python development.

Quick Setup

# Clone the repository
git clone https://gitea.lyapunov.local/Swarm-Systems-Lab/lieplusplus_py
cd lieplusplus_py

# One-command setup (installs uv, creates .venv, installs dependencies)
just setup

# Verify everything works
just test

Common Commands

All project tasks are managed via just. Run just --list to see all available commands.

Essential commands:

just setup          # Initial environment setup
just test           # Run full test suite (what CI runs)
just test-fast      # Quick parallel tests (skip slow tests)
just lint           # Check code style
just typecheck      # Check types
just security       # Run security scans
just check-all      # Full CI simulation (run before pushing!)
just build          # Build package

just docs           # Start documentation server

Testing workflows:

just test-one test_name      # Run specific test
just test-multi-py           # Test on Python 3.10-3.14
uv run pytest -vv            # Verbose output
uv run pytest --pdb          # Debug on failure

Development Tools

  • Package Manager: uv - Fast Rust-based Python package manager
  • Task Runner: just - Command runner for project tasks
  • Linting: ruff - Fast linter and formatter
  • Type Checking: ty (mypy wrapper) - Static type analysis
  • Testing: pytest with coverage and parallel execution
  • Security: semgrep - Security vulnerability scanning

Project Structure

lieplusplus_py/
├── src/lieplusplus/     # Source code (importable package)
├── tests/                      # Test files (mirrors src structure)

├── docs/                       # Documentation (MkDocs)


├── pyproject.toml              # Project metadata and dependencies
├── justfile                    # Task definitions
└── uv.lock                     # Locked dependencies

Documentation

Full documentation is available at https://gitea.lyapunov.local/Swarm-Systems-Lab/lieplusplus_py/blob/main/docs

Build locally:

just docs        # Start server at http://localhost:8000 with live reload
just docs-build  # Build static documentation

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

Before submitting a PR:

just check-all  # Runs lint, security, test, typecheck, pre-commit

License

MIT

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

lieplusplus_py-0.5.1.tar.gz (121.0 kB view details)

Uploaded Source

Built Distributions

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

lieplusplus_py-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

lieplusplus_py-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

lieplusplus_py-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file lieplusplus_py-0.5.1.tar.gz.

File metadata

  • Download URL: lieplusplus_py-0.5.1.tar.gz
  • Upload date:
  • Size: 121.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for lieplusplus_py-0.5.1.tar.gz
Algorithm Hash digest
SHA256 5c14464e34b0bf560696544a104fdcc3ff1839a16a50ebcffb5c3990b23abf66
MD5 c8fbff7722909630f232146b1c92507a
BLAKE2b-256 72a412cebaca3db1618f962889c7559a5607c806afa290b6002dc6c61a7afae7

See more details on using hashes here.

File details

Details for the file lieplusplus_py-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lieplusplus_py-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eee1b4366b099df07ae20354ed7d707507318c2a35bbc1616ef725d8ad0d40d0
MD5 7e627399f96f11f3226f94c974255411
BLAKE2b-256 b22474f69c95aee6ce6f1c434ca6402afe3099d762551c2a22442e1ccaa79e8d

See more details on using hashes here.

File details

Details for the file lieplusplus_py-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lieplusplus_py-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eb77a97114f3a8a2211ec6e0072c8dbc62f4a94ca5f7ae080e3c30997f79ee55
MD5 89077aa36962dbc31793dc838a36e0c2
BLAKE2b-256 540ab2ef50e4c339e26d614acc4a904c2e2e7e2d6d835213c69ed9fd069795b5

See more details on using hashes here.

File details

Details for the file lieplusplus_py-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lieplusplus_py-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ff65a69c9c9d01c2e7a4af3b9762b174eb357ee0ec02b7ace60ba3a36dea3eda
MD5 7bbc22b2ac1d8a7a4aef83a9e0aee57b
BLAKE2b-256 e907075f10858e6c7bfc93ebcfab041cb5a9b7d325a42280bda5e22742ac4e67

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