Lightning-AI/utilities
Python
Captured source
source ↗Lightning-AI/utilities
Description: Common Python utilities and GitHub Actions in Lightning Ecosystem
Language: Python
License: Apache-2.0
Stars: 62
Forks: 23
Open issues: 11
Created: 2022-04-28T01:39:16Z
Pushed: 2026-06-08T16:32:48Z
Default branch: main
Fork: no
Archived: no
README:
Lightning Utilities

   
__This repository covers the following use-cases:__
1. _Reusable GitHub workflows_ 2. _Shared GitHub actions_ 3. _General Python utilities in lightning_utilities.core_ 4. _CLI python -m lightning_utilities.cli --help_
1. Reusable workflows
__Usage:__
name: Check schema on: [push] jobs: check-schema: uses: Lightning-AI/utilities/.github/workflows/check-schema.yml@v0.5.0 with: azure-dir: "" # skip Azure check check-code: uses: Lightning-AI/utilities/.github/workflows/check-code.yml@main with: actions-ref: main # normally you shall use the same version as the workflow
See usage of other workflows in .github/workflows/ci-use-checks.yaml.
2. Reusable composite actions
See available composite actions .github/actions/.
__Usage:__
name: Do something with cache on: [push] jobs: pytest: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 3.10 - uses: Lightning-AI/utilities/.github/actions/cache with: python-version: 3.10 requires: oldest # or latest
3. General Python utilities lightning_utilities.core
Installation From source:
pip install https://github.com/Lightning-AI/utilities/archive/refs/heads/main.zip
From pypi:
pip install lightning_utilities
__Usage:__
Example for optional imports:
from lightning_utilities.core.imports import module_available
if module_available("some_package.something"):
from some_package import something4. CLI lightning_utilities.cli
The package provides common CLI commands.
Installation
From pypi:
pip install lightning_utilities[cli]
__Usage:__
python -m lightning_utilities.cli [group] [command]
Example for setting min versions
$ cat requirements/test.txt coverage>=5.0 codecov>=2.1 pytest>=6.0 pytest-cov pytest-timeout $ python -m lightning_utilities.cli requirements set-oldest $ cat requirements/test.txt coverage==5.0 codecov==2.1 pytest==6.0 pytest-cov pytest-timeout