Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ZeroMQ's std::string support is too new #476

Merged
merged 3 commits into from Mar 26, 2020
Merged

ZeroMQ's std::string support is too new #476

merged 3 commits into from Mar 26, 2020

Conversation

ferdnyc
Copy link
Contributor

@ferdnyc ferdnyc commented Mar 25, 2020

Whoops. Seems I broke ZeroMQ on both the Windows and macOS builders, trying to use std::string with zmq::message_t. (In my defense, it works fine on Fedora 31! Must be a recent feature.)

I've reverted to the old memcpy() version of message construction, for all ZeroMQ versions.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Mar 25, 2020

Still broken on non-Linux. I just added version reporting to the ZeroMQ find module in CMake (we were capturing it, before, but not passing it back to the parent context), so hopefully I can figure out what version the other builders are using and why it's breaking.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Mar 25, 2020

Well, this is very frustrating. The macOS builder claims to be running 4.3.2, same as my Linux machine... and Windows has 4.3.1 installed, which is documented as the release where the previous send() signature was deprecated. Yet, the new signature isn't found, so it's not compiling!

...I wonder if perhaps there's a version mismatch between ZeroMQ and cppzmq, the C++ bindings. @jonoomph , is there any chance that ZeroMQ was upgraded on the Mac/Win builders, but without upgrading the C++ bindings header from cppzmq? That's the only thing I can think of that would explain this.

@ferdnyc ferdnyc requested a review from jonoomph March 25, 2020 16:03
@ferdnyc
Copy link
Contributor Author

ferdnyc commented Mar 25, 2020

Mmm, I think that's it. Because looking at the builders, I notice neither Win nor Mac was complaining about the deprecated form of send() before I fixed it. Which, if they were fully installed with ZeroMQ 4.3.1 or 4.3.2, they should've been. The old form was deprecated starting in 4.3.1.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Mar 25, 2020

Shot @jonoomph an email detailing my theory. Let's wait a bit to see if he might be able to fix the Win/Mac builders, before I back out these changes and #470.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Mar 25, 2020

@jonoomph is on the case.

@ferdnyc ferdnyc merged commit efc91d4 into develop Mar 26, 2020
@ferdnyc ferdnyc deleted the zmqfix branch March 26, 2020 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant