
Jeremy Pack wrote:
Did you check out the code that I put up at http://sourceforge.net/projects/boost-extension/? I'm currently working on the documentation and unit tests for it (there are a few unit tests in it already). It should run on OS X, Windows and *nixes.
Hello! I'm very interesting in such library for my project and would like to help. Sorry for my English I'm not a native speaker.
I actually work for Google, so I can help out with SoC.
I really would not mind assistance with the library - this is only one of a few projects that I'm working on in my free time. I'm especially interested in any new ideas.
The library needs:
1 - More unit tests 2 - Performance analysis 3 - Good documentation
I really want to help with it.
I've thought of the following possible extensions for the library:
1 - A mechanism for, optionally, automatically closing linked libraries when they are no longer needed. 2 - An option to not use RTTI, which is currently required (there are various ways to do this - there have been suggestions to use some of the features in Boost.Serialization, and there are various slightly hacky techniques for it). 3 - Other bits of expanded linked library functionality.
I built very full featured versions of the library earlier, but decided in the end that a very clean, extensible interface was more important. So I started from scratch about a month ago, resulting in what you see on Sourceforge.
What features do you think are important?
Here is requirements for my project's plug-in system (actually, it is a framework for _services_): 1. Locate and load plug-ins at start. 2. Load and unload plug-ins dynamically. 3. Track and resolve dependencies between plug-ins. 4. Plug-ins can add services and/or resources to service registry when loaded and remove them when unloaded. 5. One can ask list of registered services' identifiers with concrete name or satisfying custom condition. 6. After that one can acquire service by identifier. 7. If requested to unload plug-in is marked as removed and its services are removed from the registry. Plug-in does unload when all its services are released. 8. It is possible to register services without loading plug-in's dynamic library. Framework will load the plug-in on demand. 9. There can be many plug-in loaders in the framework also registered as services. My attempt was to mimic OSGI ( www.osgi.org/ ) bundles. Have you any ideas about it? Vladimir Volod'ko