Plugin API Changelog
All notable changes to winisland-plugin-api are documented here.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.3 - Jun 19, 2026
Added:
MediaSourceC— plugin-injectable media source (title, artist, album, duration, position, cover art)HostApiC::set_media_source— replace SMTC with plugin-provided media dataHostApiC::clear_media_source— restore SMTC as the active media source
Changed:
HostApiCderivesClone,Copyfor safe FFI usagePluginResultCderivesDebug,Clone,CopyContextDataC,ContextIdC,HostStateC— new push-based context typesPluginVTable::set_host_api— optional slot for plugin to receiveHostApiCpointer
0.1.2 - Jun 17, 2026
Added:
- README.md with crate-level documentation, usage examples and feature flags
0.1.1 - Jun 16, 2026
Added:
packagerfeature:PluginPackagerfor building, signing and zipping plugins- Cargo.toml metadata for crates.io publishing (repository, homepage, license, keywords, categories)
docs.rsconfiguration withpackagerfeature enabled
Changed:
- Use
str_to_fixedhelper for byte-buffer initialization, replacing manual padding loops - Packager validates
manifest.yamlduringbuild(); checks for missing fields and oversized buffers github_linkfield inManifestis now required (non-empty) to satisfy host validation
Fixed:
plugin_get_instancedoc example uses proper#[no_mangle]export, no extraneousfn main- Broken doc links in packager module docs
BG_CACHEsize check in signing flow
0.1.0 - Jun 15, 2026
Added:
- Initial release — C ABI types extracted from the WinIsland host into a standalone crate
- Core types:
PluginInstanceC,PluginVTable,PluginMetadataC,IslandContentC,ThemeColorsC,AnimationConfigC,ShortcutC,PluginResultC PluginTypeenum withfrom_u32conversionPluginGetInstanceFn— entry-point signature for plugin DLLsstr_to_fixed/read_c_str/read_opt_c_strhelpers for FFI byte-buffer handling- Priority constants:
PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH - Content tag constants:
ISLAND_CONTENT_TAG_MUSIC,ISLAND_CONTENT_TAG_NOTIFICATION,ISLAND_CONTENT_TAG_STATUS