Skip to content

[staging] boost: bump default version to 1.7x#120259

Closed
hjones2199 wants to merge 3926 commits intoNixOS:stagingfrom
hjones2199:boostup
Closed

[staging] boost: bump default version to 1.7x#120259
hjones2199 wants to merge 3926 commits intoNixOS:stagingfrom
hjones2199:boostup

Conversation

@hjones2199
Copy link
Member

Motivation for this change

Most packages that depend on the boost libraries in nixpkgs are pointing at the unversioned "boost" package. Unversioned boost is currently 1.69.0, which was released in 2018. This should be updated to the newest boost library available in nixpkgs (1.75). I expect build-time breakages, but it should be fairly straightforward to pin broken packages to an older boost revision once they are identified.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@hjones2199 hjones2199 marked this pull request as draft April 22, 2021 19:50
@ofborg ofborg bot requested a review from lovek323 April 22, 2021 20:06
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 501-1000 This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Apr 22, 2021
Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

diff LGTM but we need to check the outfall and try to minimize the breakage.

@hjones2199 hjones2199 marked this pull request as ready for review April 23, 2021 04:27
@hjones2199
Copy link
Member Author

I assume this is going to have to wait until after ZHF/21.05 release now?

@zhaofengli zhaofengli mentioned this pull request Jun 2, 2021
@hjones2199 hjones2199 mentioned this pull request Jun 4, 2021
10 tasks
boost175 = callPackage ../development/libraries/boost/1.75.nix { };
boost17x = boost175;
boost = boost16x;
boost = boost17x;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure about this change. It is probably going to break a lot and I can't really test it right now because my usual test packages are not building on staging.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've had a hard time testing this due to the sheer number of packages that need to be re-built. If someone with the storage space and will to do a comprehensive nixpkgs-review test on it (or some other mechanism of seeing what packages are broken), I can do a regex replace boost -> boost16x for anything that wont build with the newer version.

Copy link
Member

@SuperSandro2000 SuperSandro2000 Jun 15, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a quite beefy remote build farm available but I can't build 5000+ packages. I don't know how we should continue with this PR.

@jonringer can you assist?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Targeting at a merge base of staging and master makes more sense, there binary cache should be available for testing.

@nagy
Copy link
Member

nagy commented Jun 9, 2021

Keep in mind that, after this PR is merged, or even with this PR, we should also remove all overrides of packages where:

boost = boost17x;

As of now I count 11 occurences in all-packages.nix.

@nagy nagy mentioned this pull request Aug 20, 2021
11 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: bsd Running or building packages on BSD 6.topic: emacs Text editor 6.topic: erlang General-purpose, concurrent, functional high-level programming language 6.topic: fetch Fetchers (e.g. fetchgit, fetchsvn, ...) 6.topic: GNOME GNOME desktop environment and its underlying platform 6.topic: golang Go is a high-level general purpose programming language that is statically typed and compiled. 6.topic: haskell General-purpose, statically typed, purely functional programming language 6.topic: kernel The Linux kernel 6.topic: lua Lua is a powerful, efficient, lightweight, embeddable scripting language. 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. 6.topic: policy discussion Discuss policies to work in and around Nixpkgs 6.topic: printing Drivers, CUPS & Co. 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: qt/kde Object-oriented framework for GUI creation 6.topic: ruby A dynamic, open source programming language with a focus on simplicity and productivity. 6.topic: rust General-purpose programming language emphasizing performance, type safety, and concurrency. 6.topic: stdenv Standard environment 6.topic: steam Steam game store/launcher (store.steampowered.com) 6.topic: systemd Software suite that provides an array of system components for Linux operating systems. 6.topic: vim Advanced text editor 6.topic: xfce The Xfce Desktop Environment 8.has: changelog This PR adds or changes release notes 8.has: documentation This PR adds or changes documentation 8.has: module (update) This PR changes an existing module in `nixos/` 10.rebuild-darwin: 501-1000 This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.