nng - nanomsg-next-gen
This repository represents a rewrite of the SP protocol library known as libnanomsg.
This is pre-release, but at this point we believe that the library is robust enough to use for development and testing, and we are actively seeing additional testing and review.
While we have made every reasonable effort to ensure that this library is robust and safe, it is still a pre-release, and details are subject to change. Caution is advised before depending upon it.
Note
|
We’re getting pretty close to removing this caveat though, and we’d like help from others in testing to further improve our confidence before we do. |
When the library is ready for broader consumption, an announcement will be posted on the nanomsg mailing list and website.
If you are looking for the current production version of nanomsg, please see the nanomsg repo.
If you want to build and test yourself, you need CMake version 3.1, and you can use standard CMake build recipes. (We highly recommend using Ninja as it is much faster than traditional build systems.) On a Linux/UNIX system, if you have Ninja already installed, you can for example do:
$ mkdir build
$ cmake -G Ninja ..
$ ninja
$ ninja test
This library can be compiled with support for TLS, which enables
the use of the "tls+tcp://" and "wss://" schemes. In order to this,
configure with -DNNG_ENABLE_TLS=ON
.
Note
|
The NNG_ENABLE_TLS library depends on the ARM
mbedTLS library. This library is available
in packaged form for many systems, and can be built for just about
any of the others. However, please be aware of the licensing
implications, because the mbedTLS library carries other licensing
requirements (either Apache or GPL) than nng.
either Apache or GPL licenses.
|
Much of the library, but not all, is documented in the docs/ folder, and also online.
You can also buy a copy of the NNG Reference Manual at Leanpub. (Purchases from Leanpub help fund our work, and get get a nicer formatted single PDF or ebook edition.)
You can also explore the nng.h
header file, which provides the public
API. A legacy compatible nng_compat.h
header is available and
offers API compatibility with legacy nanomsg.
Commercial Support
Commercial support for NNG is available.
Please contact Staysail Systems to inquire further.