-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Upgrade Boost to 1.84.0 #8679
Upgrade Boost to 1.84.0 #8679
Conversation
✅ Deploy Preview for meta-velox canceled.
|
3113d4b
to
91d5ecd
Compare
This PR also takes care of switching the source of boost away from artifactory |
Don't we have to mandate the minimum version of boost to be 1.84 in the CMakeLists.txt? |
I was thinking we could do this as a second step when the first dependent function is added but I suppose it can be done here as well. Will update the README. |
I see. Let's do this here so that the expectations are clear. Can you also add a link #5382 to the discussion on this issue in the description? |
I guess we can re-open #5382 after this lands and the CI image is updated. |
91d5ecd
to
6443521
Compare
I see that some of the CI jobs require boost 1.84 to be installed in the CI image. We cannot mandate 1.84 in this PR unless we bundle Boost in those CI jobs. |
6443521
to
3b424fa
Compare
@majetideepak Will this require us to create a new Prestissimo container with boost 1.84 installed ? |
Yes, I think so. When the Velox is updated in prestissimo there should also be a new container as far as I understand it. |
3b424fa
to
74e8bb3
Compare
Thanks @majetideepak, One more question: folly is dependent on boost, if system folly is built against an older version and velox bundles a newer version , would that cause problems. Would we need to ask people to rerun setup scripts? |
Technically, this is not a new problem. Even before this PR, someone could build folly with an older boost version and Velox vendors |
6a08ca6
to
d56ab1f
Compare
@kgpai do you think we can move ahead with this? |
d56ab1f
to
4107642
Compare
@czentgr can you make sure you rebase to latest main.. |
The boost version 1.84 fixes a bug that prevents the addition of a group of inverse functions. The fix was provided in Boost PR boostorg/math#1007 The boost_headers target was added to Boost first in version 1.82 and are now removed from the Velox bundled CMakeLists. The update occurs for the setup scripts for CentOS and Ubuntu. MacOS already installs the latest available Boost version on brew. In addition, the requirement for the Boost version is updated to make sure the proper version is used. There is no known build problem when upgrading the version.
4107642
to
c697fbc
Compare
@kgpai has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
Should we update CMake/resolve_dependency_modules/README.md? |
@mbasmanova Afaik, this change does not mandate 1.84 so we do not need to update the readme . |
Correct, we specifically removed the change to the README again (it was present before in the PR) because: #8679 (comment) Now, the next step would be to add a function that makes use of the fix (one of the inverse functions). |
@czentgr If i am not mistaken, merging this change should build the images with boost 1.84 so the next pr can take it as supported (if not we will know by failures in said pr). |
Then the next PR adding the function can then set this version as required (making sure the fix is present). |
Looks CI failed with boost header file not found with latest main branch. Is it related to this change?
|
@zhli1142015 Yes. The benchmark builds the bundled boost version. Previously, it was installed from the package manager.
Looking into it. Trying to repro. |
@zhli1142015 I was able to locally repro and fix the issue: #8936 |
Summary: This [commit](6dba462) introduces some code to use a boost API: `boost::uuids::to_chars`, which is available since boost 1.77.0 (see [boost commit](boostorg/uuid@eaa4be7)). So I'm proposing to change the minimum version to 1.77.0. Post related PR: #8679 Pull Request resolved: #9094 Reviewed By: xiaoxmeng Differential Revision: D56051595 Pulled By: kgpai fbshipit-source-id: d1f5d78c45de203041ff865dad50d67abc7d84fb
Summary: This [commit](facebookincubator@6dba462) introduces some code to use a boost API: `boost::uuids::to_chars`, which is available since boost 1.77.0 (see [boost commit](boostorg/uuid@eaa4be7)). So I'm proposing to change the minimum version to 1.77.0. Post related PR: facebookincubator#8679 Pull Request resolved: facebookincubator#9094 Reviewed By: xiaoxmeng Differential Revision: D56051595 Pulled By: kgpai fbshipit-source-id: d1f5d78c45de203041ff865dad50d67abc7d84fb
The boost version 1.84.0 fixes a bug that prevents
the addition of a group of inverse functions.
The fix was provided in Boost PR
boostorg/math#1007
The update occurs for the setup scripts for CentOS and Ubuntu. MacOS already installs the
latest available Boost version on brew.
In addition, the requirement for the Boost version is updated to make sure the proper version is used.
There is no known build problem when upgrading the version.
Fixes issue: #8624