[Geany-Devel] Proxy Plugins Update

Thomas Martitz kugel at xxxxx
Thu Jul 10 06:06:07 UTC 2014


Am 09.07.2014 19:40, schrieb Matthew Brush:
> On 14-07-09 10:01 AM, Dimitar Zhekov wrote:
>> On Tue, 08 Jul 2014 20:16:49 +0200
>> Thomas Martitz <kugel at rockbox.org> wrote:
>>
>>> My whole libpeas fork is (currently) imported into the geany repo so
>>> it's a bit academic.
>>
>> I'd like to have a libpeas fork, or at least our own copy of the
>> library (the code is actually quite small). The latest libpeas
>> requires glib/gobject/gmodule/gio all >= 2.30, and the Debian package
>> even has gtk+3 as requirement because of libpeas-gtk, which is actually
>> optional and will not be used in Geany.
>>
>
>
> You could use that point to recommend forking all of our dependencies, 
> for example the latest GLib/GObject/GModule/GIO is >= 2.30 too, the 
> latest GTK+ is 3.12 and requires GLib >= 2.39, the latest Pango 
> requires GLib >= 2.32. We can't fork everything :)
>
> IMO, it'd be better just to depend on an older version than the latest 
> like we do for everything else, and maybe open a bug report for the 
> Debian package if it wrongly makes libpeas depend on libpeas-gtk 
> instead of the other way around.
>
> If I understand correctly, libpeas backends are pluggable/modules that 
> do not need to be hardcoded into core either, so there's no too much 
> incentive to keep our own fork/modified copy for that purpose, IMO.


The fork is necessary (for now) for two reasons:
* the code to detect current $plugin.so files as plugins and generate a 
PeasPluginInfo for them (in addition to those indicated by 
$plugin.plugin) has to be in libpeas core, PeasPluginInfo creation is 
not pluggable.
* even though the actual loader is pluggable, the api (PeasPluginLoader 
interface) for that is private. there are no public headers which allow 
third-party loaders so the loader has to be build within libpeas

It's not a huge problem for now since libpeas isn't developed at a 
overwhelming pace currently (mostly because it's simply done).

Best regards.


More information about the Devel mailing list