Simon Giesecke
b495021ac8
Merge pull request #404 from gummif/gfa/encoding-endian
...
Problem: No endian check in encoding
2020-05-15 11:58:04 +02:00
Simon Giesecke
9b824dd36f
Merge pull request #407 from jcfr/fix-macos-10.11.6-default-init-error
...
Fix error: default initialization of an object of const type
2020-05-14 12:32:05 +02:00
Simon Giesecke
bb321ee46f
Merge pull request #413 from Magikhead/fix-grammatical-error-in-multipart_t-str
...
Address Grammatical Error in multipart_t:str()
2020-05-14 12:05:14 +02:00
Simon Giesecke
a6ca65cbfc
Merge pull request #401 from gummif/gfa/msg-ub
...
Problem: UB in message_t constructor
2020-05-14 12:04:22 +02:00
Collin H. Reed
0bba33d91c
Address Grammatical Error in multipart_t:str()
...
Fixes grammatical error in multipart_t:str() function.
2020-05-11 13:20:06 +00:00
Jean-Christophe Fillion-Robin
5e2862320d
Fix error: default initialization of an object of const type
...
This commit fixes a regression introduced in a3e5b54c3
(Problem: Socket
options lack type-safety (#393 )).
It addresses the following error reported when building the project
on macOS 10.11.6.
Errors like the following:
cppzmq/zmq.hpp:1325:39: error: default initialization of an object of const type 'const affinity_t' (aka 'const integral_option<4, unsigned long long, false>') without a user-provided default constructor
Compiler version:
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Similar issues:
* https://github.com/tensorflow/tensorflow/issues/28839
error: default initialization of an object of const type 'const Subgraph::Identity' without a user-provided default constructor
* https://bugzilla.mozilla.org/show_bug.cgi?id=1451088
Clang 3.8: error: default initialization of an object of const type 'const js::jit::ArithPolicy' without a user-provided default constructor
* https://github.com/googleapis/google-cloud-cpp/issues/1593
[osx] error: default initialization of an object of const type
Co-authored-by: Gudmundur Adalsteinsson <ofpgummi@yahoo.com>
2020-05-05 17:54:34 -04:00
Simon Giesecke
3746e5c2d5
Merge pull request #406 from gummif/gfa/rfc-mme
...
Problem: Missing reference to rfc
2020-04-25 12:54:37 +02:00
Gudmundur Adalsteinsson
acd7104992
Problem: Missing reference to rfc
...
Solution: Add link
2020-04-24 20:27:28 +00:00
Gudmundur Adalsteinsson
4784b74c37
Problem: No endian check in encoding
...
Solution: Always write message part sizes
using network order.
2020-04-18 13:59:42 +00:00
Gudmundur Adalsteinsson
1793a5b586
Problem: UB in message_t constructor
...
Solution: Add check to guard against passing null to memcpy
2020-04-05 20:25:00 +00:00
Gudmundur Adalsteinsson
a3e5b54c3c
Problem: Socket options lack type-safety ( #393 )
...
Solution: Implement a type for each socket option.
Each option has an associated type, therefore they
can't be simply defined as an enum class.
Use new sockopt getter in test util
Add socket option get function for strings and tests
2020-03-24 09:33:50 +01:00
Brett Viren
10431084bb
Problem: lack conversion message_t
and multipart_t
( #391 )
...
Solution: add encode/decode methods to multipart_t giving a codec compatible with the CZMQ equivalent.
2020-03-20 10:59:15 +01:00
Simon Giesecke
2f1ab4c2a7
Merge pull request #390 from gummif/gfa/multipart-cpp11
...
Problem: send_multipart fails on old gcc versions
2020-03-07 15:55:57 +01:00
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