Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upFix #135 - Support for external io_service #136
Conversation
coveralls
commented
Jul 4, 2017
arximboldi
commented
Sep 29, 2017
Hi! Thanks for the PR, I am interested in this a lot too! But I believe that passing a |
Currently there are two obstacles before this is mergable.
Since this seems fairly popular (and I see the validity of the use case), I'll absolutely make an effort to find a good solution to this after 3.0 is done. |
arximboldi
commented
Sep 29, 2017
@sztomi I see that I noticed that and is also something that I would love the library to stop doing. Same with Msgpack. I understand that this hiding dependencies is maybe useful for Windows users? But maybe it should be optional, because for people using package managers or using these dependencies directly it creates extra trouble (also incompatibilities, duplicate code, versioning/linking problems, etc.) |
The linking problems are taken care of (the symbols are renamed), and you can opt out of using the shipped asio (that's why there is a RPCLIB_ASIO define). Msgpack has a few patches added. The idea is to be completely frictionless, you clone the repo, compile and you are ready to go. A dependency installed from a system package manager is only half of the solution. End users have to go huntig for a compatible version of the dependencies. I can't argue with duplicate code. |
arximboldi
commented
Sep 30, 2017
•
@sztomi I agree that embedding the dependencies has advantages for some projects, my point was just that it would be nice to have this be optional since it create problems in others (the issue with not being able to pass your |
I'll make sure to have an easy workflow for opting out, at least from asio. It's not terribly hard though, see the documentation here: http://rpclib.net/internals/#dependencies-of-rpclib |
nlyan commentedJul 4, 2017
No description provided.