Commit Graph

354 Commits

Author SHA1 Message Date
Luca Boccassi
97d2cb2498
Merge pull request #249 from sigiesec/add-monitor-tests
Add first tests for monitor_t and fix monitor_t::abort
2018-06-05 16:39:58 +01:00
Simon Giesecke
58ffef7190 Problem: no tests for monitor_t::abort
Solution: add a test and fix implementation of monitor_t::abort to make it usable
2018-06-05 17:27:32 +02:00
Simon Giesecke
ec63fb3485 Problem: no test case for zmq::monitor_t::init
Solution: added test case
2018-06-05 17:27:28 +02:00
Simon Giesecke
e0b5629a28
Merge pull request #248 from kurdybacha/readme_update
Problem: README build badges too generic
2018-06-04 17:49:17 +02:00
Pawel Kurdybacha
29d3990770 Problem: README build steps can be simpler.
Solution: After latest fixes to cmake configuration it is not required
to pass include to libzmq. Please refer to demo/ for reference.
2018-06-04 16:46:41 +01:00
Pawel Kurdybacha
bfb3a5d6f7 Problem: README build badges too generic
Solution: Show Linux, OSX and Windows labels on build badges for more
visibility on supported platforms.

Additionally added license badge.
2018-06-04 16:39:38 +01:00
Constantin Rack
edc14b64fd
Merge pull request #247 from kurdybacha/coveralls
Problem: Coverage with coveralls not working
2018-06-04 07:27:29 +02:00
Pawel Kurdybacha
9a7a85703c Problem: Coverage with coveralls not working
Solution: Enable coveralls for one linux build target and fix coveralls
configuration.
2018-06-03 19:09:44 +01:00
Luca Boccassi
3c14d37d8b
Merge pull request #243 from sigiesec/fail-if-libzmq-not-found
Problem: cmake build succeeds even if libzmq not found
2018-05-25 10:25:45 +01:00
Simon Giesecke
c69c1f903f Problem: cmake build succeeds even if libzmq not found
Solution: raise a FATAL_ERROR if not found, and improve diagnostic output
2018-05-25 11:13:32 +02:00
Luca Boccassi
1f14f9a34e
Merge pull request #240 from kurdybacha/draft-git
Problem: Travis requires sudo and draft not enabled for git repo
2018-05-23 22:14:17 +01:00
Pawel Kurdybacha
115bfffc50 Problem: Travis requires sudo
sudo was required for for pkg-config libzmq build as cppzmq could not
find not installed pkg-config libzmq.

Solution: cppzmq to use cmake prefix paths for pkg config paths as well.
2018-05-23 19:18:28 +00:00
Pawel Kurdybacha
9d058b3a5e Problem: draft not explicitly enabled on Windows CI 2018-05-23 19:15:43 +01:00
Pawel Kurdybacha
380e39856b Problem: draft build not enabled for git repo
cppzmq does not follow other zeromq projects where draft builds are
enabled by default for git repository.

Solution: revert back code where ENABLE_DRAFTS in set to ON if .git
directory exists
2018-05-23 18:34:44 +01:00
Simon Giesecke
7023764834
Merge pull request #235 from Tulon/master
Add message_t::routing_id() and set_routing_id()
2018-05-20 09:25:20 +02:00
Simon Giesecke
3e56f561cc
Merge pull request #236 from kurdybacha/cmake-tweaks
Problem: cppzmq build broken with C++11 compiler and git cloned repo.
2018-05-20 09:05:33 +02:00
Pawel Kurdybacha
099bcfc4a4 Problem: cppzmq build broken with C++11 compiler and git cloned repo.
Default build, ./ci_build.sh without any arguments, which causes to run
with draft disabled, does not work properly for git cloned repository and
C++11 compiler.

Two issues:
1. For git cloned repository ENABLE_DRAFTS is ON by default but libzmq
compiled build without drafts .Travis did not catch that because default build
runs on non C++11 compiler.
2. testutil.hpp does not build because of missing draft guards.

Solution 1: Remove check for presence of .git for enabling draft API as it
is confusing to use with ENABLE_DRAFTS flag and there should be only one
explicit way to enable draft build.

Solution 2: add missing draft guards in testutil.hpp for server/client
socket in use there.

Solution 3: add extra Travis build covering C++11 compiler and non
draft enabled build.
2018-05-20 07:53:56 +01:00
Simon Giesecke
d487e67249
Merge pull request #234 from kurdybacha/cmake-tweaks
Problem: cppzmq needs to be installed for pkg-config libzmq
2018-05-19 11:30:42 +02:00
Joseph Artsimovich
d4374cbebe Add message_t::routing_id() and set_routing_id()
Setting a routing id is necessary when sending a message through a
ZMQ_SERVER socket. See [1] for more details.

[1] http://api.zeromq.org/4-2:zmq-socket#toc5
2018-05-19 08:44:41 +03:00
Pawel Kurdybacha
869ebe111a Problem: wrong version of libzmq in README.
Solution: Change it to CI supported 4.2.0
2018-05-18 22:42:13 +01:00
Pawel Kurdybacha
ecbcf10ddf Problem: cppzmq needs to be installed for pkg-config libzmq
Solution: Make sure that FinZeroMQ.cmake is present in cppzmq's build
(binary) directory
2018-05-18 22:36:35 +01:00
Simon Giesecke
b11e44550a
Merge pull request #232 from kurdybacha/pkgconfig-build
Problem: libzmq pkg-config build not covered by CI
2018-05-17 12:30:37 +02:00
Pawel Kurdybacha
265a1071e2 Problem: Default Travis build variables not defined.
Solution: simplify Travis config file by defining default build options
DRAFT and ZMQ_VERSION in ci_build.sh script
2018-05-16 21:24:38 +01:00
Pawel Kurdybacha
88bb8b1980 Problem: demo does not build for libzmq pkg-config case.
It seems to be a problem with cppzmq where FindZeroMQ.cmake is not
found without installing cppzmq.

Solution: install cppzmq for pkg-config build type.
2018-05-16 21:13:39 +01:00
Pawel Kurdybacha
9b0dd89cd9 Problem: Travis container with sudo long start
Solution: Move sudo required build to top to start sooner to get better
overall build time.
2018-05-16 21:13:39 +01:00
Pawel Kurdybacha
8dfec111f7 Problem: libzmq pkg-config build not tested
Solution: build and install libzmq using autogen tools.
2018-05-16 21:13:39 +01:00
Luca Boccassi
6fe3d54359
Merge pull request #230 from kurdybacha/osx-build
Problem: OSX build not enabled in Travis
2018-05-13 17:29:42 +01:00
Pawel Kurdybacha
4b6c4b6289 Problem: OSX not present in supported OS section.
Solution: README file updated.
2018-05-13 17:08:03 +01:00
Pawel Kurdybacha
fe56665b06 Problem: redundant addson and os section in Travis config
Solution: sections removed
2018-05-13 16:57:53 +01:00
Pawel Kurdybacha
8d84f9a1af Problem: cmake already pre-installed on OSX
Solution: do not try to install cmake on OSX and add clang as used
compiler explicitly
2018-05-13 16:57:24 +01:00
Pawel Kurdybacha
6cd57fad17 Problem: not all cores used on Travis
Solution: As Travis enables 2 cores let's use them both
2018-05-13 16:57:24 +01:00
Pawel Kurdybacha
3807107f56 Problem: coveralls does not install on OSX
Solution: enable coverall on linux only.
2018-05-13 16:57:24 +01:00
Pawel Kurdybacha
4311d1d933 Problem: enabled sudo for travis build
After previous changes `sudo` is not required anymore.
Solution: disable sudo.
2018-05-13 16:57:24 +01:00
Pawel Kurdybacha
0fd3e165f3 Problem: OSX build does not start first.
Solution: remove matrix and include build combination manually.
2018-05-13 16:05:13 +01:00
Pawel Kurdybacha
1fc0675a83 Problme: OSX build does not use clang
Default compiler on OSX is clang so it should be default.
Solution: switch from gcc to clang for OSX build.
2018-05-13 15:55:10 +01:00
Pawel Kurdybacha
738d44dc88 Problem: OSX build not enabled
Solution: Enable OSX build with DRAFT and latest libzmq
2018-05-13 15:44:46 +01:00
Pawel Kurdybacha
21350a3fd3 Problem: Only one version of libzmq tested
Solution: use libzmq 4.2.4, last two releases in use now.
2018-05-13 15:30:56 +01:00
Pawel Kurdybacha
a5578a6f25 Problem: libzmq 4.2.0 cmake build broken
It seems that there is a bug in libzmq 4.2.0 cmake configs that prevents
linking to it without installing.

Solution: disable libzmq 4.2.0 for cmake builds
2018-05-13 15:30:56 +01:00
Pawel Kurdybacha
3dc20bb05a Problem: libzmq builds with tests
libzmq build with default settings now which build all the tests and
performance tools. This is not required for cppzmq build and slows down
it only.

Solution: disable tests build for libzmq and make it release only.
2018-05-13 15:30:56 +01:00
Pawel Kurdybacha
f35cbe2930 Problem: libzmq installed during build
There is no need to install libzmq into the system.
Out of source build can be used later to build cppzmq.

Solution: remove install steps and rely more on cmake to handle
directory creation.
2018-05-12 18:28:19 +01:00
Luca Boccassi
f81accd6b1
Merge pull request #228 from kurdybacha/clang-format
Problem: whitespace style too restrictive.
2018-05-12 17:37:56 +01:00
Pawel Kurdybacha
ff3c221516 Problem: whitespace style too restrictive.
For header only library like cppzmq, whitespace style inherited from
libzmq is too restrictive.

Solution: relaxing whitespace before parens from always to in control
statements only, increased max column width from 80 to 85 and removing
requirement of whitespace after template keyword.
2018-05-12 17:28:28 +01:00
Luca Boccassi
590cf711e5
Merge pull request #227 from sigiesec/poller-wait-all-return-sizet
Problem: poller_t::wait_all and active_poller_t::wait declare int ret…
2018-05-12 11:31:15 +01:00
Giesecke
65ae6b33fd Problem: poller_t::wait_all and active_poller_t::wait declare int return type but actually return an element count
Solution: change return type to size_t, remove a redundant if in consequence
2018-05-12 09:18:46 +02:00
Simon Giesecke
bc82352c95
Merge pull request #226 from kurdybacha/clang-format
Problem: inconsistent code style
2018-05-11 23:21:45 +02:00
Pawel Kurdybacha
cd72eef3fd Problem: zmq_addon.hpp not follow clang-format 2018-05-11 20:32:23 +01:00
Pawel Kurdybacha
5031278f18 Problem: project files do not follow clang-format 2018-05-11 20:29:15 +01:00
Pawel Kurdybacha
7732903177 Problem: trailing whitespaces in clang-format file 2018-05-11 20:08:26 +01:00
Pawel Kurdybacha
85f759a170 Problem: inconsistent code style
Solution: copy .clang-format from `libzmq` as a starting point.

There is no need to follow exactly what libzmq does but it seems
reasonable starting point. It would be good to stick to one style as
there is a lot of activity and good ideas lately.
2018-05-11 20:03:15 +01:00
Luca Boccassi
0f840ce3f8
Merge pull request #225 from sigiesec/split-poller-layer
Split poller_t into two layers
2018-05-11 13:56:16 +01:00