API changelog¶
This page lists each version of the tool API and of the registry format, and which APRScaching releases implement
them. It is for tool authors choosing the api to declare, and for sysops checking what their instance runs.
App releases and versions¶
| APRScaching | Tool API | Registry format | Project registry tags |
|---|---|---|---|
| 1.0 | 1.0 | 1 | v1.x.y |
Each APRScaching release bundles one v1.x.y tag of the project registry. Any 1.x instance may add a newer tag by
address, as long as its tools declare a tool API the instance implements.
Tool API 1.0¶
Implemented by APRScaching 1.0. The first version of the tool API.
- Manifest:
name,title,author,version,api,permissions,surfaces,remote,description,entry,entrySha256,connect,pubkey,signature. - Capabilities:
command,monitor,event,decoder,panel,map,ipc,network,beacon,tx;geois reserved, with no API. - Surfaces:
web,terminal,bbs,node,map. - Script API:
register({ commands, colourRules, panel, decoders });tool.permissions,tool.api,tool.has(),tool.log(),tool.setPanel(),tool.setMapLayer(),tool.setColourRules(),tool.on(),tool.requestTx(),tool.scheduleBeacon(); the bus methodsemit,subscribe,callandprovide. - Events:
on_frame,on_tick,on_connect,on_disconnect;on_beacon,on_findandon_spotreserved. - Feature names for
tool.has():commands.async,commands.remote,decoders.sample,events.reply,colours.src,bus.provide. - Bus names:
station.seen,station.type,render.blocks,session.progress,session.script,link.ping.request,link.rtt; thesession.andhost.prefixes are the app's. - Transmit: APRS status and messages only; one transmission a minute and six an hour per tool.
- Limits: as Limits and budgets lists them.
Registry format 1¶
Read by APRScaching 1.0. { format, entries, authority, sig }, with the authority's Ed25519 signature over
{ format, entries } serialised with object keys sorted (The registry file).
How an entry reads¶
Each later version gets a section of its own, newest first, under these headings:
- Added: what is new, with each feature name for
tool.has(). - Deprecated: what a coming major removes or changes, and its replacement.
- Narrowed for safety: a limit a tool now meets, and how the app shows it.
- Removed: in a new major only.
Next¶
- Versions and compatibility: the rules behind these versions.
- The sandbox API: tool API 1.0 in full.