Skip to content

tbb_{2022,2021,2020}: 2022.0.0 -> 2022.1.0; 2021.11.0 -> 2021.13.0; 2020.3 -> 2020.3.3; shorten name; move to by-name; disable manifold failing test for openscad-unstable#402480

Merged
7c6f434c merged 7 commits intomasterfrom
unknown repository
Jun 20, 2025

Conversation

@ghost
Copy link

@ghost ghost commented Apr 28, 2025

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. labels Apr 28, 2025
@nix-owners nix-owners bot requested review from hesiod and thoughtpolice April 28, 2025 09:09
@yzx9
Copy link
Contributor

yzx9 commented Apr 28, 2025

It’s a little weird that tbb 2022_0 actually points to 2022.1.0. 😆

@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label May 17, 2025
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Jun 16, 2025
@nix-owners nix-owners bot requested a review from silvanshade June 16, 2025 10:24
@github-actions github-actions bot added 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. and removed 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. labels Jun 16, 2025
Copy link
Member

Choose a reason for hiding this comment

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

Please update the filename to reflect the version change: 2022_0.nix -> 2022_1.nix.

Also the top-level definition will need to be updated to point to the new file:

https://github.com/Saterfield990/nixpkgs/blob/69fe759b6328afd507c3b984d1e1d2bc1dc6ba5c/pkgs/top-level/all-packages.nix#L6106

Copy link
Author

@ghost ghost Jun 17, 2025

Choose a reason for hiding this comment

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

Is there any reason to have the file name 2022_1.nix instead of 2022.nix besides just being just more steps to do?
Like... I would understand if a specific version were to be added besides what is existent, but to name it after the whole version does not make sense to me.
In the end, it's just more work to go through all the files that define it with that specific version, each time an update is done and prior version is not kept as well.

Copy link
Member

Choose a reason for hiding this comment

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

I don't know why it was done this way but I guess whoever added it probably just followed existing convention.

It should be fine to rename it to 2022.nix (and rename the corresponding top-level) to avoid extra steps in the future. But I don't think we ought to leave it named as 2022_0 if the actual version is 2022_1.

Ideally at some point in the not too distant future we can remove all the older versions and just have a single tbb.

Copy link
Author

Choose a reason for hiding this comment

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

I renamed both the file and in top-level to 2022 since renaming just the file still made it fail for all other packages that have tbb_2022_0 in them, which is exactly the problem with having the default and only one be the whole version in name.

At the same time the checks are complaining about lint(deprecation but not failure). Maybe it would be good to also move it to by-name as it recommends?
tbb 2020 -> pkgs/by-name/tb/tbb_2020/package.nix
tbb 2021 -> pkgs/by-name/tb/tbb_2021/package.nix
tbb 2022 -> pkgs/by-name/tb/tbb_2022/package.nix

@silvanshade silvanshade requested a review from Ericson2314 June 16, 2025 16:10
@ghost ghost changed the title tbb 2022_0: 2022.0.0 -> 2022.1.0 tbb 2022: 2022.0.0 -> 2022.1.0 Jun 17, 2025
Copy link
Contributor

@hzeller hzeller left a comment

Choose a reason for hiding this comment

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

For manifold and openscad-unstable

@github-actions github-actions bot added 12.approvals: 1 This PR was reviewed and approved by one person. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages. labels Jun 17, 2025
@ghost ghost changed the title tbb 2022: 2022.0.0 -> 2022.1.0 tbb_2022: 2022.0.0 -> 2022.1.0; shorten name; move to by-name; disable manifold failing test for nixpkgs-review Jun 17, 2025
Copy link
Member

Choose a reason for hiding this comment

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

Instead of removing it and relocating the file I would prefer we change it to this:

tbb_2022 = callPackage ../development/libraries/tbb/2022.nix { };

The linter complaining is okay to ignore in this case and isn't a blocker. For maintenance and clarity reasons its better to follow the existing convention here.

Once that's changed it should be good to merge.

Copy link
Member

Choose a reason for hiding this comment

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

I'm indifferent to whether we go to by-name or not, but I do think that we should do the same thing for all 3.

Dropping the minor version number from the attribute / file name is good.

Copy link
Member

Choose a reason for hiding this comment

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

Okay, well then I will leave it up to @Saterfield990.

The reason I was hesitant is because there doesn't seem to be much precedent for named versions under by-name from what I saw at a glance.

But anyway, once all three are consistent whichever way, we should be able to merge.

Copy link
Author

Choose a reason for hiding this comment

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

Alright, then let's move all of them to pkgs by-name, instead of using a deprecated way so we have green on all checks.

I have created the following:
#402508
#417775

At the same time, I will have to ask the following:

So I think the best thing to do here is to keep the default.nix here as-is, then add 2021_13.nix under the tbb/ dir as a new version. Then add a new top-level alias for it in the same spot that I link to.
Then either in a separate commit or PR we can update all existing packages that reference tbb_2021_11 to use tbb_2021_13, and if there is breakage found, at least those dependent packages can roll back to _11

If tbb is so sensitive and has had problems in the past with version updates, instead of keeping two versions or more for the packages that don't like the lastest one, wouldn't it be better for those packages to do something like this in the buildInputs?

(tbb_2021.overrideAttrs (oldAttrs: {
  version = "2021.11.0";
  src = fetchFromGitHub {
    owner = "oneapi-src";
    repo = "oneTBB";
    tag = "v2021.11.0";
    hash = "sha256-zGZHMtAUVzBKFbCshpepm3ce3tW6wQ+F30kYYXAQ/TE=";
  };
}))

and like that they can keep it locked to a specific working version as long as they want and until updating that version works.

Copy link
Member

Choose a reason for hiding this comment

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

You'd have to ask the other maintainers since I only recently added myself. But I agree it would probably be better to have isolated the affected packages and pinned specific tbb versions locally like that.

Copy link
Member

Choose a reason for hiding this comment

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

I have created the following:
#402508
#417775

Why not consolidate those into the single PR here? It's easier to track for the current discussion and to reference later if there's a problem.

Copy link
Author

@ghost ghost Jun 18, 2025

Choose a reason for hiding this comment

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

Sure
I'll consolidate those PRs here
Funny how two more packages appeared in master since I last rebased on top of it

@ghost
Copy link
Author

ghost commented Jun 18, 2025

Packages directly affected by the changes:

  • for tbb_2022

@ofborg build kaminpar
@ofborg build mold
@ofborg build openscad-unstable
@ofborg build openvino
@ofborg build papilo
@ofborg build tiledb
@ofborg build python3Packages.scipp

  • for tbb_2021

@ofborg build prusa-slicer
@ofborg build autotier
@ofborg build bambu-studio
@ofborg build cabinpkg
@ofborg build libblake3
@ofborg build libloot
@ofborg build manifold
@ofborg build naja
@ofborg build orca-slicer
@ofborg build pdf4qt
@ofborg build salmon
@ofborg build scipopt-papilo
@ofborg build scipopt-scip
@ofborg build supercell-wx
@ofborg build ueberzugpp

  • for tbb_2020

@ofborg build embree

osrm-backend fails to build on master too

@ghost ghost changed the title tbb_2022: 2022.0.0 -> 2022.1.0; shorten name; move to by-name; disable manifold failing test for nixpkgs-review tbb_{2022,2021,2020}: 2022.0.0 -> 2022.1.0; 2021.11.0 -> 2021.13.0; 2020.3 -> 2020.3.3; shorten name; move to by-name; disable manifold failing test for openscad-unstable Jun 18, 2025
@pca006132 pca006132 mentioned this pull request Jun 18, 2025
3 tasks
@github-actions github-actions bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux and should normally target the staging branches. 6.topic: python Python is a high-level, general-purpose programming language. and removed 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. labels Jun 18, 2025
@github-actions github-actions bot added 12.approvals: 2 This PR was reviewed and approved by two persons. and removed 12.approvals: 1 This PR was reviewed and approved by one person. labels Jun 19, 2025
@silvanshade
Copy link
Member

Packages directly affected by the changes:

@ofborg build kaminpar mold openscad-unstable openvino tiledb prusa-slicer autotier bambu-studio cabinpkg libblake3 libloot manifold naja orca-slicer pdf4qt salmon scipopt-papilo scipopt-scip supercell-wx ueberzugpp embree

osrm-backend fails to build on master too

Are these builds still pending? I don't know much about ofborg so I'm not sure what it's doing. I see logs for some of these but looks like not all of them? I don't see any recent activity either.

I am able to successfully build all of the mentioned packages from this branch locally on x86_64-linux though, except osrm-backend which you also mention (and I can confirm) is failing on master.

@Ericson2314 Can we merge this?

Copy link
Member

@dsalwasser dsalwasser left a comment

Choose a reason for hiding this comment

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

The TBB version update for kaminpar looks good to me.

@github-actions github-actions bot added 12.approvals: 3+ This PR was reviewed and approved by three or more persons. and removed 12.approvals: 2 This PR was reviewed and approved by two persons. labels Jun 19, 2025
Copy link
Contributor

@pca006132 pca006132 left a comment

Choose a reason for hiding this comment

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

tbb version for manifold and openscad should be good.

@7c6f434c 7c6f434c merged commit 64edfe9 into NixOS:master Jun 20, 2025
74 of 122 checks passed
@Prince213
Copy link
Member

This has introduced a regression that caused #418695.

@Prince213 Prince213 mentioned this pull request Jun 21, 2025
13 tasks
wentasah added a commit to wentasah/rosdistro that referenced this pull request Oct 16, 2025
tbb_* was renamed to onetbb.
See NixOS/nixpkgs#442977.

tbb_2021_11, which was used in rosdep before has been replaced by
tbb_2021 earlier in NixOS/nixpkgs#402480.

Signed-off-by: Michal Sojka <[email protected]>
emersonknapp pushed a commit to ros/rosdistro that referenced this pull request Oct 17, 2025
tbb_* was renamed to onetbb.
See NixOS/nixpkgs#442977.

tbb_2021_11, which was used in rosdep before has been replaced by
tbb_2021 earlier in NixOS/nixpkgs#402480.

Signed-off-by: Michal Sojka <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux 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. 12.approvals: 3+ This PR was reviewed and approved by three or more persons. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants