Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
clang6Stdenv, clang-tools_6, clang_6, lld_6, lldb_6, llvm_6: remove
|
|
|
|
check-by-name: Refactor to prepare for enforcing `pkgs/by-name`, make `--base` required
|
|
Remove as the last two users are gone.
|
|
checkpointBuildTools: mkCheckpointedBuild -> mkCheckpointBuild
|
|
Avoids allocation in the non-error case
|
|
- Typo
- Rename AttributeRatchet to ToNixpkgsProblem
- Make the compare trait method into a RatchetState method
Co-Authored-By: Philip Taron <philip.taron@gmail.com>
|
|
|
|
This very weirdly broke the channel evaluation: https://hydra.nixos.org/build/245871962/nixlog/1
It appears that this attribute is only evaluated by Hydra, _not_ by
ofborg. So this wouldn't have been detected by CI anyways in the PR that
introduced the problem: https://github.com/NixOS/nixpkgs/pull/276800.
However, due to https://github.com/NixOS/nixpkgs/pull/271123#discussion_r1442134594,
the channel only broke once that was fixed with https://github.com/NixOS/nixpkgs/pull/278777
Whether the fix is good, I don't know, but the failing-on-darwin attribute
doesn't exist anymore with this commit, making the tarball build succeed
again:
nix-build pkgs/top-level/release.nix -A tarball
|
|
All other functions are in the form of `*{c,C}heckpointBuild*`, so we
deprecate the `mkCheckpointedBuild` function in favor of `mkCheckpointBuild`.
Also address some inconsistencies in the docs: some `buildOutput` should
actually be `incrementalBuildArtifacts`.
|
|
|
|
Was broken since introduced, but not caught due to
https://github.com/NixOS/nixpkgs/pull/271123#discussion_r1442134594
|
|
Strips the Nixpkgs prefix from the callPackage paths,
makes future error messages using this path be deterministic.
|
|
Makes errors for attributes deterministic so it's easier to test (also,
reproducibility is always nice)
|
|
This makes the attribute ratchet check logic more re-usable, which will
be used in a future commit.
It also renames the ratchet states to something more intuitive
|
|
CI now passes the flag, so it doesn't have to be optional anymore
|
|
This was previously a checking impurity that could produce different
results when run on different systems.
|
|
Does a bunch of cleanups to the eval.{rs,nix} code to make future
changes easier, no functionality is changed.
|
|
|
|
|
|
|
|
ConnorBaker/feat/autoPatchelf-support-structuredAttrs
auto-patchelf: add support for __structuredAttrs
|
|
`pkgs/by-name`: Enable gradual migration checks and add `run-local.sh`
|
|
- trace function, avoids littering `echo >&2` all throughout
- Avoid `eval`, remove unneeded shellcheck
Co-Authored-By: Victor Engmark <victor@engmark.name>
|
|
This commit adds a test for the newly added support for
__structuredAttrs in autoPatchelf(hook). It copied a reasonably
small-closure binary derivation that makes use of autoPatchelf, stripped
it down for the purpose of the test, and check that autoPatchelf
correctly set the interpreter and runpath whether __structuredAttrs is
set to true or not.
|
|
This enables the ratchet checks for pkgs/by-name, allowing gradual
migrations!
|
|
|
|
Due to the check soon depending on the base branch (see `--base`),
the CI check can't reasonably share all code with a local check.
We can still make a script to run it locally, just not sharing all code.
|
|
This part of the CI can also be reproduced locally
|
|
incremental builds: add derivation override functions
|
|
tests.nixpkgs-check-by-name: Implement gradual empty arg check migration
|
|
|
|
This derivation verifies that all jobset attributes can be evaluated
under tryEval without producing any non-catchable errors or causing
infinite recursion.
|
|
|
|
This would be duplicated otherwise
|
|
|
|
|
|
Previously, not passing `--base` would enforce the most strict checks.
While there's currently no actual violation of these stricter checks,
this does not match the previous behavior.
This won't matter once CI passes `--base`, the code handling the
optionality can be removed then.
|
|
This implements the ability to test gradual transitions in check
strictness, and adds one such test for the empty non-auto-called
arguments check.
|
|
This implements the option for a gradual migration to stricter checks.
For now this is only done for the check against empty non-auto-called
callPackage arguments, but in the future this can be used to ensure all
new packages make use of `pkgs/by-name`.
This is implemented by adding a `--base <BASE_NIXPKGS>` flag, which then
compares the base nixpkgs against the main nixpkgs version, making sure
that there are no regressions.
The `--version` flag is removed. While it was implemented, it was never
used in CI, so this is fine.
|
|
This prepares the code base for the removal of the `--version` flag, to
be replaced with a flag that can specify a base version to compare the
main Nixpkgs against, in order to have gradual transitions to stricter
checks.
This refactoring does:
- Introduce the `version` module that can house the logic to increase
strictness, with a `version::Nixpkgs` struct that contains the
strictness conformity of a single Nixpkgs version
- Make the check return `version::Nixpkgs`
- Handle the behavior of the still-existing `--version` flag with `version::Nixpkgs`
- Introduce an intermediate `process` function to handle the top-level
logic, especially useful in the next commit
|
|
Convenience function to run another validation over a successful validation result.
This will be usable in more locations in future commits, making the code
nicer.
|
|
This makes it such that these two errors can both be thrown for a single
package:
- The attribute value not being a derivation
- The attribute not being a proper callPackage
The tests had to be adjusted to only throw the error they were testing
for
|
|
cudaPackages.cuda_compat: ignore missing libs provided at runtime
cudaPackages.gpus: Jetson should never build by default
cudaPackages.flags: don't build Jetson capabilities by default
cudaPackages: re-introduce filter for pre-existing CUDA redist packages in overrides
cudaPackages: only recurseIntoAttrs for the latest of each major version
cudaPackages.nvccCompatabilities: use GCC 10 through CUDA 11.5 to avoid a GLIBC incompatability
cudaPackages.cutensor: acquire libcublas through cudatoolkit prior to 11.4
cudaPackages.cuda_compat: mark as broken on aarch64-linux if not targeting Jetson
cudaPackages.cutensor_1_4: fix build
cudaPackages: adjust use of autoPatchelfIgnoreMissingDeps
cudaPackages.cuda_nvprof: remove unecessary override to add addOpenGLRunpath
cudaPackages: use getExe' to avoid patchelf warning about missing meta.mainProgram
cudaPackages: fix evaluation with Nix 2.3
cudaPackages: fix platform detection for Jetson/non-Jetson aarch64-linux
python3Packages.tensorrt: mark as broken if required packages are missing
Note: evaluating the name of the derivation will fail if tensorrt is not present,
which is why we wrap the value in `lib.optionalString`.
cudaPackages.flags.getNixSystem: add guard based on jetsonTargets
cudaPackages.cudnn: use explicit path to patchelf
cudaPackages.tensorrt: use explicit path to patchelf
|
|
|
|
|
|
|
|
|
|
|