lix/tests/functional
Artemis Tosini c03de0df62 gc: Find roots using libproc on Darwin
Previously, the garbage collector found runtime roots on Darwin by
shelling out to `lsof -n -w -F n` then parsing the result.
However, this requires an lsof binary and can be extremely slow.

The official Apple lsof returns in a reasonable amount of time,
about 250ms in my tests, but the lsof packaged in nixpkgs is quite slow,
taking about 40 seconds to run the command.

Using libproc directly is about the same speed as Apple lsof,
and allows us to reënable several tests that were disabled on Darwin.

Change-Id: Ifa0adda7984e13c15535693baba835aae79a3577
2024-04-25 23:24:21 -04:00
..
ca Add pre-commit checks 2024-03-29 22:57:40 -07:00
common gc: Find roots using libproc on Darwin 2024-04-25 23:24:21 -04:00
config Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dyn-drv Add pre-commit checks 2024-03-29 22:57:40 -07:00
flakes Add pre-commit checks 2024-03-29 22:57:40 -07:00
lang Rename some parse failure tests to parse-fail-* 2024-04-04 15:49:30 -07:00
nested-sandboxing Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
plugins meson: add missing tests: ca, dyn-drv, plugins, libstoreconsumer 2024-04-04 20:43:38 -06:00
repl_characterization Print top-level errors normally in nix repl 2024-04-09 08:34:40 -07:00
test-libstoreconsumer meson: add missing tests: ca, dyn-drv, plugins, libstoreconsumer 2024-04-04 20:43:38 -06:00
add.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
bad.tar.xz Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
bash-profile.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
big-derivation-attr.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
binary-cache-build-remote.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
binary-cache.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
brotli.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-delete.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-dry.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-hook-ca-fixed.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
build-hook-ca-floating.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-hook.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
build-remote-content-addressed-fixed.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-content-addressed-floating.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-input-addressed.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-after.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-fail-0.sh Merge pull request #9529 from wh0/patch-1 2024-03-04 07:11:25 +01:00
build-remote-trustless-should-pass-0.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-1.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-2.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless-should-pass-3.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote-trustless.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build-remote.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
build.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
ca-shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
case-hack.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
case.nar Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-refs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-refs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-reqs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check-reqs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
check.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
common.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
completions.sh Merge pull request #8817 from iFreilicht/flake-update-lock-overhaul 2024-03-25 17:36:24 -06:00
compression-levels.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
compute-levels.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
config.nix.in Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
config.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
db-migration.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
debugger.sh Merge pull request #9933 from pennae/debugger-fix 2024-03-04 08:57:44 +01:00
dependencies.builder0.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dependencies.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dependencies.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
derivation-json.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dummy Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
dump-db.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
eval-store.sh Merge pull request #9589 from obsidiansystems/floating-content-addressing-derivations-eval-store 2024-03-04 07:15:08 +01:00
eval.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
eval.sh Improve new CLI UX by supporting short -E flag for --expr 2024-03-24 21:17:51 -06:00
experimental-features.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export-graph.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export-graph.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
export.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
failing.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
fetchClosure.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
fetchGit.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchGitRefs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchGitSubmodules.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchMercurial.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchPath.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchTree-file.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fetchurl.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
filter-source.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
filter-source.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.builder1.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.builder2.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fixed.nix Merge pull request #9662 from shlevy/flat-fixed-references-assert 2024-03-04 07:50:02 +01:00
fixed.sh Merge pull request #9662 from shlevy/flat-fixed-references-assert 2024-03-04 07:50:02 +01:00
fmt.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
fmt.simple.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
function-trace.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
gc-auto.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-concurrent2.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
gc-non-blocking.sh Merge pull request #8544 from edolstra/handle-missing-gc-socket 2024-03-07 00:43:51 -07:00
gc-runtime.nix gc: Find roots using libproc on Darwin 2024-04-25 23:24:21 -04:00
gc-runtime.sh gc: Find roots using libproc on Darwin 2024-04-25 23:24:21 -04:00
gc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
hash-check.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
hash.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
hermetic.nix Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
ifd.nix Merge branch '2.18-maintenance' into ifd-buildStore-2.18 2024-01-11 07:21:16 -05:00
import-derivation.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
import-derivation.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-derivations.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-derivations.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
impure-eval.sh Merge pull request #4093 from matthewbauer/eval-system 2024-03-04 07:21:01 +01:00
init.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
install-darwin.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
lang-test-infra.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
lang.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
legacy-ssh-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
linux-sandbox-cert-test.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
linux-sandbox.sh Merge pull request #10456 from NixOS/fixpermdeniedbind 2024-04-11 15:43:58 +03:00
local-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
local.mk Allow dlopen of plugins to fail 2024-03-15 12:31:16 -07:00
logging.sh Merge pull request #9637 from 9999years/fix-logging-test-on-macos 2024-03-04 07:26:34 +01:00
meson.build Merge "meson: add missing tests: ca, dyn-drv, plugins, libstoreconsumer" into main 2024-04-06 01:05:09 +00:00
misc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
multiple-outputs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
multiple-outputs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nar-access.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
nar-access.sh Merge pull request #9288 from edolstra/fix-nar-access-test 2024-03-04 05:27:18 +01:00
nested-sandboxing.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-build-examples.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-build.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-channel.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
nix-collect-garbage-d.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-copy-ssh-common.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-copy-ssh-ng.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-copy-ssh.sh Merge pull request #9604 from obsidiansystems/test-substitute-on-destination 2024-03-07 03:34:00 +01:00
nix-daemon-untrusting.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-profile.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
nix-shell.sh Merge pull request #9930 from rvl/print-dev-env-unbound-variables 2024-03-04 08:51:49 +01:00
nix_path.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
optimise-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
output-normalization.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
parallel.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pass-as-file.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
path-from-hash-part.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
path.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
placeholders.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
plugins.sh meson: add missing tests: ca, dyn-drv, plugins, libstoreconsumer 2024-04-04 20:43:38 -06:00
post-hook.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pure-eval.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
pure-eval.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
push-to-store-old.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
push-to-store.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
read-only-store.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
readfile-context.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
readfile-context.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
recursive.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
recursive.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
referrers.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
remote-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
repair.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
repl.sh Pretty-print values in the REPL 2024-03-09 07:20:23 -07:00
restricted.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
restricted.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
search.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
search.sh Merge pull request #9481 from iFreilicht/disallow-nix-search-without-search-terms 2024-03-04 08:40:12 +01:00
secure-drv-outputs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
secure-drv-outputs.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
selfref-gc.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
shell-hello.nix Merge pull request #9648 from cole-h/nix-shell-ordering 2024-03-04 07:50:55 +01:00
shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
shell.sh Merge pull request #9648 from cole-h/nix-shell-ordering 2024-03-04 07:50:55 +01:00
shell.shebang.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
shell.shebang.rb Add pre-commit checks 2024-03-29 22:57:40 -07:00
shell.shebang.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
signing.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple-failing.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple.builder.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
simple.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
simple.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
ssh-relay.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
store-ping.sh Merge pull request #9632 from cole-h/nix-daemon-testing 2024-03-04 08:17:32 +01:00
structured-attrs-shell.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
structured-attrs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
structured-attrs.sh Merge pull request #9032 from Ma27/structured-attrs-env-vars 2024-03-07 10:46:47 +01:00
substitute-with-invalid-ca.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
suggestions.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
supplementary-groups.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
symlink-derivation.nix Merge pull request #10456 from NixOS/fixpermdeniedbind 2024-04-11 15:43:58 +03:00
tarball.sh Merge pull request #9225 from drupol/nixpkgs-pr-107251/make-gnutar-reproducible 2024-03-04 05:34:19 +01:00
test-infra.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
test-libstoreconsumer.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
test-repl-characterization.sh Implement a parser for a literate testing system for the repl 2024-03-14 14:30:38 -07:00
timeout.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
timeout.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
toString-path.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
undefined-variable.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs-migration.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.builder.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.nix Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
user-envs.sh Merge pull request #9257 from Artturin/nixenvjsondrvpath 2024-03-04 05:59:15 +01:00
why-depends.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00
zstd.sh Put functional tests in tests/functional 2023-12-01 12:06:43 -05:00