Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
A configuration parameter for gitTrackedWith will be introduced in the
next commit
|
|
`fileset.fileFilter`: Restrict second argument to paths
|
|
|
|
lib.lists.allUnique: init
|
|
While this change is backwards-incompatible, I think it's okay because:
- The `fileFilter` function is not yet in a stable NixOS release, it was only merged about [a month ago](https://github.com/NixOS/nixpkgs/pull/257356).
- All public uses of the function on GitHub only pass a path
- Any `fileFilter pred fileset` can also be expressed as `intersection fileset (fileFilter pred path)` without loss of functionality.
- This is furthermore pointed out in the new error message when a file set is passed
|
|
`fileset.fileFilter`: Don't run predicate unnecessarily
|
|
|
|
Conflicts:
- pkgs/development/libraries/gdcm/default.nix
|
|
doc: commit header convention for documentation changes
|
|
Before:
nix-repl> fileset.trace (fileset.fileFilter (file: builtins.trace file.name false) ./default.nix)
trace: README.md
trace: benchmark.sh
trace: default.nix
trace: internal.nix
trace: mock-splitRoot.nix
trace: tests.sh
After:
nix-repl> fileset.trace (fileset.fileFilter (file: builtins.trace file.name false) ./default.nix)
trace: default.nix
|
|
|
|
|
|
|
|
lib.mirrorFunctionArgs: init
|
|
|
|
|
|
Using the script in maintainers/scripts/update-redirected-urls.sh
|
|
|
|
`lib.fileset.fromSource`: init
|
|
|
|
Minor `lib.fileset` cleanups
|
|
Along the lines of `assertOneOf`, but expects a list of values to be
compared. This gives a good error message and is useful for lists of
values, like `supportedGhcVersions` in the arguments of
`haskell-language-server`.
|
|
We need this stuff to be available in lib so make-derivation.nix can
access it to construct the Meson cross file.
This has a couple of other advantages:
- It makes Rust less special. Now figuring out what Rust calls a
platform is the same as figuring out what Linux or QEMU call it.
- We can unify the schema used to define Rust targets, and the schema
used to access those values later. Just like you can set "config"
or "system" in a platform definition, and then access those same
keys on the elaborated platform, you can now set "rustcTarget" in
your crossSystem, and then access "stdenv.hostPlatform.rustcTarget"
in your code.
"rustcTarget", "rustcTargetSpec", "cargoShortTarget", and
"cargoEnvVarTarget" have the "rustc" and "cargo" prefixes because
these are not exposed to code by the compiler, and are not
standardized. The arch/os/etc. variables are all named to match the
forms in the Rust target spec JSON.
The new rust.target-family only takes a list, since we don't need to
worry about backwards compatibility when that name is used.
The old APIs are all still functional with no warning for now, so that
it's possible for external code to use a single API on both 23.05 and
23.11. We can introduce the warnings once 23.05 is EOL, and make them
hard errors when 23.11 is EOL.
|
|
Thanks nixd!
|
|
Just minor changes like:
- Always using "X is a Y, but it should be Z"
- "X is a path that does not exist" rather than "X does not exist"
- Always using multi-line strings for errors
- Always quoting string-like values and not quoting path-like values
- But do quote filesystem roots. Even though they're paths, they might
be very small, good to have quotes to know the start/end
- Capitalise the first word
- Distinguish root vs filesystem root more
|
|
This problem was fixed in https://github.com/nix-community/nixdoc/pull/81 which is included in version 2.5.1, which is now used in Nixpkgs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
lib.strings: add `replicate`
|
|
Rename temporary variable copyArgs -> mirrorArgs.
Use lib.mirrorFunctionArgs to define `mirrorArgs`.
Apply mirrorArgs also to the returned function.
|
|
Co-authored-by: Silvan Mosberger <github@infinisil.com>
|
|
|
|
|
|
We have several cross-compilation bugs that show up if
hostPlatform!=buildPlatform yet
hostPlatform.config==buildPlatform.config.
These bugs have appeared and disappeared as we've fiddled with the
definition of equality for platform objects. This commit adds a
clear-cut case where they are *not* equal and never will be, so we
can test it.
|
|
lib.fileset: Add an additional argument in the design docs
|
|
I didn't add these arguments, so these comments are from my understading of the arguments.
|
|
|
|
lib.filesystem: Don't test Nix-specific error messages
|
|
`lib.fileset.difference`: init
|
|
In https://github.com/NixOS/nix/pull/9269 the error messages change
which would've broken this test.
|