flipperdevices / flipperzero-firmware

Flipper Zero firmware source code
https://flipperzero.one
GNU General Public License v3.0
13.01k stars 2.75k forks source link

FAP: Stable `api_version` across firmware releases #1806

Closed twitchyliquid64 closed 2 years ago

twitchyliquid64 commented 2 years ago

Describe the enhancement you're suggesting.

As a plugin author, it would be great if I could compile an app targeting a specific API version, and then it would run on all flipper firmwares supporting it.

Ive started figuring out how to compile plugins separately to the firmware source here, but it would be great if it didnt need to target a specific release each time.

Basically I'm looking for somerthing similar to Androids 'min api version'.

Anything else?

No response

DrZlo13 commented 2 years ago

Hello. This is how it works right now. Compiler embeds the major and minor versions of current API into elf, and major version will be checked at the loading stage of the elf loader.

Major and minor API versions do not refer to firmware versions.

DrZlo13 commented 2 years ago

But expect the API versions to increase frequently until we release version 1.0.

DrZlo13 commented 2 years ago

You can learn more about API versioning here.