Commit Graph

656 Commits

Author SHA1 Message Date
Simon Giesecke
c7766c083a
Merge pull request #389 from SylvainCorlay/wrap-find-package-zeromq
Wraping calls to find_package
2020-03-07 15:04:22 +01:00
Gudmundur Adalsteinsson
5ecbf86bcf Problem: send_multipart fails on old gcc versions
Solution: remove template type checks if there is only partial C++11 support
2020-03-07 13:22:01 +00:00
Sylvain Corlay
9cb042e711 Also skip if libzmq-static is defined 2020-03-05 13:59:45 +01:00
Sylvain Corlay
8d731ea900 Wrap find_package 2020-03-05 12:26:15 +01:00
Gudmundur Adalsteinsson
5999e5adc7
Problem: Macros not defined in older versions (#386)
* Problem: Macros not defined in older versions

Solution: Guard usage of libzmq macros

* Test older version of libzmq with C++11 or later

* Use a slightly newer libzmq version
2020-02-21 11:29:12 +01:00
Gudmundur Adalsteinsson
324b11f239
Problem: Context lacks typesafe options
Solution: Define an enum class for the context options

Co-Authored-By: Simon Giesecke <simon.giesecke@gmail.com>

Co-authored-by: Simon Giesecke <simon.giesecke@gmail.com>
2020-02-07 15:39:58 +01:00
Luca Boccassi
4bd01bc0ef
Merge pull request #380 from zeromq/reformat
Reformat all files with clang-format
2020-01-28 10:37:30 +00:00
Simon Giesecke
b6c79eb0c8 Reformat all files with clang-format 2020-01-28 11:11:31 +01:00
Gudmundur Adalsteinsson
47969cfdcf Problem: shutdown() missing for context_t (#377)
Solution: Add shutdown(). This function is required
for clean termination of the zmq context in multi-threaded
applications where sockets are used in threads. In particular
if blocking operation are used and if sockets can be created
at any time.

* Improve tests and documentation
2020-01-27 08:31:46 +01:00
Simon Giesecke
70d059bd0a
Increase version number to 4.7.0 after release to prepare for next development iteration 2020-01-17 17:32:09 +01:00
Simon Giesecke
8d5c9a8898
Merge pull request #374 from gummif/patch-2
Problem: Invalid 32bit issues when using Conan
2020-01-16 09:30:11 +01:00
Gudmundur Adalsteinsson
ff994d9676 Improved comment on workaround 2020-01-15 18:14:26 +00:00
Gudmundur Adalsteinsson
615380b485
Problem: Invalid 32bit issues when using Conan
Solution: Remove architechture checks from cmake version file

Since this is a header only library there is no need to check for 32 vs 64bits.

See similar problem: https://github.com/onqtam/doctest/pull/225
2020-01-15 10:34:48 +00:00
Simon Giesecke
bd27f24960
Merge pull request #373 from gummif/gfa/tostring
Problem: message_t to string is hard
2020-01-09 14:33:13 +01:00
Gudmundur Adalsteinsson
4f9c2ea519 Problem: message_t to string is hard
Solution: add to_string() function.
2020-01-07 19:54:47 +00:00
Simon Giesecke
de07119a92
Merge pull request #370 from gummif/gfa/multipartn
Problem: Missing recv multipart to fixed buffers
2019-12-07 13:55:52 +01:00
Gudmundur Adalsteinsson
30fdfe0287 Simplify code by trusting the compiler 2019-12-07 12:06:15 +00:00
Simon Giesecke
0f8601c9eb
Merge pull request #371 from gummif/gfa/move-ctors
Problem: Move assigned objects still alive
2019-12-07 10:59:18 +01:00
Gudmundur Adalsteinsson
d3abe06ba3 Problem: Move assigned objects still alive
Solution: Close context/socket if move assigned to
2019-12-05 20:17:43 +00:00
Gudmundur Adalsteinsson
93e3090eb3 Problem: Missing recv multipart to fixed buffers
Solution: Add recv_multipart_n function
2019-12-05 20:02:38 +00:00
Simon Giesecke
5ee8261743
Merge pull request #366 from gummif/gfa/detail-in-api
Problem: Detail namespace used in API
2019-11-21 18:28:55 +01:00
Gudmundur Adalsteinsson
0ef29c1b30 Problem: Detail namespace used in API
Solution: Move types into zmq namespace
2019-11-12 19:54:28 +00:00
Simon Giesecke
28aecd91fa
Merge pull request #367 from gummif/gfa/no-tests
Problem: No multipart tests are begin run
2019-11-12 09:40:56 +01:00
Gudmundur Adalsteinsson
76e5fb04a9 Problem: No multipart tests are begin run
Solution: Move ifdef
2019-11-09 12:40:02 +00:00
Simon Giesecke
a34d2a3da9
Merge pull request #358 from gummif/gfa/send-recv-multipart
Problem: Handling multipart messages is complex
2019-11-08 09:41:25 +01:00
Gudmundur Adalsteinsson
d4d3ce3e90 Suppport for raw arrays in send_multipart 2019-11-06 08:15:37 +00:00
Gudmundur Adalsteinsson
5cc7793ef5 Improve algorithms and documentation 2019-11-05 20:33:55 +00:00
Simon Giesecke
829997d4e8
Update version number to 4.6.0 to prepare for next development iteration 2019-11-04 16:44:44 +01:00
Simon Giesecke
e67fa0e16d
Merge pull request #357 from gummif/gfa/nodiscard-recv
Problem: recv return value should not be ignored
2019-11-04 16:36:45 +01:00
Gudmundur Adalsteinsson
41dee3e7a3 Remove comment, fix includes 2019-10-27 10:28:45 +00:00
Gudmundur Adalsteinsson
c9225c17db Add a more complex example involving multi-part messages 2019-10-26 20:22:02 +00:00
Gudmundur Adalsteinsson
505edeb336 Problem: Handling multipart messages is complex
Solution: Add generic algorithms for sending and receiving multipart
messages.
2019-10-26 19:59:46 +00:00
Gudmundur Adalsteinsson
4bc232c175 Problem: recv return value should not be ignored
Solution: add nodiscard attribute to recv functions
2019-10-26 12:31:51 +00:00
Simon Giesecke
fdb2f13971
Merge pull request #356 from phlptp/addon_include_convention
Switch zmq_addon.hpp to include zmq.hpp using "zmq.hpp" instead
2019-10-16 15:17:24 +02:00
Philip Top
563d2355a0 Switch zmq_addon.hpp to include zmq.hpp using "zmq.hpp" instead of <zmq.hpp> This allows it to look in the current directory for the header file. This enables the ability to have cppzmq as a subdirectory of an included folder vs needing to have the cppzmq on the include search path, and makes it less likely the wrong version would get included if more than one zmq.hpp header happened to be available. 2019-10-16 05:56:24 -07:00
Simon Giesecke
de05d33029
Merge pull request #355 from phlptp/cpp17_library_fixes
C++17 library fixes
2019-10-16 09:48:13 +02:00
Philip Top
d5cbaf4682 Explicitly check for optional and string_view in cases where the C++17 language is operational but the standard library in use does not have those headers.
add check for using stdlibc++ with clang or icc to make sure is_trivially_copyable is available.
2019-10-14 07:58:25 -07:00
Simon Giesecke
ca1ca7caae
Merge pull request #354 from gummif/gfa/clang-test
Problem: No tests with clang
2019-10-07 11:00:24 +02:00
Gudmundur Adalsteinsson
0abc513be9 Problem: No tests with clang
Solution: Add clang-8 to travis matrix
2019-10-05 20:12:05 +00:00
Simon Giesecke
e08ab12de2
Merge pull request #349 from gummif/gfa/clang-error
Problem: Build error with clang
2019-09-19 13:28:11 +02:00
Simon Giesecke
a0fab1854f
Merge pull request #338 from gummif/gfa/clarify-example
Clarify example requirements
2019-09-19 13:27:06 +02:00
Gudmundur Adalsteinsson
34ea5b7805 Problem: Build error with clang
Solution: Some compilers incorrectly define __GNUC__, added workaround for clang and icc.
2019-09-17 20:24:44 +00:00
Gudmundur Adalsteinsson
4b443fc59b Clarify example requirements 2019-09-14 20:10:47 +00:00
Simon Giesecke
b2fa1192bd
Merge pull request #343 from gummif/gfa/str-buffer
Problem: Sending string literals is awkward
2019-09-13 09:40:08 +02:00
Gudmundur Adalsteinsson
7d9e5cb421 Add user-defined string literals to create buffers 2019-09-11 20:38:47 +00:00
Gudmundur Adalsteinsson
ab588fb7c9 Assertion and constexpr improvements for str_buffer 2019-09-11 20:21:02 +00:00
Simon Giesecke
88ada98d0b
Merge pull request #347 from gummif/gfa/aliasing-warning
Problem: Strict aliasing warning in tests
2019-09-11 13:13:11 +02:00
Gudmundur Adalsteinsson
57d3681ee4 Problem: Strict aliasing warning in tests
Solution: Use memcpy instead of reinterpret_cast
2019-09-10 20:13:45 +00:00
Gudmundur Adalsteinsson
13cc1e0fe9 Problem: Sending string literals is awkward
Solution: A function str_buffer specifically for
creating buffers for null terminated string literals.
2019-09-03 14:06:19 +00:00
Simon Giesecke
3b1038d035
Merge pull request #337 from gummif/gfa/clang-warnings
Problem: Warnings about send being deprecated
2019-09-02 12:26:20 +02:00