make syncThis downloads the latest shared liblbug binary (via upstream
download-liblbug.sh) and syncs the project with dev dependencies.
The Python package is installed directly from src_py/, so the standalone
workflow no longer depends on ./build/ladybug.
In order to run tests you'll need to pull data first with:
git submodule update --init --recursiveThen run tests with:
uv run pytestIf your checkout layout is:
ladybug-python/(this repo)../ladybug/(main Ladybug repo as a sibling checkout)
then build the pybind extension through the Ladybug top-level build with:
make build-pybind-subdirThis uses LBUG_SOURCE_DIR (default: ../ladybug) to configure this repo's
CMake build against the Ladybug source checkout and writes _lbug* into
./build/ladybug.
Run tests against that pybind build with:
make test-pybind-subdirOverride the source tree location when needed:
make build-pybind-subdir LBUG_SOURCE_DIR=/path/to/ladybugCode is formatted with black and linted with ruff:
make lint # black + ruff check + mypy
make format # black only
make check # ruff check only (verbose)We also have a pre-commit hook for formatting and linting:
uv run --no-sync pre-commit install