Public Access
A streaming JSON scanner (a 33 KB list of releases costs a few hundred bytes), the release reader built on it, HTTP response heads and chunked bodies, URLs, and the decisions: which release is an update, whether to announce it, and which download URLs the device takes. Tested against the real answers of git.twis.la. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EhqxQ49eCju4CzKYNjZzwT
1 line
9.4 KiB
JSON
1 line
9.4 KiB
JSON
[{"id":18,"tag_name":"v0.10.0","target_commitish":"","name":"roro9stack v0.10.0","body":"v0.10.0: the Notes App (plain text notes in /notes, an editor that saves by itself, up to 16 KB); e in the Storage App's text viewer; keys sent through the Debug Console are no longer swallowed now and then\n\n\n## Files\n\n- `roro9stack-v0.10.0.ota`: the signed Update File. Copy it to `/updates` on the SD card and install it from Settings > Firmware or the Storage App, or push it over Wi-Fi with `scripts/ota_push.py`.\n- `roro9stack-v0.10.0-factory.bin`: the whole flash image, for a first install over USB at offset 0.\n- `roro9stack-v0.10.0.elf.gz`: the symbols, to decode a crash report from this build.\n- `SHA256SUMS`: checksums of the three.\n\n## Changes since v0.9.0\n\n- F1 plan: Notes ships as v0.10.0\n- Notes: plain text notes on the SD card, with an editor that saves by itself (#19)\n- A key sent through the Debug Console could turn the screen \"off\" for a tick\n- F1 plan: the Notes design round (Q141-Q150)\n","url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/18","html_url":"https://git.twis.la/twisla/roro9stack/releases/tag/v0.10.0","tarball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.10.0.tar.gz","zipball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.10.0.zip","upload_url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/18/assets","draft":false,"prerelease":false,"created_at":"2026-10-06T08:11:31Z","published_at":"2026-10-06T08:11:31Z","author":{"id":1,"login":"twisla","login_name":"","source_id":0,"full_name":"Cl\u00e9ment Martin","email":"1+twisla@noreply.git.twis.la","avatar_url":"https://git.twis.la/avatars/db0ad25f6a366bc836e69290433c81ec","html_url":"https://git.twis.la/twisla","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2021-08-17T07:22:50Z","restricted":false,"active":false,"prohibit_login":false,"location":"Earth","website":"https://git.twis.la","description":"Owner of this nice gitea instance.","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"twisla"},"assets":[{"id":2,"name":"SHA256SUMS","size":278,"download_count":2,"created_at":"2026-10-06T10:24:35Z","uuid":"b72c1ea7-af35-4563-917a-9ab56a649219","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.10.0/SHA256SUMS"},{"id":3,"name":"roro9stack-v0.10.0-factory.bin","size":1951088,"download_count":1,"created_at":"2026-10-06T10:24:35Z","uuid":"75163ae2-f495-4d5d-9883-ff773321c688","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.10.0/roro9stack-v0.10.0-factory.bin"},{"id":4,"name":"roro9stack-v0.10.0.elf.gz","size":14345572,"download_count":0,"created_at":"2026-10-06T10:24:35Z","uuid":"8b04e7fb-fee0-46bd-8be4-3bd67a8f8804","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.10.0/roro9stack-v0.10.0.elf.gz"},{"id":5,"name":"roro9stack-v0.10.0.ota","size":1885712,"download_count":2,"created_at":"2026-10-06T10:24:36Z","uuid":"4b827c6e-a57a-4436-b6e5-b8947e66d5ae","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.10.0/roro9stack-v0.10.0.ota"}]},{"id":17,"tag_name":"v0.9.0","target_commitish":"","name":"roro9stack v0.9.0","body":"v0.9.0: the Storage App (browse, copy, move, rename, delete, viewers for text, hex, pcap, gpx and ota; Maintenance replaces Settings > Storage); files dated by the Clock whatever its source; a panic at Wi-Fi join fixed (#46)\n\n\n## Files\n\n- `roro9stack-v0.9.0.ota`: the signed Update File. Copy it to `/updates` on the SD card and install it from Settings > Firmware or the Storage App, or push it over Wi-Fi with `scripts/ota_push.py`.\n- `roro9stack-v0.9.0-factory.bin`: the whole flash image, for a first install over USB at offset 0.\n- `roro9stack-v0.9.0.elf.gz`: the symbols, to decode a crash report from this build.\n- `SHA256SUMS`: checksums of the three.\n\n## Changes since v0.8.1\n\n- F1 plan: the Storage App ships as v0.9.0; the SNTP panic is #46\n- Wi-Fi: SNTP could be started twice at a join, and ESP-IDF asserts on that\n- F1 steps 2-6: the Storage App, its viewers, and Maintenance moved in (#3)\n- F1 step 1: names, read-only rules and the packed listing (host-tested)\n- F1 plan: the Storage App's design round (Q128-Q140)\n","url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/17","html_url":"https://git.twis.la/twisla/roro9stack/releases/tag/v0.9.0","tarball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.9.0.tar.gz","zipball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.9.0.zip","upload_url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/17/assets","draft":false,"prerelease":false,"created_at":"2026-10-06T07:03:50Z","published_at":"2026-10-06T07:03:50Z","author":{"id":1,"login":"twisla","login_name":"","source_id":0,"full_name":"Cl\u00e9ment Martin","email":"1+twisla@noreply.git.twis.la","avatar_url":"https://git.twis.la/avatars/db0ad25f6a366bc836e69290433c81ec","html_url":"https://git.twis.la/twisla","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2021-08-17T07:22:50Z","restricted":false,"active":false,"prohibit_login":false,"location":"Earth","website":"https://git.twis.la","description":"Owner of this nice gitea instance.","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"twisla"},"assets":[{"id":50,"name":"SHA256SUMS","size":275,"download_count":1,"created_at":"2026-10-06T11:47:02Z","uuid":"673917e0-a8fd-4579-9291-6a8d56c841ca","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.9.0/SHA256SUMS"},{"id":51,"name":"roro9stack-v0.9.0-factory.bin","size":1927200,"download_count":0,"created_at":"2026-10-06T11:47:02Z","uuid":"d578a4b1-5ada-4b6d-b7cb-2c3fadd507f4","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.9.0/roro9stack-v0.9.0-factory.bin"},{"id":52,"name":"roro9stack-v0.9.0.elf.gz","size":14009891,"download_count":0,"created_at":"2026-10-06T11:47:02Z","uuid":"a376ddc3-d100-4161-ac1f-5921e4345616","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.9.0/roro9stack-v0.9.0.elf.gz"},{"id":53,"name":"roro9stack-v0.9.0.ota","size":1861824,"download_count":1,"created_at":"2026-10-06T11:47:02Z","uuid":"a16ed6ec-8f60-48eb-b92b-d24cab43b77c","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.9.0/roro9stack-v0.9.0.ota"}]},{"id":16,"tag_name":"v0.8.1","target_commitish":"","name":"roro9stack v0.8.1","body":"v0.8.1: the main loop rests between passes (core 1 from 100 % to 1 %); Pause GNSS for LoRa (the receiver costs the radio 8 dB); lora noise test\n\n\n## Files\n\n- `roro9stack-v0.8.1.ota`: the signed Update File. Copy it to `/updates` on the SD card and install it from Settings > Firmware or the Storage App, or push it over Wi-Fi with `scripts/ota_push.py`.\n- `roro9stack-v0.8.1-factory.bin`: the whole flash image, for a first install over USB at offset 0.\n- `roro9stack-v0.8.1.elf.gz`: the symbols, to decode a crash report from this build.\n- `SHA256SUMS`: checksums of the three.\n\n## Changes since v0.8.0\n\n- S1 plan: the resting loop and the GNSS pause ship in v0.8.1\n- The radio's noise: the GNSS receiver costs 8 dB; a setting pauses it (#20)\n- The main loop rests between passes (#40)\n","url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/16","html_url":"https://git.twis.la/twisla/roro9stack/releases/tag/v0.8.1","tarball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.8.1.tar.gz","zipball_url":"https://git.twis.la/twisla/roro9stack/archive/v0.8.1.zip","upload_url":"https://git.twis.la/api/v1/repos/twisla/roro9stack/releases/16/assets","draft":false,"prerelease":false,"created_at":"2026-10-06T04:42:33Z","published_at":"2026-10-06T04:42:33Z","author":{"id":1,"login":"twisla","login_name":"","source_id":0,"full_name":"Cl\u00e9ment Martin","email":"1+twisla@noreply.git.twis.la","avatar_url":"https://git.twis.la/avatars/db0ad25f6a366bc836e69290433c81ec","html_url":"https://git.twis.la/twisla","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2021-08-17T07:22:50Z","restricted":false,"active":false,"prohibit_login":false,"location":"Earth","website":"https://git.twis.la","description":"Owner of this nice gitea instance.","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"twisla"},"assets":[{"id":46,"name":"SHA256SUMS","size":275,"download_count":1,"created_at":"2026-10-06T11:41:08Z","uuid":"45391ffd-6672-4eb5-8351-07d770b6518e","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.8.1/SHA256SUMS"},{"id":47,"name":"roro9stack-v0.8.1-factory.bin","size":1867776,"download_count":0,"created_at":"2026-10-06T11:41:08Z","uuid":"6b6ea5f7-7e18-4103-8925-138da9e24d48","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.8.1/roro9stack-v0.8.1-factory.bin"},{"id":48,"name":"roro9stack-v0.8.1.elf.gz","size":13267616,"download_count":0,"created_at":"2026-10-06T11:41:08Z","uuid":"82dce3f5-b63e-45dd-be25-778985206516","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.8.1/roro9stack-v0.8.1.elf.gz"},{"id":49,"name":"roro9stack-v0.8.1.ota","size":1802400,"download_count":1,"created_at":"2026-10-06T11:41:08Z","uuid":"d87a86db-19f4-475e-b3b6-b116143d6b62","browser_download_url":"https://git.twis.la/twisla/roro9stack/releases/download/v0.8.1/roro9stack-v0.8.1.ota"}]}] |