[zeromq-dev] Governance of language bindings
Martin Sustrik
sustrik at 250bpm.com
Mon Jan 25 13:50:38 CET 2010
Hi all,
The number of language bindings for 0MQ is steadily increasing (we even
have Haskell binding now!) making the build process, quality assurance
and packaging pretty complex. Even more importantly, there's no single
person out there that can handle it all.
Thus I thought of distributing the responsibility to improve the
process. My main idea is that if we can keep libzmq ABI stable, there's
no need to tightly couple 0MQ core and the language bindings. As for the
ABI, there isn't much reason for changing it in forseeable future (aside
of adding new constants).
Decoupling the core library from the bindings can be done on several levels:
1. Source code. Instead of packing everything into the same repository
each binding can have separate repository with its own maintainers etc.
2. Quality assurance. The community around each binding can make sure
that the binding works as expected.
3. Release cycle. With stable ABI, individual binding releases don't
have to be synchronised with releases of 0MQ core.
4. Packages for individual language bindings can be created separately
each depending on the core 0MQ but not depending each on another.
In overall, my feeling at the moment is that core 0MQ should include
just small subset of language bindings to ensure basic usability of the
product. The rest should be handed to focused development communities.
www.zeromq.org can serve as a directory of existing language bindings.
zeromq-dev at lists.zeromq.org can still be used to discuss the bindings,
so that developers have at least an idea of what's being done even if
the language binding doesn't concern them personally.
Please, feel free to discuss. It's important that we find the best model
to maintain the product with large amount of language bindings.
Thanks!
Martin
More information about the zeromq-dev
mailing list