Set minimum required Boost to 1.53.0 #16381

pull hebasto wants to merge 2 commits into bitcoin:master from hebasto:20190713-bump-minimum-boost changing 7 files +6 −121
  1. hebasto commented at 10:55 am on July 13, 2019: member

    Boost 1.47.0 is eight years old. We could move on. This PR keeps compatibility with CentOS 7.

    Refs:

  2. fanquake added the label Build system on Jul 13, 2019
  3. hebasto force-pushed on Jul 13, 2019
  4. hebasto renamed this:
    Set minimum required Boost to 1.53.0
    Set minimum required Boost to 1.53.0
    on Jul 13, 2019
  5. DrahtBot commented at 1:08 pm on July 13, 2019: member

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

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #10102 ([experimental] Multiprocess bitcoin by ryanofsky)

    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.

  6. MarcoFalke added this to the milestone 0.19.0 on Jul 13, 2019
  7. practicalswift commented at 4:10 pm on July 13, 2019: contributor
    Concept ACK
  8. fanquake commented at 5:26 am on July 15, 2019: member

    Concept ACK

    Operating systems and Boost availability:

    Debian

    • Jessie - 1.55.x
    • Stretch - 1.62.x
    • Buster - 1.67.x

    macOS

    • brew - 1.70.x
    • macports - 1.66.x

    Fedora

    • 28 ?
    • 29 - 1.66.x
    • 30 - 1.69.x

    FreeBSD

    • 11 - 1.70.x
    • 12 - 1.70.x

    OpenBSD

    • Had >=1.53.x since 2013

    NetBSD

    • 7, 8 - 1.69.x

    Ubuntu

    • Trusty - 1.54.x
    • Xenial - 1.58.x
    • Bionic - 1.65.x
    • Disco - 1.67.x
  9. laanwj commented at 4:45 pm on July 15, 2019: member

    I don’t see the point of bumping the minimum version if there’s no strong reason to require the new version, IMO.

    We are trying to, in time, get rid of the boost requirement completely at some point, and reduce usage of it as much as possible (e.g. boost::chrono will go completely and be replaced by std::chrono). It’s unlikely we’ll really require some newer version, and it’s fine to require these work-arounds until then IMO.

  10. MarcoFalke commented at 5:13 pm on July 15, 2019: member
    I think it is reasonable to drop the workarounds, since they are no longer tested by anyone. For the same reason we dropped windows xp support.
  11. laanwj commented at 5:23 pm on July 15, 2019: member
    True, but almost all of them are about time/sleep things, and we’d get rid of those anyway when switching to std::chrono.
  12. MarcoFalke commented at 5:35 pm on July 15, 2019: member

    There have been a few abandoned attempts in the past, so I wouldn’t be too optimistic that this is happening any time soon:

    • util: Replace boost:: with std:: in utiltime #16117
    • refactor: Drop boost::thread and boost::chrono #14489
    • threading: use std::chrono for timestamps #9566
  13. MarcoFalke added the label Needs gitian build on Jul 17, 2019
  14. laanwj commented at 12:30 pm on July 18, 2019: member

    Sure, but is there any hurry, at all?

    To be honest I prefer the policy to touch the boost parts as little as possible until the dependency can be dropped whole-sale, and not unnecessarily require a newer boost.

    I do agree it’s unlikely for people to still have a boost <1.53.0, so I’m not against this specific change, but I think otherwise it’d be a waste of time forcing people to upgrade a dependency that we don’t really want to use in the first place, and without a pressing need such as a CVE.

  15. MarcoFalke removed this from the milestone 0.19.0 on Jul 18, 2019
  16. MarcoFalke added this to the milestone Future on Jul 18, 2019
  17. MarcoFalke removed this from the milestone Future on Jul 18, 2019
  18. thijstriemstra commented at 3:56 pm on July 19, 2019: none
    there was a CVE for boost 1.48 till 1.52: https://www.cvedetails.com/cve/CVE-2013-0252/ but I’m sure it was patched in distros and upgrading to >= 1.53 isn’t absolutely necessary?
  19. MarcoFalke commented at 4:02 pm on July 19, 2019: member
    From the network we only accept sanitized strings (a subset of ascii), so this CVE shouldn’t be a problem
  20. DrahtBot added the label Needs rebase on Jul 29, 2019
  21. DrahtBot removed the label Needs gitian build on Jul 29, 2019
  22. MarcoFalke deleted a comment on Jul 30, 2019
  23. Set minimum required Boost to 1.53.0 da8db1d319
  24. Remove fallbacks for pre-1.53.0 Boost cb8b557afe
  25. hebasto force-pushed on Jul 31, 2019
  26. hebasto commented at 2:58 pm on July 31, 2019: member
    Rebased.
  27. DrahtBot removed the label Needs rebase on Jul 31, 2019
  28. luke-jr commented at 0:06 am on August 20, 2019: member

    Agree with @laanwj

    Let’s wait for a real reason to require a bump.

  29. laanwj commented at 11:16 am on August 29, 2019: member
    Ok, closing this for now then.
  30. laanwj closed this on Aug 29, 2019

  31. luke-jr commented at 9:30 pm on March 5, 2020: member
    It looks like 1.47 won’t build, since we use wait_until in src/rpc/mining.cpp and src/net.cpp with no fallbacks. Maybe we should bump this just because it’s broken and untestable.
  32. hebasto commented at 9:59 pm on March 5, 2020: member

    It looks like 1.47 won’t build, since we use wait_until in src/rpc/mining.cpp and src/net.cpp with no fallbacks. Maybe we should bump this just because it’s broken and untestable.

    It seems only src/scheduler.cpp has fallback.

  33. fanquake reopened this on Mar 5, 2020

  34. luke-jr commented at 10:29 pm on March 5, 2020: member

    I’m wrong. Those other wait_until are std, not boost.

    But I don’t know it does work either. Maybe we should just go ahead with the bump…

  35. DrahtBot added the label Needs rebase on Mar 6, 2020
  36. DrahtBot commented at 0:02 am on March 6, 2020: member
  37. MarcoFalke removed the label Needs rebase on Mar 6, 2020
  38. DrahtBot commented at 5:47 pm on March 6, 2020: member
  39. DrahtBot added the label Needs rebase on Mar 6, 2020
  40. MarcoFalke removed the label Needs rebase on Mar 6, 2020
  41. DrahtBot commented at 5:52 pm on March 6, 2020: member

    🐙 This pull request conflicts with the target branch and needs rebase.

  42. DrahtBot added the label Needs rebase on Mar 6, 2020
  43. fanquake commented at 1:49 am on March 8, 2020: member
    Going to re-close.
  44. fanquake closed this on Mar 8, 2020

  45. MarcoFalke added this to the milestone 0.22.0 on May 11, 2020
  46. MarcoFalke commented at 2:19 pm on May 11, 2020: member
    Maybe for 0.22, we could consider boost 1.58 as minimum. Though, I’d rather not boost by then.
  47. DrahtBot locked this on Feb 15, 2022
  48. hebasto deleted the branch on Mar 5, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-18 18:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me