Updating the API docs¶
The API reference is generated from FrSky's lua-doc.zip, which is rebuilt for every Ethos release.
Where lua-doc.zip comes from¶
Every Ethos release on FrSkyRC/ETHOS-Feedback-Community → Releases has a lua-doc.zip asset:
| Release kind | Tag example | Notes |
|---|---|---|
| Nightly series | nightly26 |
Pre-release. The asset is replaced in place as nightlies build; a new major gets a new tag (nightly27) |
| Stable release | 26.1.2 |
One tag per release |
| Maintenance of an older line | 1.6.8 |
Can be published after newer releases |
There's no permanent "latest" URL. It changes with each Ethos release, so the updater asks the GitHub API which release to use:
| Channel | Picks |
|---|---|
nightly (default) |
Highest nightlyNN with a lua-doc.zip: the newest API |
stable |
Highest version number among full releases (not the newest date, which could be an old-line maintenance release) |
pinned |
Exactly the lua_doc_url in data/upstream.json |
The release, sha256 and fetch date of the zip in use are shown at the top of the API reference.
Running an update¶
python scripts/update.py # channel from data/upstream.json
python scripts/update.py --channel stable
python scripts/update.py --zip ~/Downloads/lua-doc.zip --skip-usage # offline, from a local file
It downloads and parses the zip, refreshes the official examples, rescans real-world usage, and regenerates docs/api/. Review with git diff, then mkdocs build --strict.
Automatically¶
The Update lua-doc GitHub workflow runs weekly and on demand (choose the channel when running it manually). It opens a pull request with a summary when anything changed. When reviewing:
- Look at
data/api.json: new functions, changed parameters, removed functions. - A removed function breaks links from guides or overlays, and the strict build fails. Fix the links.
- New APIs deserve an overlay example and a mention in the relevant guide.