Simon Giesecke
5224b8704a
Problem: race condition in unit test
...
Solution: fix order of statements in test_events_t
2018-02-13 22:27:15 -05:00
Luca Boccassi
487c275809
Merge pull request #2945 from kachanovskiy/master
...
Fix build break when SIO_LOOPBACK_FAST_PATH is not defined (i.e. in VS2010)
2018-02-13 22:29:38 +00:00
Kachanovskiy
e10464e45e
Fix for build break when SIO_LOOPBACK_FAST_PATH is not defined (i.e. in VS2010)
2018-02-13 23:04:08 +01:00
Luca Boccassi
bc467f0631
Merge pull request #2944 from sigiesec/unity
...
Problem: insufficient unit tests for poller concept and ypipe
2018-02-13 19:05:51 +00:00
Simon Giesecke
94743fd21f
Problem: wrong formatting in several files
...
Solution: apply clang-format
2018-02-13 18:40:43 +01:00
Simon Giesecke
90c6d993be
Problem: kqueue_t fails unittest_poller
...
Solution: fix shutdown of kqueue_t
2018-02-13 18:38:30 +01:00
Simon Giesecke
3b90ad8c63
Problem: support of std::atomic is incomplete in VS <2015
...
Solution: use std::atomic only from VS 2015
2018-02-13 18:38:29 +01:00
Simon Giesecke
9aa957b445
Problem: appveyor builds fails if they are not the most recent commit
...
Solution: use shallow_clone option instead of clone_depth
2018-02-13 18:38:28 +01:00
Simon Giesecke
815c7db06b
Problem: poll build runs as last appveyor build
...
Solution: change order of appveyor build jobs to enable faster feedback
on more diverse builds
2018-02-13 18:38:27 +01:00
Simon Giesecke
0458b85dec
Problem: Some tests timeout on appveyor for POLLER=poll
...
Solution: Increase test timeouts for poll poller under Windows
2018-02-13 18:38:26 +01:00
Simon Giesecke
96131b5b4e
Problem: no documentation of the poller concept
...
Solution: added documentation
2018-02-13 18:38:25 +01:00
Simon Giesecke
fafea72b92
Problem: header files not included in VS project files
...
Solution: add to list of sources
2018-02-13 18:38:24 +01:00
Simon Giesecke
a8e9032dc5
Problem: unreachable code in io_thread_t::process_stop
...
Solution: replaced by assertion
2018-02-13 18:38:24 +01:00
Simon Giesecke
922053237f
Problem: test_sockopt_hwm not using unity
...
Solution: migrate test_sockopt_hwm to unity
2018-02-13 18:38:23 +01:00
Simon Giesecke
a5738529e8
Problem: wsa_assert does not include error code
...
Solution: extend output of wsa_assert
2018-02-13 18:38:22 +01:00
Simon Giesecke
e8e24030ea
Problem: network initialization and shutdown functions not available for
...
reuse
Solution: extract into functions defined in ip.hpp
Problem: signaler_t::make_fdpair not reusable
Solution: move make_fdpair to ip.hpp
Problem: epoll worker with no fds cannot be stopped
Solution: use interruptible epoll_pwait call
Problem: insufficient unit tests for poller
Solution: add test cases
2018-02-13 18:38:17 +01:00
Simon Giesecke
ecb3b503c3
Problem: no output of details on test failure
...
Solution: set CTEST_OUTPUT_ON_FAILURE option
2018-02-12 17:17:32 +01:00
Luca Boccassi
e57afec80e
Merge pull request #2943 from sigiesec/fix-select-unix
...
Problem: data races in select/poll poller implementations
2018-02-12 16:09:08 +00:00
Simon Giesecke
c62574ffca
Problem: segfault in select_t::trigger_events
...
Solution: fixed access to stale vector
2018-02-12 14:42:46 +01:00
Simon Giesecke
11a5388637
Problem: data race w.r.t. select_t::stopping
...
Solution: change termination condition of select_t
2018-02-12 14:42:33 +01:00
Simon Giesecke
e650240580
Problem: data race w.r.t. poll_t::stopping
...
Solution: remove stopping, stop on thread-safe conditions; add
additional checks for correct thread-safe usage
2018-02-12 14:41:53 +01:00
Simon Giesecke
08201bc1b9
Problem: select blocks forever under Unix
...
Solution: fixed call of select, and initialization of poll_t members
2018-02-12 14:39:02 +01:00
Luca Boccassi
a30133d8f5
Merge pull request #2935 from ZMQers/unity-base
...
Problem: no test framework, no unit tests
2018-02-12 11:01:08 +00:00
Luca Boccassi
d0e01b4bb2
Problem: regression with "select" on *nix ( #2940 )
...
* Problem: build failure with select as polling mechanism
Solution: cast mailbox_handle argument to (poller_t::handle_t) like in
the reaper thread class.
* Problem: build failure due to INT_MAX use without include
Solution: include limits and climits in src/select.cpp where INT_MAX is
used
* Problem: build failure due to unused variable in select.cpp
Solution: move the declaration of int rc inside the ifdef block where
it is actually used
* Problem: reference to wrong variable in select.cpp breaks build
Solution: fix it
* Problem: family_entry_t constructor has no body, build fails on *nix
Solution: add empty inline function in the struct
* Problem: no test coverage for poll and select
Solution: add Travis jobs for them on Linux
* Problem: Travis jobs cannot run in container infra
Solution: set sudo: false as it is not required anymore
2018-02-12 03:01:03 -05:00
Simon Giesecke
9ec95f9d46
Problem: build failure with VS <2015, has no snprintf
...
Solution: use _snprintf when snprintf is not available
2018-02-11 17:33:13 +00:00
Luca Boccassi
29e304ea5c
Problem: unity license not mentioned in debian/copyright
...
Solution: add it
2018-02-11 17:33:13 +00:00
Luca Boccassi
1478fd0022
Problem: unittests not built with autotools
...
Solution: add them to Makefile.am, linking to the static libzmq.a
library and its dependencies
2018-02-11 17:33:13 +00:00
Luca Boccassi
f6f67cbf96
Problem: no autotools support for building with unity
...
Solution: add a noinst convenience static library and use it with the
tests that require it
2018-02-11 17:25:36 +00:00
Simon Giesecke
7ea924c763
Problem: segfault on thread_t::stop if thread was never started
...
Solution: add started flag
2018-02-11 17:25:36 +00:00
Simon Giesecke
56c726d425
Problem: no unit tests
...
Solution: set up initial unit tests
2018-02-11 17:25:36 +00:00
Simon Giesecke
f87d3ab294
Problem: pollers unnecessarily depend on whole ctx_t, but actually use only start_thread method
...
Solution: extract thread_ctx_t from ctx_t
2018-02-11 17:25:36 +00:00
sigiesec
687f6a694f
Problem: license and source information missing
...
Solution: added MIT license file and github source info
2018-02-11 17:25:36 +00:00
sigiesec
5f854a31b7
Problem: test_security_curve not using test framework
...
Solution: use unity in test_security_curve
2018-02-11 17:25:36 +00:00
sigiesec
21879abb5b
Problem: test_socket_null not using test framework
...
Solution: rewrite test_socket_null to use unity
2018-02-11 17:25:36 +00:00
sigiesec
61a28a26cc
Problem: no test framework
...
Solution: add unity test framework, and integrate into cmake build
2018-02-11 17:25:36 +00:00
Luca Boccassi
afd5d9f721
Merge pull request #2939 from sigiesec/fix-poll-timer-event-retiring
...
Fixed a deadlock and an assertion failure in poll_t
2018-02-11 17:06:36 +00:00
Simon Giesecke
5873894c83
Problem: wrong assertion macro used on Windows
...
Solution: use wsa_assert instead of errno_assert
2018-02-11 13:52:41 +01:00
Simon Giesecke
2f27bcd74b
Problem: assertion failure in poll_t::poll if timer_event retired a
...
pollset entry
Solution: clean up retired entries before poll
2018-02-11 13:49:26 +01:00
Simon Giesecke
a2af3d18cc
Problem: unittest_poller fails for poll_t
...
Solution: fixed behaviour in corner cases
2018-02-11 13:49:25 +01:00
Simon Giesecke
ac777bad94
Merge pull request #2938 from bluca/format_autotools
...
Problem: make format-check not implemented with autotools
2018-02-10 15:26:53 -05:00
Simon Giesecke
504e6d0ecc
Merge pull request #2937 from bluca/gcc_4_build
...
Problem: DRAFT build broken with GCC 4.7
2018-02-10 15:25:54 -05:00
Luca Boccassi
d832267e23
Problem: make format-check not implemented with autotools
...
Solution: port implementation from zproject
2018-02-10 17:35:12 +00:00
Luca Boccassi
9b1ce59719
Problem: DRAFT build broken with GCC 4.7
...
Solution: change variable type in test_timers to match public API
2018-02-10 17:08:01 +00:00
Luca Boccassi
c33cb38af2
Merge pull request #2928 from eponsko/master
...
Add support for ZMQ_XPUB_NODROP on ZMQ_RADIO sockets
2018-02-09 17:15:47 +00:00
Luca Boccassi
eded1f8b90
Merge pull request #2923 from sigiesec/fastpath
...
Add support for SIO_LOOPBACK_FAST_PATH on Windows
2018-02-09 17:08:51 +00:00
Pontus Sköldström
a57f7e3824
Add support for ZMQ_XPUB_NODROP on ZMQ_RADIO sockets
...
Solves issue #2927
2018-02-09 16:20:50 +01:00
Simon Giesecke
a5e763039d
Problem: use of TCP loopback fastpath not available for user sockets
...
Solution: add socket option
2018-02-09 14:22:42 +01:00
sigiesec
490d76da2f
Problem: SIO_LOOPBACK_FAST_PATH not activated for signaler socket pair
...
Solution: activate SIO_LOOPBACK_FAST_PATH if available
See #2899
2018-02-09 13:50:40 +01:00
Luca Boccassi
9544dade49
Merge pull request #2926 from sigiesec/fix-issue-2925
...
Problem: assertion failure in poller_base.cpp:42
2018-02-09 09:49:17 +00:00
sigiesec
50d80d0835
Problem: test_timeo frequently fails on travis, probably because of slow
...
execution
Solution: relax test assertion to what can be guaranteed
2018-02-09 09:56:38 +01:00