[nanomsg] Plan for 0.9 release — changes coming!

  • From: "Garrett D'Amore" <garrett@xxxxxxxxxx>
  • To: "nanomsg@xxxxxxxxxxxxx" <nanomsg@xxxxxxxxxxxxx>
  • Date: Sat, 30 Apr 2016 12:37:45 -0700

Please pay special attention if you maintain a language binding for
libnanomsg!

THE 0.9 RELEASE WILL BE THE LAST RELEASE WITH AUTOTOOLS SUPPORT.

I’m planning to release 0.9 as an interim step to 1.0.  This introduces a
few changes that folks will need to be aware of.  The ones most likely to
cause grief are the introduction of cmake for all platforms and changes to
the pkg-config data file.

1. All official packages will be generated by cmake rather than autotools.
The autotools scripts and input files will remain in the source tree for
this release, but their use is strongly discouraged and they will be
*removed* in the next release.  This is a transition release.

2. The pkg-config input file is getting renamed from libnanomsg.pc to
nanomsg.pc

3. The cflags will provide -I /usr/local/include (or whatever
prefix/include is correct) — *without* the nanomsg suffix.  The change made
in bug #487 is getting reverted here, and the approach proposed in #561 is
used instead.  In particular, applications must include <nanomsg/nn.h>
instead of just <nn.h>  This *will* break things that rely on the old
bindings.

4. The statistics socket and printing logic are removed.  A new API exists
in their stead.  See nn_get_statistics(3) for details.

5. The documentation is built by default if you have asciidoctor.  I highly
recommend you install this package (gem install asciidoctor — provided you
have Ruby available) so you can have a local copy of the documentation.

6. The tcpmux transport is gone.  It wasn’t being maintained, and frankly
represented some challenging design choices.  In the future, the websocket
transport will offer a superior solution to this problem.

7. The nn_req_send/nn_req_recv which were unimplemented are removed.  (This
most definitely should not impact you.)

The rest of the changes since 0.8 represent bug fixes — a couple of which
are significant stability fixes.  We’re not all the way to what I’d call
production quality yet, which is why we’re not releasing 1.0 immediately —
but we’re getting close.

If anyone has any concern about any of these changes, please let me know
asap.  I am hoping to cut release 0.9 this weekend, or possibly early
during the week.

Again — THIS WILL BE THE LAST RELEASE WITH AUTOTOOLS SUPPORT.

Please plan to begin switching to cmake immediately.  You can start this
work right now by working from the git repository head.

  - Garrett

Other related posts:

  • » [nanomsg] Plan for 0.9 release — changes coming! - Garrett D'Amore