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.
This commit is contained in:
parent
4ad7d21c88
commit
59233ecd0d
@ -431,8 +431,6 @@ rec {
|
||||
];
|
||||
};
|
||||
|
||||
plugins = callPackage ./plugins { } // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
plugins = callPackage ./plugins { };
|
||||
|
||||
}
|
||||
|
@ -18,12 +18,7 @@ lib.makeScope newScope (
|
||||
plugins = [ ];
|
||||
};
|
||||
|
||||
# Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here.
|
||||
pidginPackages = self // {
|
||||
pidginPackages = self.pidginPackages // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
};
|
||||
pidginPackages = self;
|
||||
|
||||
pidgin-indicator = callPackage ./pidgin-indicator { };
|
||||
|
||||
|
@ -39,7 +39,6 @@ let
|
||||
lib.trivial.pipe extensions [
|
||||
(map (extension: lib.nameValuePair extension.extensionUuid extension))
|
||||
builtins.listToAttrs
|
||||
(attrs: attrs // { __attrsFailEvaluation = true; })
|
||||
];
|
||||
|
||||
# Map the list of extensions to an attrset based on the pname as key, which is more human readable than the UUID
|
||||
@ -80,7 +79,6 @@ rec {
|
||||
|
||||
# Keep the last three versions in here
|
||||
gnomeExtensions = lib.trivial.pipe (gnome46Extensions // gnome47Extensions // gnome48Extensions) [
|
||||
(v: builtins.removeAttrs v [ "__attrsFailEvaluation" ])
|
||||
# Apply some custom patches for automatically packaged extensions
|
||||
(callPackage ./extensionOverrides.nix { })
|
||||
# Add all manually packaged extensions
|
||||
|
@ -89,12 +89,7 @@ in
|
||||
in
|
||||
{
|
||||
# Packages suitable for build-time, e.g. `build.rs`-type stuff.
|
||||
buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable // {
|
||||
# Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here.
|
||||
buildRustPackages = self.buildRustPackages // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
};
|
||||
buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable;
|
||||
# Analogous to stdenv
|
||||
rustPlatform = makeRustPlatform self.buildRustPackages;
|
||||
rustc-unwrapped = self.callPackage ./rustc.nix ({
|
||||
|
@ -31,12 +31,8 @@ let
|
||||
ghc
|
||||
extensible-self
|
||||
all-cabal-hashes
|
||||
buildHaskellPackages
|
||||
;
|
||||
|
||||
# Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here.
|
||||
buildHaskellPackages = buildHaskellPackages // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
};
|
||||
|
||||
platformConfigurations =
|
||||
|
@ -90,16 +90,7 @@ let
|
||||
inherit (luaPackages) requiredLuaModules;
|
||||
};
|
||||
withPackages = import ./with-packages.nix { inherit buildEnv luaPackages; };
|
||||
pkgs =
|
||||
let
|
||||
lp = luaPackages;
|
||||
in
|
||||
lp
|
||||
// {
|
||||
luaPackages = lp.luaPackages // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
};
|
||||
pkgs = luaPackages;
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
inherit executable luaversion;
|
||||
luaOnBuild = luaOnBuildForHost.override {
|
||||
|
@ -147,8 +147,5 @@ in
|
||||
python = toPythonModule python;
|
||||
|
||||
# Don't take pythonPackages from "global" pkgs scope to avoid mixing python versions.
|
||||
# Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here.
|
||||
pythonPackages = self // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
pythonPackages = self;
|
||||
}
|
||||
|
@ -21,9 +21,7 @@ lib.packagesFromDirectoryRecursive {
|
||||
inherit sourceData patchesRoot versionData;
|
||||
|
||||
# Keep the crawled portion of Nixpkgs finite.
|
||||
buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd;
|
||||
|
||||
ports = fetchgit {
|
||||
url = "https://git.FreeBSD.org/ports.git";
|
||||
|
@ -170,7 +170,6 @@ with pkgs;
|
||||
system = stdenv.hostPlatform.system;
|
||||
callTest = config: config.test.driver;
|
||||
};
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
|
||||
### BUILD SUPPORT
|
||||
@ -10099,15 +10098,11 @@ with pkgs;
|
||||
|
||||
rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; };
|
||||
|
||||
rPackages =
|
||||
(dontRecurseIntoAttrs (
|
||||
callPackage ../development/r-modules {
|
||||
overrides = (config.rPackageOverrides or (_: { })) pkgs;
|
||||
}
|
||||
))
|
||||
// {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
rPackages = dontRecurseIntoAttrs (
|
||||
callPackage ../development/r-modules {
|
||||
overrides = (config.rPackageOverrides or (_: { })) pkgs;
|
||||
}
|
||||
);
|
||||
|
||||
### SERVERS
|
||||
|
||||
|
@ -74,6 +74,4 @@ in
|
||||
erlang_27 = self.packagesWith self.interpreters.erlang_27;
|
||||
erlang_26 = self.packagesWith self.interpreters.erlang_26;
|
||||
};
|
||||
|
||||
__attrsFailEvaluation = true;
|
||||
}
|
||||
|
@ -29,7 +29,6 @@ let
|
||||
{
|
||||
inherit coq lib;
|
||||
coqPackages = self // {
|
||||
__attrsFailEvaluation = true;
|
||||
recurseForDerivations = false;
|
||||
};
|
||||
|
||||
|
@ -70,7 +70,6 @@ let
|
||||
else
|
||||
pkgs.extend (
|
||||
final: _: {
|
||||
__attrsFailEvaluation = true;
|
||||
recurseForDerivations = false;
|
||||
# The CUDA package set will be available as cudaPackages_x_y, so we need only update the aliases for the
|
||||
# minor-versioned and unversioned package sets.
|
||||
|
@ -36,11 +36,7 @@ with self;
|
||||
{
|
||||
|
||||
inherit perl;
|
||||
perlPackages = self // {
|
||||
perlPackages = self.perlPackages // {
|
||||
__attrsFailEvaluation = true;
|
||||
};
|
||||
};
|
||||
perlPackages = self;
|
||||
|
||||
# Check whether a derivation provides a perl module.
|
||||
hasPerlModule = drv: drv ? perlModule;
|
||||
|
@ -30,31 +30,16 @@
|
||||
}:
|
||||
let
|
||||
|
||||
# __attrsFailEvaluation is a temporary workaround to get top-level
|
||||
# eval to succeed (under builtins.tryEval) for the entire
|
||||
# packageset, without deep invasve changes into individual
|
||||
# packages.
|
||||
#
|
||||
# Now that CI has been added, ensuring that top-level eval will
|
||||
# not be broken by any new commits, you should not add any new
|
||||
# occurrences of __attrsFailEvaluation, and should remove them
|
||||
# wherever you are able to (doing so will likely require deep
|
||||
# adjustments within packages). Once all of the uses of
|
||||
# __attrsFailEvaluation are removed, it will be deleted from the
|
||||
# routine below. In the meantime,
|
||||
#
|
||||
# The intended semantics are that an attrpath rooted at pkgs is
|
||||
# part of the (unfiltered) release jobset iff all of the following
|
||||
# part of the (unfiltered) release jobset iff both of the following
|
||||
# are true:
|
||||
#
|
||||
# 1. The attrpath leads to a value for which lib.isDerivation is true
|
||||
#
|
||||
# 2. No proper prefix of the attrpath has __attrsFailEvaluation=true
|
||||
#
|
||||
# 3. Any proper prefix of the attrpath at which lib.isDerivation
|
||||
# 2. Any proper prefix of the attrpath at which lib.isDerivation
|
||||
# is true also has __recurseIntoDerivationForReleaseJobs=true.
|
||||
#
|
||||
# The last condition is unfortunately necessary because there are
|
||||
# The second condition is unfortunately necessary because there are
|
||||
# Hydra release jobnames which have proper prefixes which are
|
||||
# attrnames of derivations (!). We should probably restructure
|
||||
# the job tree so that this is not the case.
|
||||
@ -81,8 +66,6 @@ let
|
||||
|
||||
else if !(lib.isAttrs value) then
|
||||
[ ]
|
||||
else if (value.__attrsFailEvaluation or false) then
|
||||
[ ]
|
||||
else
|
||||
lib.pipe value [
|
||||
(builtins.mapAttrs (
|
||||
|
Loading…
x
Reference in New Issue
Block a user