about summary refs log tree commit diff
path: root/pkgs/test
AgeCommit message (Collapse)AuthorFilesLines
2024-03-02Merge pull request #290743 from tweag/by-name-better-errorsSilvan Mosberger70-312/+872
2024-03-01tests.nixpkgs-check-by-name: More inline format! argumentsSilvan Mosberger1-112/+76
Now that the previous commit removed all the .display()'s that were previously necessary for PathBuf's, but now aren't for RelativePathBuf, we can also inline the format! arguments
2024-03-01tests.nixpkgs-check-by-name: Use RelativePath for relative pathsSilvan Mosberger6-153/+158
Makes the code easier to understand and less error-prone
2024-03-01tests.nixpkgs-check-by-name: Better empty argument errorSilvan Mosberger4-0/+12
2024-03-01tests.nixpkgs-check-by-name: Fix absolute path in errorsSilvan Mosberger5-23/+43
2024-03-01tests.nixpkgs-check-by-name: Various minor improvementsSilvan Mosberger38-213/+262
Co-Authored-By: Philip Taron <philip.taron@gmail.com>
2024-02-29substitute: Deprecate `replacements`, introduce `replacementsList`Silvan Mosberger2-0/+98
Also: - Add tests - Treewide update - Improve docs
2024-02-27Merge pull request #290946 from ju1m/systemd-option-listWill Fancher3-0/+44
nixos/systemd: merge unit options as lists when at least one value is a list
2024-02-25nixos/systemd: merge unit options as lists when at least one value is a listJulien Moutinho3-0/+44
2024-02-23tests.nixpkgs-check-by-name: Fix internal docsSilvan Mosberger1-2/+5
2024-02-23tests.nixpkgs-check-by-name: Improve errors for new packagesSilvan Mosberger6-23/+75
Or rather, make it more consistent
2024-02-23tests.nixpkgs-check-by-name: More spaces in errorsSilvan Mosberger9-5/+19
2024-02-23tests.nixpkgs-check-by-name: Better error for empty second argSilvan Mosberger7-25/+77
2024-02-23tests.nixpkgs-check-by-name: More consistent errorsSilvan Mosberger6-8/+8
2024-02-23tests.nixpkgs-check-by-name: Evaluate base and main branch in parallelSilvan Mosberger1-7/+13
2024-02-23tests.nixpkgs-check-by-name: Improve errors relating to the base branchSilvan Mosberger55-37/+110
2024-02-23tests.nixpkgs-check-by-name: Improve more errorsSilvan Mosberger10-54/+134
2024-02-22tests.nixpkgs-check-by-name: Improve non-syntactic callPackage error moreSilvan Mosberger6-14/+79
2024-02-22tests.nixpkgs-check-by-name: Improve error for wrong package fileSilvan Mosberger6-31/+106
2024-02-19tests.nixpkgs-check-by-name: Better error for non-syntactic callPackageSilvan Mosberger5-53/+111
2024-02-19tests.nixpkgs-check-by-name: Fix allowing non-path overridesSilvan Mosberger5-18/+26
An edge case was allowed when it shouldn't be: A package defined in `pkgs/by-name` could be overridden in `all-packages.nix` if it was of the form `callPackage (<expr>) { <non-empty> }`. This is not right, it's required that the first argument be the path matching the package to be overridden.
2024-02-19tests.nixpkgs-check-by-name: Improve inherit detectionSilvan Mosberger1-6/+30
Detect inherit's better, such that a future commit can use this information in an error message
2024-02-17Merge staging-next into staginggithub-actions[bot]1-0/+1
2024-02-17fetchPypiLegacy: add testDavHau1-0/+1
2024-02-16Merge pull request #255463 from ↵Rick van Schijndel1-1/+16
emilylange/stdenv/patch-shebangs-trailing-newline patch-shebangs: fix crash with shebang without trailing newline
2024-02-12check-by-name: Update pinned toolingSilvan Mosberger1-2/+2
Includes https://github.com/NixOS/nixpkgs/pull/287083
2024-02-09check-by-name: Update pinned toolSilvan Mosberger1-2/+2
Includes https://github.com/NixOS/nixpkgs/pull/285089
2024-02-08tests.nixpkgs-check-by-name: Test against sbcl-like regressionSilvan Mosberger4-0/+9
This adds a test to check that a commit like 0a3dab4af34e4d086931d82827bfc8760c3e3150 would fail CI After doing some improvements to the `pkgs/by-name` check I discovered that sbcl shouldn't have been allowed in `pkgs/by-name` after all as is. Specifically, the requirement is that if `pkgs/by-name/sb/sbcl` exists, the definition of the `sbcl` attribute must look like sbcl = callPackage ../by-name/sb/sbcl/package.nix { ... }; However it currently is an alias like sbcl = sbcl_2_4_1; This wasn't detected before because `sbcl_2_4_1` was semantically defined using `callPackage`: sbcl_2_4_1 = wrapLisp { pkg = callPackage ../development/compilers/sbcl { version = "2.4.1"; }; faslExt = "fasl"; flags = [ "--dynamic-space-size" "3000" ]; }; However this doesn't syntactically match what is required. In https://github.com/NixOS/nixpkgs/pull/285089 I introduced syntactic checks for exactly this, but they were only used for packages not already in `pkgs/by-name`. Only now that I'm doing the refactoring to also use this check for `pkgs/by-name` packages this problem is noticed. While introducing this new check is technically an increase in strictness, and therefore would justify adding a new ratchet, I consider this case to be rare enough that we don't need to do that. This commit introduces a test to prevent such regressions in the future Moving sbcl back out of `pkgs/by-name` will be done when the pinned CI is updated
2024-02-08tests.nixpkgs-check-by-name: Improve codeSilvan Mosberger5-221/+335
- Detect manual use of _internalCallByNamePackageFile for packages in `pkgs/by-name` (can't be done for others though) - Separate error message for when attribute locations can't be determined for `pkgs/by-name` attributes - Much better structure of the code in eval.rs, representing more closely what is being checked - Much more extensive comments
2024-02-08tests.nixpkgs-check-by-name: More testsSilvan Mosberger6-0/+8
For some previously untested cases. In a future commit, those tests will also be adjusted slightly
2024-02-05Merge pull request #285089 from tweag/by-name-syntactic-callPackageSilvan Mosberger21-243/+901
tests.nixpkgs-check-by-name: Syntactic `callPackage` detection and allow new package variants
2024-02-05tests.nixpkgs-check-by-name: Refactor eval.rsSilvan Mosberger1-176/+202
There was too much indentation!
2024-02-05tests.nixpkgs-check-by-name: Apply feedback from reviewSilvan Mosberger7-274/+247
https://github.com/NixOS/nixpkgs/pull/285089#pullrequestreview-1861099233 Many thanks, Philip Taron!
2024-01-31Merge pull request #279844 from doronbehar/tests/buildFHSEnvAtemu2-0/+86
tests.buildFHSEnv.libtinfo: init
2024-01-30tests.nixpkgs-check-by-name: Allow new package variantsSilvan Mosberger8-1/+35
2024-01-30tests.nixpkgs-check-by-name: FormatSilvan Mosberger3-77/+172
With `cargo fmt` Explicitly didn't do that for previous commits in order to keep the diff more easily reviewable
2024-01-30tests.nixpkgs-check-by-name: Re-use nixFileCache moreSilvan Mosberger3-48/+41
Makes the reference check use the nixFileCache instead of separately parsing and resolving paths
2024-01-30tests.nixpkgs-check-by-name: Syntactic callPackage detectionSilvan Mosberger10-23/+516
This makes the callPackage detection stronger by syntactically detecting whether an attribute is using callPackage See the added test case for why this is needed.
2024-01-30tests.nixpkgs-check-by-name: LineIndex functionality, semantics, testsSilvan Mosberger1-2/+46
- `fromlinecolumn` is added to be almost the reverse of `line`. This is needed in the future to get from `builtins.unsafeGetAttrPos` locations to the index for rnix - Previously the semantics for newline indices were not really defined, now they are, and make more sense. - Now there's a unit test for these functions
2024-01-30treewide: drop LLVM10annalee1-1/+1
2024-01-29Merge pull request #283551 from a-n-n-a-l-e-e/llvmPackages_8-dropa-n-n-a-l-e-e1-1/+1
treewide: drop LLVM8
2024-01-29check-by-name: Don't use -I in shebangSilvan Mosberger2-2/+2
Original commit from https://github.com/NixOS/nixpkgs/pull/282226, message: Running CI locally is broken becauses the `-I` argument: - Clobbers $NIX_PATH - Is wrong for two reasons: - Has too many `..` elements, relative to the script's location - Isn't relative to the script's location (as with *.nix files), since shell scripts and POSIX in general interpret paths relative to the current working directory, not the canonical path of argv[0] - Is inconsistent, since this script has symlinks pointing at it from different depths in the repository There is no way to set this flag statically in a way that will work everywhere. The caller needs to use $NIX_PATH, or the script needs to take the `-I` value as an argument. This commit deletes the static `-I` flag.
2024-01-29check-by-name: Update pinned toolingSilvan Mosberger1-2/+2
Includes https://github.com/NixOS/nixpkgs/pull/283017
2024-01-27texlive: 2022-final -> 2023.20240114Vincenzo Mantova1-2/+19
Co-authored-by: apfelkuchen06 <apfelkuchen@hrnz.li>
2024-01-27tests/texlive: add a context testapfelkuchen061-1/+14
Since context now uses the luametatex engine, which is not distributed with texlive, the probability of breaking it when updating increases. Let's add a simple test just in case. Co-authored-by: Vincenzo Mantova <1962985+xworld21@users.noreply.github.com>
2024-01-25treewide: drop LLVM8annalee1-1/+1
2024-01-25tests.cross.sanity: fix eval by fixing `qt5.qutebrowser` referenceSergei Trofimovich1-1/+1
Without the change the eval fails as: $ nix build --no-link -f. tests.cross.sanity error: attribute 'qutebrowser' missing at pkgs/test/cross/default.nix:157:5: 156| # Two web browsers -- exercises almost the entire packageset 157| pkgs.pkgsCross.aarch64-multiplatform.qt5.qutebrowser | ^ 158| pkgs.pkgsCross.aarch64-multiplatform.firefox
2024-01-25Merge pull request #283598 from Artturin/fixerr1Weijia Wang1-1/+3
tests.cc-wrapper: fix error
2024-01-24tests.cc-wrapper: fix errorArtturin1-1/+3
`error: llvmPackages_{6,7} has been removed from nixpkgs`
2024-01-22tests.nixpkgs-check-by-name: Don't enforce for fixed evalsSilvan Mosberger5-11/+22
Stops enforcing that packages whose evaluation gets fixed have to be moved to `pkgs/by-name`. This didn't really cause problems before, but I don't think it's great behavior, and now that NonApplicable is a thing, we can easily make this work, whereas before it would've been a larger change.