[zeromq-dev] cppzmq revival and RFC on design goals and supported platforms

Luca Boccassi luca.boccassi at gmail.com
Thu May 24 13:49:07 CEST 2018


On Thu, 2018-05-24 at 14:40 +0300, Tomer Eliyahu wrote:
> I suggest to add support for building cppzmq without enforcing the
> build of
> libzmq via cmake. In openwrt for example, there is cmake support but
> zmq is
> built with autotools, which majes integrating cppzmq cumbersome so we
> eventually had to patch cppzmq to a previous version and strip some
> cmake
> features which were recently added.

You don't need to build it - it's just a header. Simply include it
wherever needed, which on *nix will be /usr/include/.

> On Wed, May 23, 2018, 19:07 <Simon.Giesecke at btc-ag.com> wrote:
> 
> > Hi,
> > 
> > Pawel Kurdybacha (kurdybacha) and me (sigiesec) have recently
> > started to
> > "revive" cppzmq (https://github.com/zeromq/cppzmq), the light-
> > weight C++
> > wrapper around libzmq. We added CI for Windows/MSVC, Linux and
> > MacOS,
> > implemented tests, cleaned up the CMake infrastructure, formatted
> > the
> > source code consistently and added some overview documentation.
> > 
> > If you are using cppzmq or are interested in using it, we encourage
> > you to
> > have a look at the recent changes.
> > 
> > One particular point we would like to seek feedback on are the
> > design
> > goals, which have recently been documented for the first time. I
> > tried to
> > extrapolate them from the actual design, and from the reasons we
> > chose to
> > use cppzmq in comparison to other alternatives. These are part of
> > the
> > https://github.com/zeromq/cppzmq/blob/master/README.md file:
> > 
> > * cppzmq maps the libzmq C API to C++ concepts. In particular:
> >    * it is type-safe (the libzmq C API exposes various class-like
> > concepts
> > as void*)
> >    * it provides exception-based error handling (the libzmq C API
> > provides
> > errno-based error handling)
> >    * it provides RAII-style classes that automate resource
> > management (the
> > libzmq C API requires the user to take care to free resources
> > explicitly)
> > * cppzmq is a light-weight, header-only binding. You only need to
> > include
> > the header file zmq.hpp (and maybe zmq_addon.hpp) to use it.
> > * zmq.hpp is meant to contain direct mappings of the abstractions
> > provided
> > by the libzmq C API, while zmq_addon.hpp provides additional
> > higher-level
> > abstractions.
> > 
> > We would like to here from you if you agree with these design
> > goals. If
> > you have any opposing views, proposals for improvement or extension
> > of the
> > design goals, please share them on the mailing list or by sending a
> > PR.
> > 
> > Another part of the README is a section on the supported platforms.
> > Please
> > review this section, in particular if you do not use MacOS, Linux
> > or
> > Windows/MSVC with a recent compiler. If you successfully use a
> > different
> > platform, please send a PR to include this in the list of
> > "Additional
> > platforms that are known to work". Support for non-C++11 compilers
> > is
> > already partial only, and might be removed completely, unless there
> > are
> > users that still require such support.
> > 
> > Of course, you are also invited to contribute extensions, new
> > features,
> > cleanup, further tests, etc. to cppzmq.
> > 
> > Best regards
> > Simon
> > 
> > --
> > i.A. Simon Giesecke
> > BTC Business Technology Consulting AG
> > Kurfürstendamm 33
> > 10719 Berlin
> > E-Mail: Simon.Giesecke at btc-ag.com
> > 
> > Rechtliche Hinweise:
> > www.btc-ag.com/impressum.htm
> > Handelsregister: Amtsgericht Oldenburg HRB 4717
> > Aufsichtsratsvorsitzender: Michael Heidkamp
> > Vorstand: Dr. Jörg Ritter, Dirk Thole
> > 
> > _______________________________________________
> > zeromq-dev mailing list
> > zeromq-dev at lists.zeromq.org
> > https://lists.zeromq.org/mailman/listinfo/zeromq-dev
> > 
> 
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev

-- 
Kind regards,
Luca Boccassi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20180524/312b4809/attachment.sig>


More information about the zeromq-dev mailing list