Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Upgrade to V8 13.4 #1070

Closed
wants to merge 15 commits into from
Closed

Conversation

bartlomieju
Copy link
Member

No description provided.

@littledivy
Copy link
Member

integration::error_callsite test is crashing:

(lldb) r
Process 33142 launched: '/Users/divy/gh/deno_core/target/debug/deps/deno_core_testing-7541c02de770e816' (arm64)

running 48 tests
Process 33142 stopped
* thread #7, name = 'integration::error_callsite', stop reason = EXC_BAD_ACCESS (code=1, address=0x692f4c13d)
    frame #0: 0x00000001010d8c68 deno_core_testing-7541c02de770e816`::Store() at ic.cc:1889:15 [opt]
warning: deno_core_testing-7541c02de770e816 was compiled with optimization - stepping may behave oddly; variables may not be available.
(lldb) bt
* thread #7, name = 'integration::error_callsite', stop reason = EXC_BAD_ACCESS (code=1, address=0x692f4c13d)
  * frame #0: 0x00000001010d8c68 deno_core_testing-7541c02de770e816`::Store() at ic.cc:1889:15 [opt]
    frame #1: 0x00000001010dc664 deno_core_testing-7541c02de770e816`::Runtime_StoreIC_Miss() at ic.cc:2931:1 [opt]
    frame #2: 0x0000000102269cd4 deno_core_testing-7541c02de770e816`Builtins_CEntry_Return1_ArgvOnStack_NoBuiltinExit + 84
    frame #3: 0x00000001023505c8 deno_core_testing-7541c02de770e816`Builtins_SetNamedPropertyHandler + 104
    frame #4: 0x00000001021ccc2c deno_core_testing-7541c02de770e816`Builtins_InterpreterEntryTrampoline + 268
    frame #5: 0x00000001021ccc2c deno_core_testing-7541c02de770e816`Builtins_InterpreterEntryTrampoline + 268
    frame #6: 0x00000001021ca90c deno_core_testing-7541c02de770e816`Builtins_JSEntryTrampoline + 172
    frame #7: 0x00000001021ca5b0 deno_core_testing-7541c02de770e816`Builtins_JSEntry + 176
    frame #8: 0x0000000100f88668 deno_core_testing-7541c02de770e816`::Invoke() at execution.cc:437:22 [opt]
    frame #9: 0x0000000100f88c48 deno_core_testing-7541c02de770e816`::CallScript() at execution.cc:537:10 [opt]
    frame #10: 0x0000000100e60d20 deno_core_testing-7541c02de770e816`::Run() at api.cc:2146:7 [opt]
    frame #11: 0x0000000100adc0e4 deno_core_testing-7541c02de770e816`v8::script::_$LT$impl$u20$v8..data..Script$GT$::run::_$u7b$$u7b$closure$u7d$$u7d$::h265b8e7f567deb42((null)={closure_env#0} @ 0x0000000170a3c378, sd=0x0000600001e5c1c0) at script.rs:99:29
    frame #12: 0x0000000100c91488 deno_core_testing-7541c02de770e816`v8::script::_$LT$impl$u20$v8..data..Script$GT$::run::h14df7b8fc407e277 [inlined] v8::scope::HandleScope$LT$$LP$$RP$$GT$::cast_local::h31d85e1d9a4e45dd(self=0x0000000170a3f020, f={closure_env#0} @ 0x0000000170a3c480) at scope.rs:253:21
    frame #13: 0x0000000100c911fc deno_core_testing-7541c02de770e816`v8::script::_$LT$impl$u20$v8..data..Script$GT$::run::h14df7b8fc407e277(self=0x0000000145041070, scope=0x0000000170a3f020) at script.rs:99:7
    frame #14: 0x0000000100a79340 deno_core_testing-7541c02de770e816`deno_core::runtime::bindings::initialize_primordials_and_infra::h03a192667052b649(scope=0x0000000170a3f020) at bindings.rs:324:5

@bartlomieju
Copy link
Member Author

Another backtrace:

r
Process 59323 launched: '/Users/ib/dev/deno_core/target/debug/deps/deno_core_testing-23e8e7339213e5fc' (arm64)

running 48 tests
Process 59323 stopped
* thread #11, name = 'integration::error_get_file_name_to_string', stop reason = EXC_BAD_ACCESS (code=1, address=0x18)
    frame #0: 0x00000001010969a4 deno_core_testing-23e8e7339213e5fc`::AllocateRaw() at read-only-spaces.cc:464:16 [opt]
warning: deno_core_testing-23e8e7339213e5fc was compiled with optimization - stepping may behave oddly; variables may not be available.
(lldb) bt
* thread #11, name = 'integration::error_get_file_name_to_string', stop reason = EXC_BAD_ACCESS (code=1, address=0x18)
  * frame #0: 0x00000001010969a4 deno_core_testing-23e8e7339213e5fc`::AllocateRaw() at read-only-spaces.cc:464:16 [opt]
    frame #1: 0x00000001010194bc deno_core_testing-23e8e7339213e5fc`::AllocateRawWithLightRetrySlowPath() at heap-allocator.cc:113:29 [opt]
    frame #2: 0x000000010101a234 deno_core_testing-23e8e7339213e5fc`::AllocateRawWithRetryOrFailSlowPath() at heap-allocator.cc:148:7 [opt]
    frame #3: 0x0000000100ff658c deno_core_testing-23e8e7339213e5fc`::NewOneByteInternalizedString() at factory-base.cc:769:7 [opt]
    frame #4: 0x0000000101367110 deno_core_testing-23e8e7339213e5fc`::LookupKey<v8::internal::SequentialStringKey<unsigned char>, v8::internal::Isolate>() at string-table.cc:448:8 [opt]
    frame #5: 0x0000000100e754ac deno_core_testing-23e8e7339213e5fc`::Internalize<v8::internal::Isolate>() at ast-value-factory.cc:377:14 [opt]
    frame #6: 0x000000010138fe44 deno_core_testing-23e8e7339213e5fc`::ParseProgram() at parser.cc:696:3 [opt]
    frame #7: 0x00000001013b7340 deno_core_testing-23e8e7339213e5fc`::ParseProgram() at parsing.cc:57:10 [opt]
    frame #8: 0x0000000100ee3c40 deno_core_testing-23e8e7339213e5fc`::CompileToplevel() at compiler.cc:1601:8 [opt]
    frame #9: 0x0000000100eeb51c deno_core_testing-23e8e7339213e5fc`::CompileScriptOnMainThread() at compiler.cc:3720:10 [opt]
    frame #10: 0x0000000100ee56b4 deno_core_testing-23e8e7339213e5fc`::GetSharedFunctionInfoForScriptImpl() at compiler.cc:4015:22 [opt]
    frame #11: 0x0000000100ee4fb8 deno_core_testing-23e8e7339213e5fc`::GetSharedFunctionInfoForScript() at compiler.cc:4047:10 [opt]
    frame #12: 0x0000000100e5ecc8 deno_core_testing-23e8e7339213e5fc`::CompileUnboundInternal() at api.cc:2623:27 [opt]
    frame #13: 0x0000000100e5efa0 deno_core_testing-23e8e7339213e5fc`::Compile() at api.cc:2653:7 [opt]
    frame #14: 0x0000000100e5f2fc deno_core_testing-23e8e7339213e5fc`::Compile() at api.cc:0 [opt]
    frame #15: 0x0000000100bde3c0 deno_core_testing-23e8e7339213e5fc`v8::script::_$LT$impl$u20$v8..data..Script$GT$::compile::_$u7b$$u7b$closure$u7d$$u7d$::h8472545b6ea9d3be(sd=0x00006000029241c0) at script.rs:68:9
    frame #16: 0x0000000100c07ae4 deno_core_testing-23e8e7339213e5fc`deno_core::runtime::bindings::initialize_primordials_and_infra::h6dce8c87eee1bed5 [inlined] v8::scope::HandleScope$LT$$LP$$RP$$GT$::cast_local::h06a4f64d99a7e6a4(self=0x000000017126f020, f={closure_env#0} @ 0x000000017126cc98) at scope.rs:253:21
    frame #17: 0x0000000100c07870 deno_core_testing-23e8e7339213e5fc`deno_core::runtime::bindings::initialize_primordials_and_infra::h6dce8c87eee1bed5 [inlined] v8::script::_$LT$impl$u20$v8..data..Script$GT$::compile::h9c186519c41ec646(scope=0x000000017126f020, source=Local<v8::data::String> @ 0x000000017126cc50, origin=Option<&v8::script::ScriptOrigin> @ 0x000000017126cc60) at script.rs:67:7
    frame #18: 0x0000000100c07854 deno_core_testing-23e8e7339213e5fc`deno_core::runtime::bindings::initialize_primordials_and_infra::h6dce8c87eee1bed5(scope=0x000000017126f020) at bindings.rs:322:18
    frame #19: 0x0000000100c6a1e0 deno_core_testing-23e8e7339213e5fc`deno_core::runtime::jsruntime::JsRuntime::new_inner::hca8c257385f2e691(options=RuntimeOptions @ 0x0000000171270b78, will_snapshot=true) at jsruntime.rs:1032:7
    frame #20: 0x0000000100c738dc deno_core_testing-23e8e7339213e5fc`deno_core::runtime::jsruntime::JsRuntimeForSnapshot::try_new::h7fa64b045d43037d(options=RuntimeOptions @ 0x0000000171271460) at jsruntime.rs:2114:19
    frame #21: 0x0000000100c736fc deno_core_testing-23e8e7339213e5fc`deno_core::runtime::jsruntime::JsRuntimeForSnapshot::new::haa5ab6bb609a4f15(options=<unavailable>) at jsruntime.rs:2095:11
    frame #22: 0x0000000100014f60 deno_core_testing-23e8e7339213e5fc`deno_core_testing::checkin::runner::snapshot::create_snapshot::h9bcf70395fd8dc9a at snapshot.rs:15:30
    frame #23: 0x00000001000db0c4 deno_core_testing-23e8e7339213e5fc`deno_core_testing::checkin::runner::create_runtime::h3abed92d66f2b589(parent=Option<deno_core_testing::checkin::runner::ops_worker::WorkerCloseWatcher> @ 0x0000000171271dd8, additional_extensions=Vec<deno_core::extensions::Extension, alloc::alloc::Global> @ 0x0000000171272048) at mod.rs:100:18
    frame #24: 0x00000001000be6d4 deno_core_testing-23e8e7339213e5fc`deno_core_testing::checkin::runner::testing::run_integration_test::h83897a78b6455a87(test=(data_ptr = "error_get_file_name_to_stringerror_get_script_name_or_source_urlimport_syncimport_sync_existingmain_module_handlermodule_typespending_unref_op_tlasmoke_testtimer_reftimer_ref_and_canceltimer_manyuser_breaks_promise_constructoruser_breaks_promise_specieswasm_importsworker_spawnworker_terminate_op", length = 29)) at testing.rs:53:5
    frame #25: 0x00000001000cf2ac deno_core_testing-23e8e7339213e5fc`deno_core_testing::integration::error_get_file_name_to_string::hae437a1e276e5f50 at lib.rs:30:11
    frame #26: 0x00000001000a5ff0 deno_core_testing-23e8e7339213e5fc`deno_core_testing::integration::error_get_file_name_to_string::_$u7b$$u7b$closure$u7d$$u7d$::h983e86931392938e((null)=0x00000001712727ee) at lib.rs:29:17
    frame #27: 0x000000010002ec20 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once::hdffbc75817a1f895((null)={closure_env#0} @ 0x00000001712727ee, (null)=<unavailable>) at function.rs:250:5
    frame #28: 0x0000000100124a90 deno_core_testing-23e8e7339213e5fc`test::__rust_begin_short_backtrace::ha74869ac477f01d4 [inlined] core::ops::function::FnOnce::call_once::h2dc2ae3d5deab128 at function.rs:250:5 [opt]
    frame #29: 0x0000000100124a88 deno_core_testing-23e8e7339213e5fc`test::__rust_begin_short_backtrace::ha74869ac477f01d4 at lib.rs:620:18 [opt]
    frame #30: 0x0000000100124304 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] test::run_test_in_process::_$u7b$$u7b$closure$u7d$$u7d$::h480e4aa17f895fab at lib.rs:643:60 [opt]
    frame #31: 0x00000001001242f8 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::he972b835bfbe1a74 at unwind_safe.rs:272:9 [opt]
    frame #32: 0x00000001001242f8 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] std::panicking::try::do_call::h6d242d7a00c26634 at panicking.rs:554:40 [opt]
    frame #33: 0x00000001001242f4 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] std::panicking::try::hb95de8c02276d3a3 at panicking.rs:518:19 [opt]
    frame #34: 0x00000001001242f4 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] std::panic::catch_unwind::ha1de2aaaa7ebc727 at panic.rs:345:14 [opt]
    frame #35: 0x00000001001242f4 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 [inlined] test::run_test_in_process::he8812b09a718bc7e at lib.rs:643:27 [opt]
    frame #36: 0x0000000100124230 deno_core_testing-23e8e7339213e5fc`test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h2a5b46f746d71bd1 at lib.rs:564:43 [opt]
    frame #37: 0x00000001000f4394 deno_core_testing-23e8e7339213e5fc`std::sys::backtrace::__rust_begin_short_backtrace::h8712ad22d62bd1c4 [inlined] test::run_test::_$u7b$$u7b$closure$u7d$$u7d$::h61d08600987824eb at lib.rs:594:41 [opt]
    frame #38: 0x00000001000f430c deno_core_testing-23e8e7339213e5fc`std::sys::backtrace::__rust_begin_short_backtrace::h8712ad22d62bd1c4 at backtrace.rs:154:18 [opt]
    frame #39: 0x00000001000f74fc deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::h4a31c94c016920f8 at mod.rs:522:17 [opt]
    frame #40: 0x00000001000f74f4 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::hb12f0f3e20fc7e49 at unwind_safe.rs:272:9 [opt]
    frame #41: 0x00000001000f74f4 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] std::panicking::try::do_call::hc89f2e3a18dc8949 at panicking.rs:554:40 [opt]
    frame #42: 0x00000001000f74f4 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] std::panicking::try::h155ce7ca424a9125 at panicking.rs:518:19 [opt]
    frame #43: 0x00000001000f74f4 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] std::panic::catch_unwind::h0fce6398764430bd at panic.rs:345:14 [opt]
    frame #44: 0x00000001000f74f4 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f [inlined] std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::h38c8d2c04ffb7937 at mod.rs:521:30 [opt]
    frame #45: 0x00000001000f7480 deno_core_testing-23e8e7339213e5fc`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h28859a09daa84c0f at function.rs:250:5 [opt]
    frame #46: 0x0000000102500c14 deno_core_testing-23e8e7339213e5fc`std::sys::pal::unix::thread::Thread::new::thread_start::hd88bc8e95f2ca709 [inlined] _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h2fa7f2d055a8b06a at boxed.rs:2231:9 [opt]
    frame #47: 0x0000000102500c08 deno_core_testing-23e8e7339213e5fc`std::sys::pal::unix::thread::Thread::new::thread_start::hd88bc8e95f2ca709 [inlined] _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h53b33f8374f8384c at boxed.rs:2231:9 [opt]
    frame #48: 0x0000000102500c04 deno_core_testing-23e8e7339213e5fc`std::sys::pal::unix::thread::Thread::new::thread_start::hd88bc8e95f2ca709 at thread.rs:105:17 [opt]
    frame #49: 0x0000000184e8206c libsystem_pthread.dylib`_pthread_start + 148

@codecov-commenter
Copy link

codecov-commenter commented Feb 7, 2025

Codecov Report

Attention: Patch coverage is 96.92308% with 2 lines in your changes missing coverage. Please review.

Project coverage is 81.47%. Comparing base (0c7f83e) to head (62ad979).
Report is 252 commits behind head on main.

Files with missing lines Patch % Lines
ops/op2/dispatch_fast.rs 95.83% 1 Missing ⚠️
serde_v8/de.rs 94.11% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1070      +/-   ##
==========================================
+ Coverage   81.43%   81.47%   +0.03%     
==========================================
  Files          97      101       +4     
  Lines       23877    27966    +4089     
==========================================
+ Hits        19445    22784    +3339     
- Misses       4432     5182     +750     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@@ -0,0 +1,2 @@
[env]
RUST_TEST_THREADS = "1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we get random crashes (related to shared ro heap) without it. like this one:

test integration::dyn_import_circular ... FAILED


#
# Fatal error in , line 0
# Check failed: IsFreeSpaceOrFiller(filler).
#
#
#
#FailureMessage Object: 0x7f3d28bfbba0
==== C stack trace ===============================

Can only use one JsRuntime at a time.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmm should this be a blocker to landing it? seems bad.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, and i think this is partly the same reason we can't have TSC snapshot anymore right?

Comment on lines +29 to +48
/*
test(function testWithNul() {
// deno-fmt-ignore
const fixture1 = [
0xf0, 0x9d, 0x93, 0xbd,
0xf0, 0x9d, 0x93, 0xae,
0xf0, 0x9d, 0x94, 0x81,
0xf0, 0x9d, 0x93, 0xbd,
0
];
const res = Array.from(Deno.core.encode("𝓽𝓮𝔁𝓽\0"));
console.log(res);
assertArrayEquals(
res,
fixture1,
);
assertEquals(Deno.core.decode(new Uint8Array(fixture1)), "𝓽𝓮𝔁𝓽\0");
});
*/

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test should be uncommented, not removed

serde_v8/de.rs Outdated
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should revert changes to the string handling for now

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there is a missing export in rusty_v8?

error[E0432]: unresolved import `v8::WriteOptions`
  --> core/runtime/ops.rs:16:5
   |
16 | use v8::WriteOptions;
   |     ^^^^^^^^^^^^^^^^ no `WriteOptions` in the root

@littledivy
Copy link
Member

littledivy commented Feb 7, 2025

apart from using --test-threads=1, the crash is also fixed by moving snapshot generation for tests into their own process. here's a quick hacky fix (doesn't work on Windows)

diff --git a/testing/checkin/runner/mod.rs b/testing/checkin/runner/mod.rs
index f136a8b..a74a021 100644
--- a/testing/checkin/runner/mod.rs
+++ b/testing/checkin/runner/mod.rs
@@ -24,6 +24,7 @@ use std::sync::mpsc::channel;
 use std::sync::mpsc::RecvTimeoutError;
 use std::sync::Arc;
 use std::sync::Mutex;
+use std::sync::OnceLock;
 use std::time::Duration;

 mod extensions;
@@ -92,13 +93,27 @@ impl TestData {
   }
 }

+static SNAPSHOT: OnceLock<&'static [u8]> = OnceLock::new();
+
 pub fn create_runtime(
   parent: Option<WorkerCloseWatcher>,
   additional_extensions: Vec<Extension>,
 ) -> (JsRuntime, WorkerHostSide) {
   let (worker, worker_host_side) = worker_create(parent);
-  let snapshot = snapshot::create_snapshot();
-  let snapshot = Box::leak(snapshot);
+
+  let snapshot = SNAPSHOT.get_or_init(|| {
+    match fork::fork() {
+      Ok(fork::Fork::Child) => {
+        let snapshot = snapshot::create_snapshot();
+        std::fs::write("CLI_SNAPSHOT.bin", &snapshot).unwrap();
+      }
+      Ok(fork::Fork::Parent(pid)) => fork::waitpid(pid).unwrap(),
+      e => panic!("Failed to fork"),
+    };
+    let snapshot = std::fs::read("CLI_SNAPSHOT.bin").unwrap();
+    Box::leak(snapshot.into_boxed_slice())
+  });
+
   let mut runtime =
     create_runtime_from_snapshot(snapshot, false, additional_extensions);
   runtime.op_state().borrow_mut().put(worker);

@@ -0,0 +1,2 @@
[env]
RUST_TEST_THREADS = "1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can use cargo-nextest to run each test in a separate process.

@@ -97,6 +97,24 @@ pub fn create_runtime(
additional_extensions: Vec<Extension>,
) -> (JsRuntime, WorkerHostSide) {
let (worker, worker_host_side) = worker_create(parent);

/* TODO: remove, this is a hack
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same nextest deal here. unless we get groups landed, but this would still fail in configs without groups.

@bartlomieju
Copy link
Member Author

Closing in favor of #1076

@bartlomieju bartlomieju deleted the upgrade_v8 branch February 12, 2025 09:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants