Commit Graph

758 Commits

Author SHA1 Message Date
Artturin
8a874c4dc8 tests-cc-wrapper: Ignore gcc aliases 2024-10-18 23:45:22 +03:00
Artturin
8de11b252d tests.cc-wrapper: Run CC CXX with an empty path
Ensure our wrappers hardcode all the necessary tools
2024-10-18 23:45:22 +03:00
Tristan Ross
959200a01e
{clang-sierraHack{,-stdenv},tests.macOSSierraShared}: drop (#346730) 2024-10-14 11:11:56 -07:00
Emily
b2cb2a8d44 {clang-sierraHack{,-stdenv},tests.macOSSierraShared}: drop
This is some thing introduced in 2017 to work around a problem that
no longer seems to exist. Nothing uses it except its own test, which
these days passes even with the standard `clangStdenv`.
2024-10-05 21:29:07 +01:00
github-actions[bot]
653bcc0ea9
Merge master into staging-next 2024-10-05 18:04:03 +00:00
sternenseemann
b341506a8d Merge branch master into haskell-updates
Conflicts from #341407 resolved.
2024-09-27 11:41:25 +02:00
Artturin
f0e657f3b1 Merge branch 'master' into staging-next 2024-09-25 06:05:01 +03:00
Artturin
e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00
github-actions[bot]
bb260f91c4
Merge master into haskell-updates 2024-09-18 00:15:34 +00:00
github-actions[bot]
73cf025711
Merge staging-next into staging 2024-09-17 12:05:50 +00:00
nicoo
423da96e75 test/release: do not add .git to the store
This is slow, and currently takes 5 GiB of extra space on every invocation.
2024-09-17 09:44:23 +00:00
nicoo
493442c470 tests: avoid copying .git into the store 2024-09-17 09:39:51 +00:00
github-actions[bot]
35f1a5b515
Merge master into haskell-updates 2024-09-14 00:15:12 +00:00
github-actions[bot]
5c9c7359c3
Merge staging-next into staging 2024-09-14 00:13:49 +00:00
Sergei Trofimovich
88950412bc gcc49, gcc49Stdenv, gfortran49: remove old implementation
gcc-4.9.4 was released in Aug 3, 2016, 8 years ago. It's a branch that
went out of support years ago. Numerous bugs never get backported to
this version.

Let's remove it.
2024-09-12 10:32:19 +01:00
Wolfgang Walther
bc0395ee6f
auto-patchelf: refactor structuredAttrs support
stdenv now provides better tooling to support structuredAttrs without
depending on $__structuredAttrs itself.
2024-09-11 19:29:39 +02:00
Wolfgang Walther
2a2b88eb55
auto-patchelf: fix test for hook
Fix suggested by Yann Hamdaoui in
https://github.com/NixOS/nixpkgs/pull/340858#issuecomment-2344155304.
2024-09-11 19:29:39 +02:00
github-actions[bot]
14ba90a8e8
Merge master into haskell-updates 2024-09-11 00:15:39 +00:00
Alex Tunstall
eeeeb555e2 tests.cross.sanity: Add GHC to catch regressions
This is to ensure that Haskell users on platforms that lack official
bindists still have a convenient means of getting GHC running natively.

In my admittedly somewhat limited testing on RISC-V, GHC 8.10.7 is able
to bootstrap native builds for 9.2.8 and 9.4.5. GHC 9.2.8 and 9.4.5 are
unable to bootstrap themselves and 9.6.2 when cross-compiled.

If you're looking at this commit to see whether you can safely upgrade
the compiler used here to remove 8.10, please try cross-compiling 9.0 or
later and then booting a native GHC with it.
2024-09-08 23:50:05 +02:00
github-actions[bot]
de15243c9a
Merge master into staging-next 2024-09-07 12:04:51 +00:00
David McFarland
14c908cdc9 tests.dotnet: add test for supported nugetDeps values 2024-09-06 16:47:36 -03:00
K900
23b4832da0 Merge remote-tracking branch 'origin/master' into staging-next 2024-09-04 08:53:48 +03:00
Philip Taron
89cbfde96d
nixpkgs-vet: update CI, docs, and release to 0.1.4
Everything gets moved into the `ci/` top-level directory.

We keep behind `maintainers/scripts/check-by-name.sh` and `pkgs/test/check-by-name/pinned-version.txt` as they are going to cause CI errors and confusion until we get all the way through the various channels.
They'll be removed in about a week or so.
2024-09-03 13:53:25 -07:00
Anderson Torres
f72e74d7ae installShellFiles: migrate tests to tests subdirectory
Rationale: Since RFCs 140 and 146, the old category-based hierarchy is
deprecated and obsolete, and a new approach took place: packages should be as
self-contained as possible.

This paradigm is reflected in many new strict checks that prohibit a package to
refer to files outside its directory tree.

Following this spirit, this commit essentially moves nixpkgs
pkgs/test/default.nix to ./tests/default.nix.

Further, to keep the top-level `tests` attribute, a green alias is kept in the
place of older file.
2024-08-28 18:51:06 -03:00
Philip Taron
0d1b26857b
treewide: support structuredAttrs in setup hooks (part 2) (#335666) 2024-08-28 14:07:58 -07:00
Artturin
740804dd5f
patch-shebangs: don't patch shebangs with bash builtins (#330188) 2024-08-27 03:54:10 +03:00
github-actions[bot]
132f2322d0
Merge master into staging-next 2024-08-26 12:05:25 +00:00
Silvan Mosberger
e6d45588ad tests.haskell.cabalSdist: Prevent rebuilds when Nix files change
The generated file sets its own directory as the source, including the
generated file itself, which causes rebuilds when that file is
reformatted. We can avoid this by overriding the source with a filtered
version and using that throughout the tests.

See https://github.com/NixOS/nixpkgs/pull/320572 for more context
2024-08-25 04:59:11 +02:00
Silvan Mosberger
7cb66fd579 tests.makeBinaryWrapper: Prevent rebuilds when Nix files change
The source included way more files than it really needed.
This commit limits it to exactly those it needs.

This also makes sure that no rebuild is necessary when any Nix
file changes, in particular useful when we reformat the Nix files.
2024-08-25 04:59:11 +02:00
Wolfgang Walther
1efcffa700
stdenv: support default values in concatTo
The previously used pattern was introduced in #318614, but technically
leaked the default flags into the global scope. While this would
probably not make much of a practical difference, making concatTo
support default values is a much cleaner approach.
2024-08-24 12:23:35 +02:00
github-actions[bot]
8751a0ec8d
Merge master into staging-next 2024-08-24 00:12:18 +00:00
Azat Bahawi
c5e8f89f3a
autoPatchelfHook: fix tests 2024-08-23 13:08:05 +03:00
K900
5c68540f8b Merge remote-tracking branch 'origin/staging-next' into staging 2024-08-22 13:20:38 +03:00
Philip Taron
abcb8ef242
tests.texlive: remove with statements 2024-08-18 06:32:22 -07:00
github-actions[bot]
26d52a889c
Merge staging-next into staging 2024-08-16 18:01:47 +00:00
Doron Behar
0d920a91a2
Merge pull request #225051 from ShamrockLee/go-module-overlay-stdenv
buildGoModule: Fix overriding with overlay-style stdenv
2024-08-16 15:44:15 +00:00
Felix Buehler
1517dd9072 tests.kernel-config: remove 'with lib;' 2024-08-16 16:09:03 +02:00
Someone
ccaaa9ca53
Merge pull request #318614 from wolfgangwalther/structured-attrs-setup-hooks
treewide: support structuredAttrs in setup hooks
2024-08-13 19:29:36 +00:00
Someone Serge
9876c2fe9e stdenv: concatStringsSep: test sep="&"
The test fails without 64eaa63181
("stdenv: concatStringsSep: quote ${sep}")

Co-authored-by: Ivan Trubach <mr.trubach@icloud.com>
Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2024-08-11 23:54:15 +00:00
Yueh-Shun Li
eed069a5bc buildGoModule: fix overrideAttrs overriding
Fix overriding of vendorHash and various attributes via the fixed point
attribute support of stdenv.mkDerivation.

Pass as derivation attributes
goModules, modRoot, vendorHash, deleteVendor, and proxyVendor.

Move goModules and vendorHash out of passthru.

Co-authored-by: Doron Behar <doron.behar@gmail.com>
2024-08-11 13:38:11 +08:00
David McFarland
7f2de09531
Merge pull request #331398 from MattSturgeon/dotnet-finalAttrs
buildDotnetModule: add `finalAttrs` support
2024-08-07 22:06:07 -03:00
Philip Taron
b0b3172fb4
replaceVars: init 2024-08-07 07:27:50 -07:00
Matt Sturgeon
79d26048de
buildDotnetModule: add finalAttrs support
Allow users to pass arguments to `buildDotnetModule` in the form:

```nix
buildDotnetModule (finalAttrs: {
  # Args
})
```

Exposing the behaviour of the underlying `mkDerivation` and allowing
packages to be defined in a recursive way that works correctly even when
the package is overridden, e.g. using `overrideAttrs`.

Added some simple test cases that piggyback on the existing
`structured-attrs` test.
2024-08-06 16:33:49 +01:00
Motiejus Jakštys
bbd0655ae8 add compressDrv and compressDrvWeb
*compressDrv* compresses files in a given derivation.

*compressDrvWeb* compresses a derivation for a loosely-defined
pre-compressed "web server" usage.

This intends to replace the `passthru.data-compressed` derivations that
have accumulated in nixpkgs with something more reusable.
2024-08-04 10:10:16 +03:00
Wolfgang Walther
471cbdd062
stdenv: add concatStringsSep helper
This can be used to separate lists for example with commas, when
creating argument strings. This works with both structuredAttrs disabled
and enabled.
2024-08-02 22:11:41 +02:00
Wolfgang Walther
6bdfef9d2d
stdenv: generalize _accumFlagsArray to concatTo
Passing "flagsArray" as the first argument allows using this function
in a few more places.
2024-08-02 22:11:38 +02:00
Wolfgang Walther
929db7bc22
tests.stdenv: fix spelling 2024-08-02 21:54:25 +02:00
Minijackson
24655f7804
patch-shebangs: don't patch shebangs with bash builtins
'command -v builtin' returns 'builtin', which doesn't suit us since
we're looking for program in the given PATH. This could give us shebangs
like this:

    #!builtin

which is surprising.

Switch to 'type -P command' which always returns a path, even if command
is both a builtin and an executable (for example 'test'), or fail is
'command' is just a builtin.
2024-07-29 11:40:29 +02:00
Emily
4c89bb901d
Merge pull request #253186 from risicle/ris-hardening-tests-fixups
cc-wrapper hardeningFlags tests: fix expected behaviour in corner cases, add tests for `stackclashprotection`
2024-07-28 19:07:14 +01:00
Robert Hensing
70d94d8360
Merge pull request #330434 from ShamrockLee/test-overriding-attrs
tests.overriding: structure tests as an attribut set
2024-07-28 15:13:32 +02:00