Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,4 +94,4 @@ release-please keeps a release pull request open, with the changelog written fro
`master`; it updates the version in `pyproject.toml`, `src/muster_bridge/__init__.py` and the project's entry in
`uv.lock`. Merging it creates the release and its `vX.Y.Z` tag; the workflow then builds the sdist and the wheel and
publishes them to PyPI by trusted publishing from the environment `pypi`, with attestations and no stored token.
Versions stay `0.x` until Muster's first release.
Versions stay `0.x` until Muster 1.0.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ pip install muster-bridge

Python 3.11 or newer. The distribution is `muster-bridge`, the import package `muster_bridge`; it depends on
Starlette, httpx and pydantic 2 only. The package is not on PyPI before its first release; until then, install it from
a clone (`pip install .`). Versions stay `0.x` until Muster's first release; then `1.x` speaks protocol version 1.
a clone (`pip install .`). Versions stay `0.x` until Muster 1.0. Every `0.x` release speaks protocol
version 1; a breaking protocol change would be a new protocol version, not a new library version.

## Quick start

Expand Down
3 changes: 2 additions & 1 deletion api/bridge.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -706,7 +706,8 @@ components:
max_per_message:
type: integer
minimum: 2
description: Muster sends at most this many; Snooze durations are dropped first.
description: 'Muster sends at most this many, dropping Snooze buttons first: the Snooze presets, then the
durations from the longest.'
max_per_row:
type: integer
minimum: 1
Expand Down
4 changes: 3 additions & 1 deletion src/muster_bridge/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,9 @@ class PollEventsParameters(BaseModel):

class CapabilitiesButtons(BaseModel):
max_per_message: int = Field(
..., description="Muster sends at most this many; Snooze durations are dropped first.", ge=2
...,
description="Muster sends at most this many, dropping Snooze buttons first: the Snooze presets, then the durations from the longest.",
ge=2,
)
max_per_row: int = Field(..., ge=1)
data_max_bytes: int = Field(..., ge=64)
Expand Down
Loading