nixpkgs/pkgs/development/interpreters
Alyssa Ross b682fef8e9 python3.pkgs: fix splice through unsupported hosts
Previously, unless unsupported platforms were allowed, the following
would fail to evaluate (from an "x86_64-linux" system):

    pkgsCross.x86_64-freebsd.__splicedPackages.docutils.__spliced.buildHost

It shouldn't have, because the buildHost package ends up being for
Linux.  This broke evaluation of e.g. pkgsCross.x86_64-freebsd.libdrm,
because it has docutils in nativeBuildInputs.  mkDerivation would try
to go through __spliced.buildHost on docutils to get to the Linux
version, but the check in ensurePythonModules would kick in first,
triggering the meta check because of the equality check in the
implementation of hasPythonModule, which would fail because Python is
not marked as supported on FreeBSD in Nixpkgs at the moment.  Thus,
even though they're not supposed to be, the meta checks would be
triggered even though the only attribute being accessed on the
unsupported derivation was __spliced.

We can fix this by using the same mechanism used to implement the meta
checks themselves: lib.extendDerivation.  Now, attempting to access
drvPath or outPath on an attribute that fails the validity check will
produce the same error as before, but other accesses will be allowed
through, fixing splicing.

I've tested evaluation of packages that pass and fail the validity
check, and confirmed that the behaviour is still correct.
2023-01-28 21:08:50 +00:00
..
acl2 acl2: remove python2 usage 2022-12-02 02:22:40 +01:00
alda
angelscript angelscript: 2.35.1 -> 2.36.0 2022-10-01 07:36:39 +00:00
asmrepl
bats treewide: switch to nativeCheckInputs 2023-01-21 12:00:00 +00:00
bic treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
boron treewide: replace http by https when https is a permanent redirection 2023-01-22 02:46:49 +01:00
bqn cbqn: tie outputs for library to library config option 2023-01-11 13:00:24 +01:00
bwbasic
ceptre
cg3 cg3: 1.3.7 -> 1.3.9 2022-10-08 18:06:15 +08:00
chibi chibi: fix wrapping on darwin 2022-12-29 06:34:22 +01:00
cling cling: use makeWrapper for build platform 2022-08-14 00:17:01 +03:00
clips
clisp clisp hg: remove tohl from meta.maintainers list 2022-10-23 01:19:49 -03:00
clojure babashka: 1.0.170 -> 1.1.172 2023-01-25 13:41:32 +00:00
cyclone
dart dart: set sourceProvenance to binaryNativeCode 2022-10-15 16:07:45 +01:00
dhall
duktape duktape: force link shared library against libm 2022-07-22 17:05:42 +08:00
dzaima-apl
eff
elixir elixir_1_14: 1.14.2 -> 1.14.3 2023-01-15 16:13:37 -05:00
erlang treewide: systemdSupport: use lib.meta.availableOn 2023-01-22 00:27:19 -08:00
evcxr evcxr: 0.14.1 -> 0.14.2 2023-01-02 10:09:35 +01:00
falcon
gauche lib.replaceChars: warn about being a deprecated alias 2022-12-15 22:25:51 +02:00
gnu-apl
gnudatalanguage gnudatalanguage: fix build on aarch64-darwin 2022-10-11 08:22:46 +02:00
groovy
gtk-server gtk-server: remove tohl from meta.maintainers list 2022-10-23 01:22:31 -03:00
guile guile_3_0: 3.0.8 -> 3.0.9 2023-01-25 21:42:30 +00:00
hashlink treewide: use mbedtls 3 where possible 2022-12-07 19:58:55 +00:00
hugs
icon-lang
io treewide: move pkg-config, autoreconfHook, intltool to nativeBuildInputs 2022-09-26 17:53:26 +03:00
ivy treewide: remove empty go vendor hashes 2023-01-21 11:35:00 -05:00
j J: fixing init script 2022-11-25 21:22:21 +01:00
janet janet: 1.25.1 -> 1.26.0 2023-01-11 09:04:53 +08:00
jelly
jimtcl treewide: switch to nativeCheckInputs 2023-01-21 12:00:00 +00:00
joker joker: 1.0.2 -> 1.1.0 2022-11-09 20:29:51 +00:00
jruby jruby: 9.3.8.0 -> 9.3.9.0 2022-11-02 10:49:36 +08:00
jython jython: 2.7.2b3 -> 2.7.3 2022-09-21 08:09:31 +00:00
kerf treewide: switch to nativeCheckInputs 2023-01-21 12:00:00 +00:00
kona
lfe treewide: makeWrapper buildInputs to nativeBuildInputs 2022-08-16 13:14:19 +03:00
lolcode treewide: remove global with lib; statements in pkgs/development 2023-01-26 18:31:02 +01:00
love
lua-5 buildLuaPackage: adapt to native check inputs 2023-01-21 16:42:10 +01:00
luajit luajit: add powerpc64le-linux to badPlatforms 2023-01-06 16:03:23 +01:00
luau luau: 0.558 -> 0.560 2023-01-27 04:20:00 +00:00
lunatic lunatic: 0.10.1 -> 0.12.0 2022-11-15 13:21:30 -05:00
maude treewide: makeWrapper buildInputs to nativeBuildInputs 2022-08-16 13:14:19 +03:00
metamath treewide: replace http by https when https is a permanent redirection 2023-01-22 02:46:49 +01:00
micropython micropython: 1.19 -> 1.19.1 2022-07-31 23:55:17 +00:00
mujs mujs: 1.2.0 -> 1.3.2 2022-11-30 22:09:23 +01:00
nelua treewide: switch to nativeCheckInputs 2023-01-21 12:00:00 +00:00
nextflow nextflow: 21.10.6 -> 22.04.5 2022-07-29 02:12:24 +00:00
ngn-k ngn-k: allow cross compilation to FreeBSD 13 2022-11-29 15:57:09 +01:00
nickel Merge pull request #206641 from atorres1985-contrib/nickel 2022-12-17 21:23:44 -03:00
npiet
oak oak: 0.2 -> 0.3 2022-11-09 06:18:36 +00:00
octave treewide: fix typos 2022-12-17 19:39:44 -05:00
perl treewide: remove global with lib; statements in pkgs/development 2023-01-26 18:31:02 +01:00
php treewide: systemdSupport: use lib.meta.availableOn 2023-01-22 00:27:19 -08:00
picoc
picolisp treewide: remove global with lib; statements in pkgs/development 2023-01-26 18:31:02 +01:00
python python3.pkgs: fix splice through unsupported hosts 2023-01-28 21:08:50 +00:00
python-cosmopolitan treewide: *Flags convert to list from str 2022-10-10 15:30:59 +03:00
qnial qnial: fix build with libxcrypt 2022-10-09 18:10:42 +02:00
quickjs
racket racket: mark as unbroken on darwin 2022-11-30 12:58:02 -08:00
rakudo zef: 0.14.2 -> 0.14.6 2022-12-26 02:10:29 +00:00
rascal
red
regina
renpy renpy: 8.0.1 -> 8.0.3 2022-09-15 10:08:06 +08:00
ruby treewide: remove global with lib; statements in pkgs/development 2023-01-26 18:31:02 +01:00
s9fes
scheme48 treewide: more meta changelog urls and mainPrograms (#200062) 2022-11-09 16:41:13 +01:00
scsh
self lib.maintainers.doublec: remove 2023-01-24 01:02:59 -05:00
shen-sbcl
shen-sources
sollya
spidermonkey treewide: mark #201254 2023-01-26 15:11:41 +01:00
starlark starlark: unstable-2022-08-17 -> unstable-2023-01-12 2023-01-17 15:16:49 +00:00
supercollider
tcl mkTclDerivation: support nativeCheckInputs 2023-01-21 16:42:10 +01:00
tclreadline
tinyscheme treewide: replace http by https when https is a permanent redirection 2023-01-22 02:46:49 +01:00
trealla trealla: 1.20.31 -> 2.2.6 2022-09-25 01:51:06 -05:00
unicon-lang unicon-lang: fix build with libxcrypt 2022-10-09 18:10:43 +02:00
wasm3 wasm3: add many knownVulnerabilities 2022-09-25 18:02:35 +01:00
wasmer wasmer: 3.0.2 -> 3.1.0 2022-12-15 05:35:36 +00:00
wasmtime wasmtime: 3.0.1 -> 4.0.0 2022-12-24 14:06:50 +01:00
yabasic yabasic: 2.90.1 -> 2.90.2 2022-08-02 08:19:11 +00:00
yex-lang yex-lang: unbreak on aarch64-linux 2022-11-28 01:13:37 +01:00
zuo zuo: 2022-11-15 -> 2023-01-02 2023-01-27 04:20:00 +00:00