Add note about not appending to structs like KeyBindingGroup and

GeanyCallback.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2408 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
Nick Treleaven 2008-03-26 13:35:34 +00:00
parent da9bd88484
commit 2d4fddb2fc

11
HACKING
View File

@ -19,8 +19,6 @@ You can generate documentation for the plugin API using the doxygen
tool. Run 'make api-doc' in the doc subdirectory. The documentation will tool. Run 'make api-doc' in the doc subdirectory. The documentation will
be output to doc/reference/index.html. be output to doc/reference/index.html.
See the Related Pages section for a link to the plugin howto.
Patches Patches
------- -------
We are happy to receive patches, but it's best to check with us by email We are happy to receive patches, but it's best to check with us by email
@ -49,8 +47,13 @@ Keeping the plugin ABI stable
----------------------------- -----------------------------
Please be aware that anything with a doc-comment (a comment with an Please be aware that anything with a doc-comment (a comment with an
extra asterix: '/**') is something in the plugin API. Things like enums extra asterix: '/**') is something in the plugin API. Things like enums
and structs can still be appended to, ensuring that all the existing and structs can usually still be appended to, ensuring that all the
elements stay in place - this will keep the ABI stable. existing elements stay in place - this will keep the ABI stable.
Note: Some structs like KeyBindingGroup and GeanyCallback cannot be
appended to without breaking the ABI because they are used to declare
structs by plugins, not just for accessing struct members through
a pointer.
Before the 1.0 release series, the ABI can change when necessary, and Before the 1.0 release series, the ABI can change when necessary, and
even the API can change. An ABI change just means that all plugins will even the API can change. An ABI change just means that all plugins will