[Geany-devel] geany-plugins depends on GIO - plugin API version checks

Lex Trotman elextr at xxxxx
Wed Nov 24 23:54:07 UTC 2010


On 24 November 2010 23:54, Nick Treleaven <nick.treleaven at btinternet.com> wrote:
> On Tue, 23 Nov 2010 09:09:59 +1100
> Lex Trotman <elextr at gmail.com> wrote:
>
>> But the general consensus seems to be that people are happy to use
>> static versioning and to keep conpiling (well it is the developer
>> list) and either manually checking what has changed in an API/ABI
>> break or (more probably) to hope that C's leaky type system catches
>> any problem.
>
> ABI checking is automatic, not manual (assuming the
> PLUGIN_VERSION_CHECK() macro is used and not manually implemented
> wrongly).

What I meant was that if the version fails, my guess is that most
plugin devs just bump the version in their plugin and recompile and
hope that the compiler catches any incompatible changes.  Only the
really conscientious ones will check which functions changed and if it
affects their code.


>
> I would probably accept a patch for a runtime check of Geany's API
> number. I'm not sure how it would be useful ATM.

Urm, PLUGIN_VERSION_CHECK() generates a function that is a runtime
check doesn't it??

Don't you use:

#if GEANY_ABI_VERSION != xxx /* or whatever conditions */
#error ABI mismatch
#endif

for compile time check??

Cheers
Lex

>
> Nick
> _______________________________________________
> Geany-devel mailing list
> Geany-devel at uvena.de
> http://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
>



More information about the Devel mailing list