Commit Graph

18635 Commits

Author SHA1 Message Date
Robert Hensing
c6c8d2af65 refact: Remove unused arguments 2024-11-06 19:45:19 +01:00
Robert Hensing
3112e59734 ProgressBar::ask: Accept EOF as a no
This may occur when stderr is a tty but stdin is empty.
E.g.

    $ nix build </dev/null
    error: unexpected EOF reading a line

These stdio handles are how some non-interactive sandboxes behave,
including the Nix build sandbox and Hercules CI Effects.
2024-11-06 19:45:19 +01:00
Robert Hensing
f7b1e535a3 nix::readLine: Add eofOk parameter 2024-11-06 14:42:51 +01:00
Robert Hensing
4a785a0400
Merge pull request #11814 from xokdvium/dev/fix-libutil-tests-nix-api-util-leak
fix(libutil-tests/nix_api_util): get rid of unnecessary memory leaks
2024-11-06 12:36:00 +01:00
Sergei Zimmerman
2e7466a4e0 fix(libutil-tests/nix_api_util): get rid of unnecessary memory leaks 2024-11-06 10:55:39 +03:00
Jörg Thalheim
2ef5e222df
Merge pull request #11813 from xokdvium/dev/fix-use-after-free-libstore-tests
fix(libstore-tests): remove use-after-free bug for `StringSource`
2024-11-06 06:48:20 +01:00
John Ericson
bf19e5c34b
Merge pull request #11803 from obsidiansystems/factor-out-dev-shell
Dev shell improvements
2024-11-05 23:58:52 -05:00
John Ericson
c49a0ae8b8
Slightly tweak flake.nix
`lib.concatMapAttrs` instead of `lib.mapAttrs'` and `lib.nameValuePair`

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-11-05 23:22:43 -05:00
Sergei Zimmerman
5bc8957c73 fix(libstore-tests): remove use-after-free bug for StringSource
Unfortunately `StringSource` class is very easy was very easy to misuse
because the ctor took a plain `std::string_view` which has a bad habit
of being implicitly convertible from an rvalue `std::string`. This lead
to unintentional use-after-free bugs.

This patch makes `StringSource` much harder to misuse by disabling the ctor
from a `std::string &&` (but `const std::string &` is ok).

Fix affected tests from libstore-tests.
Reformat those tests with clangd's range formatting since the diff is tiny
and it seems appropriate.
2024-11-06 02:28:21 +03:00
John Ericson
dfd0033afb
Merge pull request #11809 from nix-windows/windows-build/meson-fixes
Meson fixes for msys2 builds
2024-11-05 10:46:03 -05:00
John Ericson
ef84fa86f5
Merge pull request #11808 from nix-windows/windows-build/meson-windows-version
Set Windows API version in Meson
2024-11-05 10:40:16 -05:00
Brian McKenna
f7abc297ca meson: add options for docs, unit tests and binding 2024-11-06 00:21:18 +11:00
Brian McKenna
a9c417dbab msys2: use ls.exe instead of coreutils.exe for coreutils directory 2024-11-06 00:18:59 +11:00
Brian McKenna
c25967384f msys2: link in wsock32 in libstore 2024-11-06 00:18:59 +11:00
Brian McKenna
f1fd277f1e msys2: make symbolic linking work in Meson 2024-11-06 00:18:58 +11:00
Brian McKenna
9dca7aeece Set Windows API version in Meson 2024-11-05 23:36:08 +11:00
John Ericson
26ea905312 Include more deps for the dev shell
When we get rid of the make build system, we would be missing things.
Incuding these packages' deps ensure we don't miss things.
2024-11-04 15:48:08 -05:00
John Ericson
9e1bc9c224 Make the choice of stdenv for the dev shell properly affect all deps
We have per-stdenv package sets, so we should be using them.
2024-11-04 15:47:54 -05:00
John Ericson
39fd4705ac Factor out the dev shell
It had gotten rather big. Hopefully we'll eventually have some generic
infra for a "multi-package dev shell" and not need so much code for
this, but until then it's better in a separate file.
2024-11-04 15:14:20 -05:00
John Ericson
b4c05a18b4
Merge pull request #11802 from obsidiansystems/special-build-jobs-meson
`hydraJobs.build{NoGc,ReadlineNoMarkdown}` build using Meson
2024-11-04 14:53:23 -05:00
John Ericson
42b5421d5a hydraJobs.build{NoGc,ReadlineNoMarkdown} build using Meson
Getting ready for the complete switch-over

Progress on #2503
2024-11-04 13:53:23 -05:00
Robert Hensing
baea2b9eec
Merge pull request #11800 from obsidiansystems/test-against-using-meson
Test against tests using Meson-built Nix
2024-11-04 19:52:53 +01:00
John Ericson
9fdbefe45c
Merge pull request #11796 from nix-windows/windows-build/minimum-sdk
Set minimum Windows API to Windows 8
2024-11-04 13:21:50 -05:00
John Ericson
62ef9fa03c
Remove redundant pkgs.pkgs
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-11-04 13:07:26 -05:00
John Ericson
142f55457b Test against tests using Meson-built Nix 2024-11-04 12:17:44 -05:00
John Ericson
e1181d51ef
Merge pull request #11798 from obsidiansystems/meson-for-nixos-functional-tests
Meson for nixos functional tests
2024-11-04 11:18:11 -05:00
John Ericson
f018a0b0c8 Make functional tests on NixOS use Meson not Make
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-11-04 10:39:09 -05:00
John Ericson
f07aee934a Update docs in line of build system changes 2024-11-04 10:35:11 -05:00
Robert Hensing
c4f56cb995
Merge pull request #11494 from bryanhonof/bryanhonof.feat-mixenvironment-set-env
Add flag `set-env-var` to `MixEnvironment`, and rename old ones
2024-11-04 15:23:17 +01:00
Bryan Honof
c800f3fa93
chore: run formatters 2024-11-04 14:41:40 +01:00
Bryan Honof
affd2dbc6c
test(functional): add tests for new environment operation flags 2024-11-04 14:41:33 +01:00
Bryan Honof
0b790b4849
feat: add flag set-env-var to MixEnvironment 2024-11-04 14:02:29 +01:00
Eelco Dolstra
655bfa6b59
Merge pull request #11797 from nix-windows/windows-build/eval-error
Fix compilation of eval under Windows
2024-11-04 13:37:16 +01:00
Brian McKenna
d711c7e965 Fix compilation of eval under Windows 2024-11-04 19:32:41 +11:00
Brian McKenna
8ae5610c11 Set minimum Windows API to Windows 8
Anything less won't compile because we're using
GetCurrentThreadStackLimits from Windows 8.
2024-11-04 19:23:23 +11:00
John Ericson
30f4f21887
Merge pull request #11794 from nix-windows/windows-functional/nul-character
Rename nul.nar because nul is a special name in Windows
2024-11-03 20:45:35 -05:00
John Ericson
915cbe656e
Merge pull request #11795 from nix-windows/windows-build/nix-build-tmpdir-env-fix
Fix compilation of nix-build on Windows
2024-11-03 20:44:06 -05:00
Brian McKenna
7b7e8a3307 Fix compilation of nix-build on Windows 2024-11-04 11:53:49 +11:00
John Ericson
dd5a50d80e
Merge pull request #11792 from obsidiansystems/no-copy-functional-tests
No longer copy functional tests to the build dir
2024-11-03 17:40:32 -05:00
John Ericson
9d2ed0a7d3 No longer copy functional tests to the build dir
This should make `_NIX_TEST_ACCEPT=1` work again, fixing #11369.

Progress on #2503
2024-11-03 16:42:38 -05:00
Robert Hensing
efe2e42235
Merge pull request #11793 from fricklerhandwerk/add-link-string-context
docs: add links to string context documentation
2024-11-03 19:10:24 +01:00
Valentin Gagarin
14c8b08c86 docs: add links to string context documentation
operators are an everyday thing in the Nix language, and this page will
hopefully be consulted by many users.
string contexts are quite exotic, and not linking to the detailed
explanation will require readers to figure out manually what this is
about, or worse, skim over and run into problems later.
2024-11-03 12:42:32 +01:00
Brian McKenna
190d0d661e Rename nul.nar because nul is a special name in Windows
For example, we can't even clone the repository on Windows!

    error: invalid path 'tests/functional/nul.nar'
    fatal: unable to checkout working tree
2024-11-03 17:02:47 +11:00
Michael
55fe4ee4f3
doc/manual: Add 'Debugging Nix' section (#11637)
* doc/manual: Add 'Debugging Nix' section

This commit adds a new 'Debugging Nix' section to the Nix manual. It provides instructions on how to build Nix with debug symbols and how to debug the Nix binary using debuggers like `lldb`.

Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2024-11-01 19:42:34 +00:00
Bjørn Forsman
020dbac0e0
doc/rl-2.19: add entry for always-allow-substitutes option (#11775)
* doc/rl-2.19: add entry for always-allow-substitutes option

Fixes https://github.com/NixOS/nix/issues/9427.
2024-11-01 10:55:33 +00:00
Jörg Thalheim
2e5759e377
Merge pull request #11776 from NixOS/push-porpmpmkzuus
fix: make sure directory exists before using `ln`
2024-11-01 11:18:53 +01:00
Valentin Gagarin
c91c1cd3fd
Merge pull request #11400 from fricklerhandwerk/checklist-security-release
maintainers: add checklist for security releases
2024-10-31 18:35:44 +01:00
Valentin Gagarin
9bb153acb2 maintainers: add checklist for security releases
Co-Authored-By: Robert Hensing <robert@roberthensing.nl
Co-authored-by: Dan Baker <daniel.n.baker@gmail.com>
2024-10-31 18:34:19 +01:00
Pol Dellaiera
5f71ebb956 fix: make sure directory exists before using ln 2024-10-31 16:25:18 +01:00
Jörg Thalheim
0f59c2102e
Merge pull request #11770 from Jaculabilis/shellcheck
Expand shellcheck coverage in functional tests
2024-10-31 15:48:57 +01:00