gplugin/gplugin

Make GPluginManager a final type

2021-10-12, Gary Kramlich
a1b0fd07c7f1
Make GPluginManager a final type

* Use g_signal_new_class_handler to handle the accumulator based signals
* Remove the optional struct offset for the non accumulator based signals
* This all fixes the warnings from vapigen as well

Testing Done:
Ran the unit tests, gplugin-query, and gplugin-gtk3-viewer without issue.

Reviewed at https://reviews.imfreedom.org/r/1028/
# GPlugin
[ ![Download](https://api.bintray.com/packages/pidgin/releases/GPlugin/images/download.svg) ](https://bintray.com/pidgin/releases/GPlugin/_latestVersion)
[ ![Issues](https://img.shields.io/badge/Issues-YouTrack-ee3b8b.svg) ](https://issues.imfreedom.org/issues/GPLUGIN)
GPlugin is a GObject based library that implements a reusable plugin system.
It supports loading plugins in multiple other languages via loaders. It relies
heavily on [GObjectIntrospection](https://gi.readthedocs.io/) to expose its API
to the other languages.
It has a simple API which makes it very easy to use in your application.
For more information on using GPlugin in your application, please see the
[embedding](https://docs.pidgin.im/gplugin/latest/chapter-embedding.html) page.
## History
GPlugin has a bit of history, you can read more about it in [HISTORY.md](HISTORY.md)
## Language Support
GPlugin currently supports plugins written in C/C++, Lua, Perl5, Python3, and
Vala.
## API Reference
The in-development API reference for the development branch can be found at
[docs.pidgin.im/gplugin/latest](https://docs.pidgin.im/gplugin/latest/).