lol

top-level/release-attrpaths-superset: remove __attrsFailEvaluation

This doesn't seem to be necessary anymore. I confirmed by:
- Adding a lib.warn into the __attrsFailsEvaluation branch - never got
any.
- Removing it everywhere and running full Eval on it - no errors, no
rebuilds.

+16 -78
+1 -3
pkgs/applications/editors/jetbrains/default.nix
··· 431 431 ]; 432 432 }; 433 433 434 - plugins = callPackage ./plugins { } // { 435 - __attrsFailEvaluation = true; 436 - }; 434 + plugins = callPackage ./plugins { }; 437 435 438 436 }
+1 -6
pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/default.nix
··· 18 18 plugins = [ ]; 19 19 }; 20 20 21 - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here. 22 - pidginPackages = self // { 23 - pidginPackages = self.pidginPackages // { 24 - __attrsFailEvaluation = true; 25 - }; 26 - }; 21 + pidginPackages = self; 27 22 28 23 pidgin-indicator = callPackage ./pidgin-indicator { }; 29 24
-2
pkgs/desktops/gnome/extensions/default.nix
··· 39 39 lib.trivial.pipe extensions [ 40 40 (map (extension: lib.nameValuePair extension.extensionUuid extension)) 41 41 builtins.listToAttrs 42 - (attrs: attrs // { __attrsFailEvaluation = true; }) 43 42 ]; 44 43 45 44 # Map the list of extensions to an attrset based on the pname as key, which is more human readable than the UUID ··· 80 79 81 80 # Keep the last three versions in here 82 81 gnomeExtensions = lib.trivial.pipe (gnome46Extensions // gnome47Extensions // gnome48Extensions) [ 83 - (v: builtins.removeAttrs v [ "__attrsFailEvaluation" ]) 84 82 # Apply some custom patches for automatically packaged extensions 85 83 (callPackage ./extensionOverrides.nix { }) 86 84 # Add all manually packaged extensions
+1 -6
pkgs/development/compilers/rust/default.nix
··· 89 89 in 90 90 { 91 91 # Packages suitable for build-time, e.g. `build.rs`-type stuff. 92 - buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable // { 93 - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here. 94 - buildRustPackages = self.buildRustPackages // { 95 - __attrsFailEvaluation = true; 96 - }; 97 - }; 92 + buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable; 98 93 # Analogous to stdenv 99 94 rustPlatform = makeRustPlatform self.buildRustPackages; 100 95 rustc-unwrapped = self.callPackage ./rustc.nix ({
+1 -5
pkgs/development/haskell-modules/default.nix
··· 31 31 ghc 32 32 extensible-self 33 33 all-cabal-hashes 34 + buildHaskellPackages 34 35 ; 35 - 36 - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here. 37 - buildHaskellPackages = buildHaskellPackages // { 38 - __attrsFailEvaluation = true; 39 - }; 40 36 }; 41 37 42 38 platformConfigurations =
+1 -10
pkgs/development/interpreters/lua-5/default.nix
··· 90 90 inherit (luaPackages) requiredLuaModules; 91 91 }; 92 92 withPackages = import ./with-packages.nix { inherit buildEnv luaPackages; }; 93 - pkgs = 94 - let 95 - lp = luaPackages; 96 - in 97 - lp 98 - // { 99 - luaPackages = lp.luaPackages // { 100 - __attrsFailEvaluation = true; 101 - }; 102 - }; 93 + pkgs = luaPackages; 103 94 interpreter = "${self}/bin/${executable}"; 104 95 inherit executable luaversion; 105 96 luaOnBuild = luaOnBuildForHost.override {
+1 -4
pkgs/development/interpreters/python/python-packages-base.nix
··· 147 147 python = toPythonModule python; 148 148 149 149 # Don't take pythonPackages from "global" pkgs scope to avoid mixing python versions. 150 - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here. 151 - pythonPackages = self // { 152 - __attrsFailEvaluation = true; 153 - }; 150 + pythonPackages = self; 154 151 }
+1 -3
pkgs/os-specific/bsd/freebsd/package-set.nix
··· 21 21 inherit sourceData patchesRoot versionData; 22 22 23 23 # Keep the crawled portion of Nixpkgs finite. 24 - buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd // { 25 - __attrsFailEvaluation = true; 26 - }; 24 + buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd; 27 25 28 26 ports = fetchgit { 29 27 url = "https://git.FreeBSD.org/ports.git";
+5 -10
pkgs/top-level/all-packages.nix
··· 170 170 system = stdenv.hostPlatform.system; 171 171 callTest = config: config.test.driver; 172 172 }; 173 - __attrsFailEvaluation = true; 174 173 }; 175 174 176 175 ### BUILD SUPPORT ··· 10099 10098 10100 10099 rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; }; 10101 10100 10102 - rPackages = 10103 - (dontRecurseIntoAttrs ( 10104 - callPackage ../development/r-modules { 10105 - overrides = (config.rPackageOverrides or (_: { })) pkgs; 10106 - } 10107 - )) 10108 - // { 10109 - __attrsFailEvaluation = true; 10110 - }; 10101 + rPackages = dontRecurseIntoAttrs ( 10102 + callPackage ../development/r-modules { 10103 + overrides = (config.rPackageOverrides or (_: { })) pkgs; 10104 + } 10105 + ); 10111 10106 10112 10107 ### SERVERS 10113 10108
-2
pkgs/top-level/beam-packages.nix
··· 74 74 erlang_27 = self.packagesWith self.interpreters.erlang_27; 75 75 erlang_26 = self.packagesWith self.interpreters.erlang_26; 76 76 }; 77 - 78 - __attrsFailEvaluation = true; 79 77 }
-1
pkgs/top-level/coq-packages.nix
··· 29 29 { 30 30 inherit coq lib; 31 31 coqPackages = self // { 32 - __attrsFailEvaluation = true; 33 32 recurseForDerivations = false; 34 33 }; 35 34
-1
pkgs/top-level/cuda-packages.nix
··· 70 70 else 71 71 pkgs.extend ( 72 72 final: _: { 73 - __attrsFailEvaluation = true; 74 73 recurseForDerivations = false; 75 74 # The CUDA package set will be available as cudaPackages_x_y, so we need only update the aliases for the 76 75 # minor-versioned and unversioned package sets.
+1 -5
pkgs/top-level/perl-packages.nix
··· 36 36 { 37 37 38 38 inherit perl; 39 - perlPackages = self // { 40 - perlPackages = self.perlPackages // { 41 - __attrsFailEvaluation = true; 42 - }; 43 - }; 39 + perlPackages = self; 44 40 45 41 # Check whether a derivation provides a perl module. 46 42 hasPerlModule = drv: drv ? perlModule;
+3 -20
pkgs/top-level/release-attrpaths-superset.nix
··· 30 30 }: 31 31 let 32 32 33 - # __attrsFailEvaluation is a temporary workaround to get top-level 34 - # eval to succeed (under builtins.tryEval) for the entire 35 - # packageset, without deep invasve changes into individual 36 - # packages. 37 - # 38 - # Now that CI has been added, ensuring that top-level eval will 39 - # not be broken by any new commits, you should not add any new 40 - # occurrences of __attrsFailEvaluation, and should remove them 41 - # wherever you are able to (doing so will likely require deep 42 - # adjustments within packages). Once all of the uses of 43 - # __attrsFailEvaluation are removed, it will be deleted from the 44 - # routine below. In the meantime, 45 - # 46 33 # The intended semantics are that an attrpath rooted at pkgs is 47 - # part of the (unfiltered) release jobset iff all of the following 34 + # part of the (unfiltered) release jobset iff both of the following 48 35 # are true: 49 36 # 50 37 # 1. The attrpath leads to a value for which lib.isDerivation is true 51 38 # 52 - # 2. No proper prefix of the attrpath has __attrsFailEvaluation=true 53 - # 54 - # 3. Any proper prefix of the attrpath at which lib.isDerivation 39 + # 2. Any proper prefix of the attrpath at which lib.isDerivation 55 40 # is true also has __recurseIntoDerivationForReleaseJobs=true. 56 41 # 57 - # The last condition is unfortunately necessary because there are 42 + # The second condition is unfortunately necessary because there are 58 43 # Hydra release jobnames which have proper prefixes which are 59 44 # attrnames of derivations (!). We should probably restructure 60 45 # the job tree so that this is not the case. ··· 80 65 [ ] 81 66 82 67 else if !(lib.isAttrs value) then 83 - [ ] 84 - else if (value.__attrsFailEvaluation or false) then 85 68 [ ] 86 69 else 87 70 lib.pipe value [