diff options
author | Vincent Ambo <mail@tazj.in> | 2023-03-11T22·39+0300 |
---|---|---|
committer | tazjin <tazjin@tvl.su> | 2023-03-13T20·30+0000 |
commit | b3f8d66a6acc4428cb963edda9db20c624dcebdd (patch) | |
tree | 5f4c9520a77ee6d753a1dcdfc4fbf7654071c276 | |
parent | 94513525b939a13fb19330fe74dd9f6860a854fe (diff) |
chore(tvix/eval): prune some dependencies & features r/5988
* We no longer need backtrace-on-stack-overflow, as we no longer overflow the stack with the recent eval refactorings. This was weird voodoo anyways, introduced earlier to debug some cases where stack overflows occured. * default features of genawaiter crate are not needed, as we don't use their proc macros Change-Id: I346fc5a18d7f117ee805909a8be8f535b96be76c Reviewed-on: https://cl.tvl.fyi/c/depot/+/8263 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>
-rw-r--r-- | tvix/Cargo.lock | 151 | ||||
-rw-r--r-- | tvix/Cargo.nix | 457 | ||||
-rw-r--r-- | tvix/eval/Cargo.toml | 8 | ||||
-rw-r--r-- | tvix/eval/src/vm/mod.rs | 9 |
4 files changed, 28 insertions, 597 deletions
diff --git a/tvix/Cargo.lock b/tvix/Cargo.lock index 3381f6a8d485..278f811ecfa5 100644 --- a/tvix/Cargo.lock +++ b/tvix/Cargo.lock @@ -3,21 +3,6 @@ version = 3 [[package]] -name = "addr2line" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] name = "aho-corasick" version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -146,32 +131,6 @@ dependencies = [ ] [[package]] -name = "backtrace" -version = "0.3.67" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "backtrace-on-stack-overflow" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d51cef6be4d7cb70701727ca9662b5b428833918c13c4095220763ba385ac9bd" -dependencies = [ - "backtrace", - "libc", - "nix 0.23.2", -] - -[[package]] name = "base64" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -364,7 +323,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8" dependencies = [ "heck", - "proc-macro-error 1.0.4", + "proc-macro-error", "proc-macro2 1.0.50", "quote 1.0.23", "syn 1.0.107", @@ -832,8 +791,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c86bd0361bcbde39b13475e6e36cb24c329964aa2611be285289d1e4b751c1a0" dependencies = [ "genawaiter-macro", - "genawaiter-proc-macro", - "proc-macro-hack", ] [[package]] @@ -843,19 +800,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b32dfe1fdfc0bbde1f22a5da25355514b5e450c33a6af6770884c8750aedfbc" [[package]] -name = "genawaiter-proc-macro" -version = "0.99.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784f84eebc366e15251c4a8c3acee82a6a6f427949776ecb88377362a9621738" -dependencies = [ - "proc-macro-error 0.4.12", - "proc-macro-hack", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", -] - -[[package]] name = "generic-array" version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -886,12 +830,6 @@ dependencies = [ ] [[package]] -name = "gimli" -version = "0.27.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "221996f774192f0f718773def8201c4ae31f02616a54ccfc2d358bb0e5cefdec" - -[[package]] name = "glob" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1276,15 +1214,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] -name = "miniz_oxide" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" -dependencies = [ - "adler", -] - -[[package]] name = "mio" version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1313,19 +1242,6 @@ dependencies = [ [[package]] name = "nix" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" -dependencies = [ - "bitflags", - "cc", - "cfg-if", - "libc", - "memoffset 0.6.5", -] - -[[package]] -name = "nix" version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" @@ -1398,15 +1314,6 @@ dependencies = [ ] [[package]] -name = "object" -version = "0.30.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" -dependencies = [ - "memchr", -] - -[[package]] name = "once_cell" version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1582,24 +1489,11 @@ dependencies = [ [[package]] name = "proc-macro-error" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18f33027081eba0a6d8aba6d1b1c3a3be58cbb12106341c2d5759fcd9b5277e7" -dependencies = [ - "proc-macro-error-attr 0.4.12", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", - "version_check", -] - -[[package]] -name = "proc-macro-error" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ - "proc-macro-error-attr 1.0.4", + "proc-macro-error-attr", "proc-macro2 1.0.50", "quote 1.0.23", "syn 1.0.107", @@ -1608,19 +1502,6 @@ dependencies = [ [[package]] name = "proc-macro-error-attr" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a5b4b77fdb63c1eca72173d68d24501c54ab1269409f6b672c85deb18af69de" -dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", - "syn-mid", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" @@ -1631,12 +1512,6 @@ dependencies = [ ] [[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" - -[[package]] name = "proc-macro2" version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1945,12 +1820,6 @@ dependencies = [ ] [[package]] -name = "rustc-demangle" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" - -[[package]] name = "rustc-hash" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2002,7 +1871,7 @@ dependencies = [ "libc", "log", "memchr", - "nix 0.25.1", + "nix", "radix_trie", "scopeguard", "unicode-segmentation", @@ -2252,17 +2121,6 @@ dependencies = [ ] [[package]] -name = "syn-mid" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baa8e7560a164edb1621a55d18a0c59abf49d360f47aa7b821061dd7eea7fac9" -dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", -] - -[[package]] name = "sync_wrapper" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2326,7 +2184,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e45b7bf6e19353ddd832745c8fcf77a17a93171df7151187f26623f2b75b5b26" dependencies = [ "cfg-if", - "proc-macro-error 1.0.4", + "proc-macro-error", "proc-macro2 1.0.50", "quote 1.0.23", "syn 1.0.107", @@ -2736,7 +2594,6 @@ dependencies = [ name = "tvix-eval" version = "0.1.0" dependencies = [ - "backtrace-on-stack-overflow", "codemap", "codemap-diagnostic", "criterion", diff --git a/tvix/Cargo.nix b/tvix/Cargo.nix index 363db976dd6c..3dcb716d890c 100644 --- a/tvix/Cargo.nix +++ b/tvix/Cargo.nix @@ -129,49 +129,6 @@ rec { # inject test dependencies into the build crates = { - "addr2line" = rec { - crateName = "addr2line"; - version = "0.19.0"; - edition = "2015"; - sha256 = "15ywmr5wx22q69ffnn79qp65ir5p1x0k2q06plcpv6v74c5xcvx7"; - dependencies = [ - { - name = "gimli"; - packageId = "gimli"; - usesDefaultFeatures = false; - features = [ "read" ]; - } - ]; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "cpp_demangle" = [ "dep:cpp_demangle" ]; - "default" = [ "rustc-demangle" "cpp_demangle" "std-object" "fallible-iterator" "smallvec" ]; - "fallible-iterator" = [ "dep:fallible-iterator" ]; - "object" = [ "dep:object" ]; - "rustc-demangle" = [ "dep:rustc-demangle" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "gimli/rustc-dep-of-std" ]; - "smallvec" = [ "dep:smallvec" ]; - "std" = [ "gimli/std" ]; - "std-object" = [ "std" "object" "object/std" "object/compression" "gimli/endian-reader" ]; - }; - }; - "adler" = rec { - crateName = "adler"; - version = "1.0.2"; - edition = "2015"; - sha256 = "1zim79cvzd5yrkzl3nyfx0avijwgk9fqv3yrscdy1cc79ih02qpj"; - authors = [ - "Jonas Schievink <jonasschievink@gmail.com>" - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "std" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - }; - }; "aho-corasick" = rec { crateName = "aho-corasick"; version = "0.7.20"; @@ -544,87 +501,6 @@ rec { ]; }; - "backtrace" = rec { - crateName = "backtrace"; - version = "0.3.67"; - edition = "2018"; - sha256 = "1jk48laqafvbyc0mn1v0didk307qc0zji3z5jcq2lpqqdmnkfg93"; - authors = [ - "The Rust Project Developers" - ]; - dependencies = [ - { - name = "addr2line"; - packageId = "addr2line"; - usesDefaultFeatures = false; - } - { - name = "cfg-if"; - packageId = "cfg-if"; - } - { - name = "libc"; - packageId = "libc"; - usesDefaultFeatures = false; - } - { - name = "miniz_oxide"; - packageId = "miniz_oxide"; - usesDefaultFeatures = false; - } - { - name = "object"; - packageId = "object"; - usesDefaultFeatures = false; - features = [ "read_core" "elf" "macho" "pe" "unaligned" "archive" ]; - } - { - name = "rustc-demangle"; - packageId = "rustc-demangle"; - } - ]; - buildDependencies = [ - { - name = "cc"; - packageId = "cc"; - } - ]; - features = { - "cpp_demangle" = [ "dep:cpp_demangle" ]; - "default" = [ "std" ]; - "rustc-serialize" = [ "dep:rustc-serialize" ]; - "serde" = [ "dep:serde" ]; - "serialize-rustc" = [ "rustc-serialize" ]; - "serialize-serde" = [ "serde" ]; - "verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" ]; - "winapi" = [ "dep:winapi" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "backtrace-on-stack-overflow" = rec { - crateName = "backtrace-on-stack-overflow"; - version = "0.2.0"; - edition = "2018"; - sha256 = "1gf9b8wblqq74aal0g6130wq6a5lnmi9dji72xq71jypwimyy76m"; - authors = [ - "Aleksey Kladov <aleksey.kladov@gmail.com>" - ]; - dependencies = [ - { - name = "backtrace"; - packageId = "backtrace"; - } - { - name = "libc"; - packageId = "libc"; - } - { - name = "nix"; - packageId = "nix 0.23.2"; - } - ]; - - }; "base64 0.10.1" = rec { crateName = "base64"; version = "0.10.1"; @@ -1118,7 +994,7 @@ rec { } { name = "proc-macro-error"; - packageId = "proc-macro-error 1.0.4"; + packageId = "proc-macro-error"; } { name = "proc-macro2"; @@ -2336,16 +2212,6 @@ rec { name = "genawaiter-macro"; packageId = "genawaiter-macro"; } - { - name = "genawaiter-proc-macro"; - packageId = "genawaiter-proc-macro"; - optional = true; - } - { - name = "proc-macro-hack"; - packageId = "proc-macro-hack"; - optional = true; - } ]; features = { "default" = [ "proc_macro" ]; @@ -2355,7 +2221,6 @@ rec { "proc-macro-hack" = [ "dep:proc-macro-hack" ]; "proc_macro" = [ "genawaiter-proc-macro" "proc-macro-hack" "genawaiter-macro/proc_macro" ]; }; - resolvedDefaultFeatures = [ "default" "genawaiter-proc-macro" "proc-macro-hack" "proc_macro" ]; }; "genawaiter-macro" = rec { crateName = "genawaiter-macro"; @@ -2366,41 +2231,6 @@ rec { "Devin R <devin.ragotzy@gmail.com>" ]; features = { }; - resolvedDefaultFeatures = [ "proc_macro" ]; - }; - "genawaiter-proc-macro" = rec { - crateName = "genawaiter-proc-macro"; - version = "0.99.1"; - edition = "2018"; - sha256 = "0f0pcaln4wrpi35nwxs9g516ysiax373m32a3hjiavinpkp88kvq"; - procMacro = true; - authors = [ - "Devin R <devin.ragotzy@gmail.com>" - ]; - dependencies = [ - { - name = "proc-macro-error"; - packageId = "proc-macro-error 0.4.12"; - } - { - name = "proc-macro-hack"; - packageId = "proc-macro-hack"; - } - { - name = "proc-macro2"; - packageId = "proc-macro2 1.0.50"; - } - { - name = "quote"; - packageId = "quote 1.0.23"; - } - { - name = "syn"; - packageId = "syn 1.0.107"; - features = [ "visit-mut" "full" ]; - } - ]; - features = { }; }; "generic-array 0.12.4" = rec { crateName = "generic-array"; @@ -2485,27 +2315,6 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "gimli" = rec { - crateName = "gimli"; - version = "0.27.1"; - edition = "2018"; - sha256 = "1v7xrvjv12rm5pycqm3ac411zqsa3hhgipkkhxqhybqrfkvrc692"; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "read" "write" "std" "fallible-iterator" "endian-reader" ]; - "endian-reader" = [ "read" "stable_deref_trait" ]; - "fallible-iterator" = [ "dep:fallible-iterator" ]; - "indexmap" = [ "dep:indexmap" ]; - "read" = [ "read-core" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" ]; - "stable_deref_trait" = [ "dep:stable_deref_trait" ]; - "std" = [ "fallible-iterator/std" "stable_deref_trait/std" ]; - "write" = [ "indexmap" ]; - }; - resolvedDefaultFeatures = [ "read" "read-core" ]; - }; "glob" = rec { crateName = "glob"; version = "0.3.1"; @@ -3618,32 +3427,6 @@ rec { ]; }; - "miniz_oxide" = rec { - crateName = "miniz_oxide"; - version = "0.6.2"; - edition = "2018"; - sha256 = "1yp8z6yll5ypz1ldmgnv7zi0r78kbvmqmn2mii77jzmk5069axdj"; - authors = [ - "Frommi <daniil.liferenko@gmail.com>" - "oyvindln <oyvindln@users.noreply.github.com>" - ]; - dependencies = [ - { - name = "adler"; - packageId = "adler"; - usesDefaultFeatures = false; - } - ]; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "with-alloc" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler/rustc-dep-of-std" ]; - "simd" = [ "simd-adler32" ]; - "simd-adler32" = [ "dep:simd-adler32" ]; - }; - }; "mio" = rec { crateName = "mio"; version = "0.8.5"; @@ -3716,44 +3499,7 @@ rec { ]; }; - "nix 0.23.2" = rec { - crateName = "nix"; - version = "0.23.2"; - edition = "2018"; - sha256 = "0p5kxhm5d8lry0szqbsllpcb5i3z7lg1dkglw0ni2l011b090dwg"; - authors = [ - "The nix-rust Project Developers" - ]; - dependencies = [ - { - name = "bitflags"; - packageId = "bitflags"; - } - { - name = "cfg-if"; - packageId = "cfg-if"; - } - { - name = "libc"; - packageId = "libc"; - features = [ "extra_traits" ]; - } - { - name = "memoffset"; - packageId = "memoffset 0.6.5"; - target = { target, features }: (!("redox" == target."os")); - } - ]; - buildDependencies = [ - { - name = "cc"; - packageId = "cc"; - target = { target, features }: ("dragonfly" == target."os"); - } - ]; - - }; - "nix 0.25.1" = rec { + "nix" = rec { crateName = "nix"; version = "0.25.1"; edition = "2018"; @@ -3978,43 +3724,6 @@ rec { ]; }; - "object" = rec { - crateName = "object"; - version = "0.30.3"; - edition = "2018"; - sha256 = "0fdl7qjsz1j9kl3j7f4656fswzrqpyj2kgaizhknmjrx7mfjd1pa"; - dependencies = [ - { - name = "memchr"; - packageId = "memchr"; - usesDefaultFeatures = false; - } - ]; - features = { - "all" = [ "read" "write" "std" "compression" "wasm" ]; - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "compression" = [ "flate2" "std" ]; - "core" = [ "dep:core" ]; - "crc32fast" = [ "dep:crc32fast" ]; - "default" = [ "read" "compression" ]; - "doc" = [ "read_core" "write_std" "std" "compression" "archive" "coff" "elf" "macho" "pe" "wasm" ]; - "flate2" = [ "dep:flate2" ]; - "hashbrown" = [ "dep:hashbrown" ]; - "indexmap" = [ "dep:indexmap" ]; - "pe" = [ "coff" ]; - "read" = [ "read_core" "archive" "coff" "elf" "macho" "pe" "unaligned" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" "alloc" "memchr/rustc-dep-of-std" ]; - "std" = [ "memchr/std" ]; - "unstable-all" = [ "all" "unstable" "xcoff" ]; - "wasm" = [ "wasmparser" ]; - "wasmparser" = [ "dep:wasmparser" ]; - "write" = [ "write_std" "coff" "elf" "macho" "pe" ]; - "write_core" = [ "crc32fast" "indexmap" "hashbrown" ]; - "write_std" = [ "write_core" "std" "indexmap/std" "crc32fast/std" ]; - }; - resolvedDefaultFeatures = [ "archive" "coff" "elf" "macho" "pe" "read_core" "unaligned" ]; - }; "once_cell" = rec { crateName = "once_cell"; version = "1.17.0"; @@ -4451,43 +4160,7 @@ rec { "verbatim" = [ "syn/parsing" ]; }; }; - "proc-macro-error 0.4.12" = rec { - crateName = "proc-macro-error"; - version = "0.4.12"; - edition = "2018"; - sha256 = "1rvpaadwv7vmsp142qqh2axqrr9v78f1nvdsi9nhmfhy10kk1wqq"; - authors = [ - "CreepySkeleton <creepy-skeleton@yandex.ru>" - ]; - dependencies = [ - { - name = "proc-macro-error-attr"; - packageId = "proc-macro-error-attr 0.4.12"; - } - { - name = "proc-macro2"; - packageId = "proc-macro2 1.0.50"; - } - { - name = "quote"; - packageId = "quote 1.0.23"; - } - { - name = "syn"; - packageId = "syn 1.0.107"; - usesDefaultFeatures = false; - features = [ "derive" "parsing" "proc-macro" "printing" ]; - } - ]; - buildDependencies = [ - { - name = "version_check"; - packageId = "version_check"; - } - ]; - - }; - "proc-macro-error 1.0.4" = rec { + "proc-macro-error" = rec { crateName = "proc-macro-error"; version = "1.0.4"; edition = "2018"; @@ -4498,7 +4171,7 @@ rec { dependencies = [ { name = "proc-macro-error-attr"; - packageId = "proc-macro-error-attr 1.0.4"; + packageId = "proc-macro-error-attr"; } { name = "proc-macro2"; @@ -4528,44 +4201,7 @@ rec { }; resolvedDefaultFeatures = [ "default" "syn" "syn-error" ]; }; - "proc-macro-error-attr 0.4.12" = rec { - crateName = "proc-macro-error-attr"; - version = "0.4.12"; - edition = "2018"; - sha256 = "1pk9mwcfnpf8favgc2cl4sqlmi818p96hg8pfb51wg5nzmvlnnwa"; - procMacro = true; - authors = [ - "CreepySkeleton <creepy-skeleton@yandex.ru>" - ]; - dependencies = [ - { - name = "proc-macro2"; - packageId = "proc-macro2 1.0.50"; - } - { - name = "quote"; - packageId = "quote 1.0.23"; - } - { - name = "syn"; - packageId = "syn 1.0.107"; - usesDefaultFeatures = false; - features = [ "derive" "parsing" "proc-macro" "printing" ]; - } - { - name = "syn-mid"; - packageId = "syn-mid"; - } - ]; - buildDependencies = [ - { - name = "version_check"; - packageId = "version_check"; - } - ]; - - }; - "proc-macro-error-attr 1.0.4" = rec { + "proc-macro-error-attr" = rec { crateName = "proc-macro-error-attr"; version = "1.0.4"; edition = "2018"; @@ -4592,17 +4228,6 @@ rec { ]; }; - "proc-macro-hack" = rec { - crateName = "proc-macro-hack"; - version = "0.5.20+deprecated"; - edition = "2018"; - sha256 = "0s402hmcs3k9nd6rlp07zkr1lz7yimkmcwcbgnly2zr44wamwdyw"; - procMacro = true; - authors = [ - "David Tolnay <dtolnay@gmail.com>" - ]; - - }; "proc-macro2 0.4.30" = rec { crateName = "proc-macro2"; version = "0.4.30"; @@ -5470,20 +5095,6 @@ rec { "serde1" = [ "serde" "text-size/serde" ]; }; }; - "rustc-demangle" = rec { - crateName = "rustc-demangle"; - version = "0.1.21"; - edition = "2015"; - sha256 = "0hn3xyd2n3bg3jnc5a5jbzll32n4r5a65bqzs287l30m5c53xw3y"; - authors = [ - "Alex Crichton <alex@alexcrichton.com>" - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - }; - }; "rustc-hash" = rec { crateName = "rustc-hash"; version = "1.1.0"; @@ -5701,7 +5312,7 @@ rec { } { name = "nix"; - packageId = "nix 0.25.1"; + packageId = "nix"; usesDefaultFeatures = false; target = { target, features }: (target."unix" or false); features = [ "fs" "ioctl" "poll" "signal" "term" ]; @@ -6425,36 +6036,6 @@ rec { }; resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "quote" "visit" "visit-mut" ]; }; - "syn-mid" = rec { - crateName = "syn-mid"; - version = "0.5.3"; - edition = "2018"; - sha256 = "1jgslzpdf78646wafyplc39lkgwsqnh1hpd544bdnkhn19bfga5s"; - authors = [ - "Taiki Endo <te316e89@gmail.com>" - ]; - dependencies = [ - { - name = "proc-macro2"; - packageId = "proc-macro2 1.0.50"; - usesDefaultFeatures = false; - } - { - name = "quote"; - packageId = "quote 1.0.23"; - usesDefaultFeatures = false; - } - { - name = "syn"; - packageId = "syn 1.0.107"; - usesDefaultFeatures = false; - features = [ "parsing" "printing" "derive" ]; - } - ]; - features = { - "clone-impls" = [ "syn/clone-impls" ]; - }; - }; "sync_wrapper" = rec { crateName = "sync_wrapper"; version = "0.1.2"; @@ -6609,7 +6190,7 @@ rec { } { name = "proc-macro-error"; - packageId = "proc-macro-error 1.0.4"; + packageId = "proc-macro-error"; } { name = "proc-macro2"; @@ -8045,6 +7626,10 @@ rec { packageId = "dirs"; } { + name = "lazy_static"; + packageId = "lazy_static"; + } + { name = "nix-compat"; packageId = "nix-compat"; } @@ -8053,6 +7638,10 @@ rec { packageId = "rustyline"; } { + name = "serde_json"; + packageId = "serde_json"; + } + { name = "smol_str"; packageId = "smol_str"; } @@ -8061,6 +7650,10 @@ rec { packageId = "ssri"; } { + name = "tempfile"; + packageId = "tempfile"; + } + { name = "thiserror"; packageId = "thiserror"; } @@ -8088,11 +7681,6 @@ rec { libName = "tvix_eval"; dependencies = [ { - name = "backtrace-on-stack-overflow"; - packageId = "backtrace-on-stack-overflow"; - optional = true; - } - { name = "codemap"; packageId = "codemap"; } @@ -8107,6 +7695,7 @@ rec { { name = "genawaiter"; packageId = "genawaiter"; + usesDefaultFeatures = false; } { name = "imbl"; @@ -8205,13 +7794,11 @@ rec { ]; features = { "arbitrary" = [ "proptest" "test-strategy" "imbl/proptest" ]; - "backtrace-on-stack-overflow" = [ "dep:backtrace-on-stack-overflow" ]; - "backtrace_overflow" = [ "backtrace-on-stack-overflow" ]; - "default" = [ "impure" "arbitrary" "nix_tests" "backtrace_overflow" ]; + "default" = [ "impure" "arbitrary" "nix_tests" ]; "proptest" = [ "dep:proptest" ]; "test-strategy" = [ "dep:test-strategy" ]; }; - resolvedDefaultFeatures = [ "arbitrary" "backtrace-on-stack-overflow" "backtrace_overflow" "default" "impure" "nix_tests" "proptest" "test-strategy" ]; + resolvedDefaultFeatures = [ "arbitrary" "default" "impure" "nix_tests" "proptest" "test-strategy" ]; }; "tvix-eval-builtin-macros" = rec { crateName = "tvix-eval-builtin-macros"; diff --git a/tvix/eval/Cargo.toml b/tvix/eval/Cargo.toml index 6bb68834ab93..e59249f1e70a 100644 --- a/tvix/eval/Cargo.toml +++ b/tvix/eval/Cargo.toml @@ -9,12 +9,11 @@ edition = "2021" name = "tvix_eval" [dependencies] -backtrace-on-stack-overflow = { version = "0.2.0", optional = true } builtin-macros = { path = "./builtin-macros", package = "tvix-eval-builtin-macros" } codemap = "0.1.3" codemap-diagnostic = "0.1.1" dirs = "4.0.0" -genawaiter = "0.99.1" +genawaiter = { version = "0.99.1", default_features = false } imbl = { version = "2.0", features = [ "serde" ] } lazy_static = "1.4.0" lexical-core = { version = "0.8.5", features = ["format", "parse-floats"] } @@ -44,7 +43,7 @@ git = "https://github.com/JamesGuthrie/test-generator.git" rev = "82e799979980962aec1aa324ec6e0e4cad781f41" [features] -default = ["impure", "arbitrary", "nix_tests", "backtrace_overflow"] +default = ["impure", "arbitrary", "nix_tests"] # Enables running the Nix language test suite from the original C++ # Nix implementation (at version 2.3) against Tvix. @@ -56,9 +55,6 @@ impure = [] # Enables Arbitrary impls for internal types (required to run tests) arbitrary = ["proptest", "test-strategy", "imbl/proptest"] -# For debugging use only; not appropriate for production use. -backtrace_overflow = ["backtrace-on-stack-overflow"] - [[bench]] name = "eval" harness = false diff --git a/tvix/eval/src/vm/mod.rs b/tvix/eval/src/vm/mod.rs index ca974dff1262..6ecd264d36a7 100644 --- a/tvix/eval/src/vm/mod.rs +++ b/tvix/eval/src/vm/mod.rs @@ -229,15 +229,6 @@ impl<'o> VM<'o> { globals: Rc<GlobalsMap>, reasonable_span: LightSpan, ) -> Self { - // Backtrace-on-stack-overflow is some seriously weird voodoo and - // very unsafe. This double-guard prevents it from accidentally - // being enabled on release builds. - #[cfg(debug_assertions)] - #[cfg(feature = "backtrace_overflow")] - unsafe { - backtrace_on_stack_overflow::enable(); - }; - Self { nix_search_path, io_handle, |