Skip to content

Conversation

@Sjors
Copy link
Member

@Sjors Sjors commented Jan 16, 2020

Boost 1.71 or newer is useful for #15382. Unless that PR gets more ACKs, we might as well as wait and see if there's another Boost release before we branch off 0.20.

In addition, we should keep an eye on the upstream autoconf fix: autoconf-archive/autoconf-archive#198

Opening this draft PR now to deal with any compiler / CI issues.

@sanjaykdragon
Copy link
Contributor

would this require an upgrade in C++ STL?
If not, i think we should just upgrade to C++14 or something, because that replaces a lot of the things that boost currently has

@Sjors
Copy link
Member Author

Sjors commented Jan 16, 2020

just upgrade to C++14

There is ongoing discussion on when the right time is to bump c++. It seems the plan is to skip c++14 and go straight to c++17, but it'll probably be a while: #13356 (comment) and #16684

Getting rid of Boost altogether is not likely to happen anytime soon, see e.g. #8670 (2016!)

@laanwj
Copy link
Member

laanwj commented Jan 16, 2020

As this doesn't bump the minimum required version of boost, just the one used in depends, it's ok with me.

@hebasto
Copy link
Member

hebasto commented Jan 17, 2020

Boost 1.71 or newer is useful for #15382.

Release notes for Boost 1.71.0 do not mention any change in Process library (required in #15382) at all. Did I miss something?

@Sjors
Copy link
Member Author

Sjors commented Jan 17, 2020

It fixes an unused variable, which is needed to pass Travis these days.

@Sjors Sjors force-pushed the 2020/01/boost-bump branch from dfcb757 to a1bef29 Compare January 24, 2020 08:49
@DrahtBot
Copy link
Contributor

DrahtBot commented Jan 25, 2020

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@hebasto
Copy link
Member

hebasto commented Jan 25, 2020

Concept ACK.

@Sjors Sjors marked this pull request as ready for review January 30, 2020 19:05
@Sjors
Copy link
Member Author

Sjors commented Jan 30, 2020

Given that the feature freeze is March 15th and there's still no new Boost release, 1.72 it is...

Should I update the various boost related autoconf files too (haven't checked if there's new ones)?

@fanquake
Copy link
Member

fanquake commented Jan 31, 2020

Concept ~0.

On the one hand, I think bumping a major dependency two versions to fix an unused variable in a module we don't even use, "is useful for #15382. ", is a bit ridiculous. Especially when, if required, it could be fixed quite easily in preprocessing. i.e:

diff --git a/depends/packages/boost.mk b/depends/packages/boost.mk
index cd0e70fb1..01b1f9c52 100644
--- a/depends/packages/boost.mk
+++ b/depends/packages/boost.mk
@@ -29,6 +29,7 @@ $(package)_cxxflags_android=-fPIC
 endef
 
 define $(package)_preprocess_cmds
+  sed -i.old "s/int ret_sig = 0;//" boost/process/detail/posix/wait_group.hpp && \
   echo "using $($(package)_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$($(package)_archiver_$(host_os))\" <striper>\"$(host_STRIP)\"  <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam
 endef

On the other, we seem to be be semi-regularly bumping Boost in depends, so maybe we should prior to the 0.20.0 release. I assume you've tested this everywhere. Looks like there are a bunch of filesystem changes in 1.72.0. Do we need to do anything in regards to:

On Windows, use Boost.WinAPI to select the target Windows version.

?

Should I update the various boost related autoconf files too

If there's no applicable bug fixes to any of them, probably not. If there are, and you do update them, please test them across all operating systems and hardware we support so that we don't end up with another issue like #17010.

@Sjors
Copy link
Member Author

Sjors commented Jan 31, 2020

I don't think it's necessary to include this in 0.20. Let me word it differently: if we want to bump Boost before the next release, then let's bump to 1.72. But otherwise I'll just leave this PR open until #15382 comes closer (with your patch as an alternative).

I've been testing that PR and stuff built on top of it for a while and haven't seen any Boost issues, but I haven't specifically looked for them. Notably I haven't tested on Windows.

@laanwj laanwj added this to the 0.21.0 milestone Feb 5, 2020
@bitcoin bitcoin deleted a comment from DrahtBot Feb 8, 2020
@bitcoin bitcoin deleted a comment from DrahtBot Feb 10, 2020
@bitcoin bitcoin deleted a comment from DrahtBot Feb 10, 2020
@DrahtBot DrahtBot mentioned this pull request Feb 26, 2020
@maflcko
Copy link
Member

maflcko commented Apr 2, 2020

Focal ships with 1.71, btw

@Sjors
Copy link
Member Author

Sjors commented Apr 27, 2020

I switched to using @fanquake's workaround in my own PR. Given that Focal, the new LTS version of Ubuntu, ships with 1.71, it seems premature to bump to 1.72 unless there's a better reason.

@Sjors Sjors closed this Apr 27, 2020
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Feb 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants