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

[C++] Remove Boost::System runtime dependency #9498

Merged
merged 4 commits into from
Feb 6, 2021

Conversation

merlimat
Copy link
Contributor

@merlimat merlimat commented Feb 5, 2021

Motivation

Linking with Boost::System was only required by Asio if we were not using C++11 flags. Since this was updated a while ago, we don't need to link with System anymore.

@merlimat merlimat added type/enhancement The enhancements for the existing features or docs. e.g. reduce memory usage of the delayed messages component/c++ labels Feb 5, 2021
@merlimat merlimat added this to the 2.8.0 milestone Feb 5, 2021
@merlimat merlimat self-assigned this Feb 5, 2021
@rdhabalia
Copy link
Contributor

/pulsarbot run-failure-checks

@merlimat merlimat merged commit dae8952 into apache:master Feb 6, 2021
@merlimat merlimat deleted the cpp-cleanup branch February 6, 2021 06:01
merlimat added a commit to merlimat/pulsar that referenced this pull request Apr 6, 2021
* [C++] Remove Boost::System runtime dependency

* Only remove it if Boost>=1.69

* Fixed condition

* Check for missing variables on older cmake versions
@BewareMyPower
Copy link
Contributor

Hi Matteo, I just have a question. Is there any reference to prove that from 1.69 the Boost::System dependency is not required?

I went to https://www.boost.org/doc/libs/1_69_0/doc/html/boost_asio/using.html#boost_asio.using.dependencies and found

Boost.System for the boost::system::error_code and boost::system::system_error classes.

I've tested Boost 1.74 and 1.75 in my local environment, it worked well without Boost::System dependency. But I'm still curious about whether 1.69 is the first version that doesn't require Boost::System dependency.

@merlimat
Copy link
Contributor Author

@BewareMyPower Here you go: https://www.boost.org/doc/libs/1_76_0/libs/system/doc/html/system.html#changes_in_boost_1_69

Boost.System is now header-only. A stub library is still built for compatibility, but linking to it is no longer necessary.

@BewareMyPower
Copy link
Contributor

@merlimat Thanks for your guide!

gaoran10 added a commit to gaoran10/pulsar that referenced this pull request Sep 10, 2021
BewareMyPower pushed a commit that referenced this pull request Dec 11, 2021
* [C++] Remove Boost::System runtime dependency

* Only remove it if Boost>=1.69

* Fixed condition

* Check for missing variables on older cmake versions
@BewareMyPower BewareMyPower added the cherry-picked/branch-2.7 Archived: 2.7 is end of life label Dec 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cherry-picked/branch-2.7 Archived: 2.7 is end of life release/2.7.4 type/enhancement The enhancements for the existing features or docs. e.g. reduce memory usage of the delayed messages
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants