Skip to main content

kyoslib_py

KYOS shared lib code as python package.

Usage

Example code:

from kyoslib_py.simulation import Simulation
simulation_set = Simulation()

Installation

pip install kyoslib_py

Dependencies

Python 3.11+


Development

Command Description
task Run lint + typecheck + test + security
task install Install all dependencies
task lint Run ruff format check + ruff lint
task format Auto-format and fix with ruff
task typecheck Run ty type checker
task test Run pytest
task test:coverage Run pytest with coverage report
task security Run bandit SAST + uv audit
task security:bandit Run bandit SAST scanner
task security:audit Check deps for known CVEs
task build Build the sdist and wheel into dist/
task publish Build and publish to PyPI (needs UV_PUBLISH_TOKEN)
task docs:serve Live preview of the documentation
task docs:build Check that the documentation builds without errors
task docs:deploy Deploy the documentation to GitHub Pages
task clean Remove build artifacts and caches

Adding dependencies

uv add <package>
uv add --dev <package>

Documentation

The package documentation is generated by MkDocs and published at https://kyosenergy.github.io/kyoslib_py/. After task install, start a local preview server with:

task docs:serve

Releasing

  1. Bump version in pyproject.toml and add a matching entry to docs/changelog.md (CI checks that the version is in the changelog).
  2. On merge to master, CI creates a tag for the new version and sends a publish-to-pypi repository dispatch event, which triggers the Deploy kyoslib_py workflow that builds and publishes the package to PyPI.

CI

On every PR to master:

  • lint — ruff format + ruff lint
  • typecheck — ty
  • test — pytest, on every supported Python version (3.11, 3.12, 3.13)
  • audit — uv audit (known CVEs in deps)
  • bandit — bandit SAST scan of src
  • secret-scan — gitleaks (committed secrets)
  • docs — mkdocs build --strict
  • build — uv build (sdist and wheel), once lint, typecheck, test, audit, bandit and secret-scan pass
  • version — the pyproject.toml version is listed in docs/changelog.md

On merge to master:

  • A tag is created if the version is new, and the package is published to PyPI
  • The documentation is deployed to GitHub Pages

Renovatebot opens PRs for dependency updates. The uv-lock-regen workflow regenerates uv.lock automatically on Renovate PRs.


Project structure

src/
  kyoslib_py/      # the package
tests/             # pytest suite
docs/              # MkDocs sources
mkdocs.yml         # MkDocs config
pyproject.toml     # project metadata + tool config
Taskfile.yml       # task runner
renovate.json      # dependency update config

Metadata

Release files for kyoslib_py 5.7.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kyoslib_py 5.7.2
File Size Uploaded
kyoslib_py-5.7.2.tar.gz 82.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kyoslib_py 5.7.2
File Interpreter ABI Platform
kyoslib_py-5.7.2-py3-none-any.whl Python 3 none any Details

Total release size: 153.0 kB

Release files / kyoslib_py-5.7.2.tar.gz

Download URL kyoslib_py-5.7.2.tar.gz
Size 82.2 kB
Tags Source
SHA-256 checksum
How to use checksums
9049859c774c2c6e473eb17c2096ea7dcbbd0d1db38a7e62b186b69945b29707
BLAKE2b-256 checksum
How to use checksums
5fd5f0f3be266b80ad99977de08e13285eb72b9538c64c601424494dc5b6f322
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / kyoslib_py-5.7.2-py3-none-any.whl

Download URL kyoslib_py-5.7.2-py3-none-any.whl
Size 70.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb2b86d6e15ac7029678e5e992a71d64b3444ee625aef737a791820d01b5b4c6
BLAKE2b-256 checksum
How to use checksums
6876a314d1df110d1dac9176bf29aaf1ac129bd7872300732957609bfcf7f551
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

5.7.2 This release

2 release files

5.7.1

2 release files

5.7.0

2 release files

5.6.2

2 release files

5.6.1

2 release files

5.6.0

2 release files

5.5.8

2 release files

5.5.7

2 release files

5.5.6

2 release files

5.5.5

2 release files

5.5.4

2 release files

5.5.3

2 release files

5.5.0

2 release files

5.4.6

2 release files

5.4.5

2 release files

5.4.4

2 release files

5.4.3

2 release files

5.4.2

2 release files

5.4.1

2 release files

5.4.0

2 release files

5.3.4

2 release files

5.3.3

2 release files

5.3.2

2 release files

5.3.1

2 release files

5.3.0

2 release files

5.2.8

2 release files

5.2.7

2 release files

5.2.6

2 release files

5.2.5

2 release files

5.2.4

2 release files

5.2.3

2 release files

5.2.2

1 release file

5.2.1

2 release files

5.2.0

2 release files

5.1.1

2 release files

5.1.0

2 release files

5.0.7

2 release files

5.0.6

2 release files

5.0.5

2 release files

5.0.4

2 release files

5.0.3

2 release files

5.0.2

2 release files

5.0.1

2 release files

5.0.0

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.2

2 release files

4.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page