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

Incompatibility with @swc/core@>=1.3.57 #217

Closed
ph-fritsche opened this issue Jun 18, 2023 · 1 comment
Closed

Incompatibility with @swc/core@>=1.3.57 #217

ph-fritsche opened this issue Jun 18, 2023 · 1 comment

Comments

@ph-fritsche
Copy link

When transforming

    export const foo = 'bar';
    export const baz = () => console.log('baz');

the plugin causes an error:

thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: LayoutError', /Users/ojkwon/.cargo/registry/src/github.com-1ecc6299db9ec823/rkyv-0.7.41/src/impls/core/mod.rs:266:36
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'failed to invoke plugin: failed to invoke plugin on 'None'

Caused by:
    0: failed to invoke `swc-plugin-coverage-instrument` as js transform plugin at node_modules/swc-plugin-coverage-instrument/target/wasm32-wasi/release/swc_plugin_coverage.wasm
    1: RuntimeError: unreachable
           at __rust_start_panic (<module>[3758]:0x2482a5)
           at rust_panic (<module>[3753]:0x248031)
           at std::panicking::rust_panic_with_hook::hc938c0552bc648ce (<module>[3752]:0x248000)
           at std::panicking::begin_panic_handler::{{closure}}::h4d01c9a24b253a57 (<module>[3739]:0x2471a0)
           at std::sys_common::backtrace::__rust_end_short_backtrace::hfd66980d7bb1538d (<module>[3738]:0x2470cd)
           at rust_begin_unwind (<module>[3747]:0x2478a2)
           at core::panicking::panic_fmt::h8d02db942d8b9e8f (<module>[3891]:0x255ca8)
           at core::result::unwrap_failed::h806695779fe36d9c (<module>[3942]:0x25c8cc)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h4f0e170b30395b1b (<module>[1034]:0xd3471)
           at swc_ecma_ast::decl::_::<impl rkyv::Deserialize<swc_ecma_ast::decl::Decl,__D> for <swc_ecma_ast::decl::Decl as rkyv::Archive>::Archived>::deserialize::h51e26d8c14c5e0b3 (<module>[1088]:0xea3aa)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h14fb66356c68e997 (<module>[1045]:0xd4fa9)thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: LayoutError', /Users/ojkwon/.cargo/registry/src/github.com-1ecc6299db9ec823/rkyv-0.7.41/src/impls/core/mod.rs:266:36
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'failed to invoke plugin: failed to invoke plugin on 'None'

Caused by:
    0: failed to invoke `swc-plugin-coverage-instrument` as js transform plugin at node_modules/swc-plugin-coverage-instrument/target/wasm32-wasi/release/swc_plugin_coverage.wasm
    1: RuntimeError: unreachable
           at __rust_start_panic (<module>[3758]:0x2482a5)
           at rust_panic (<module>[3753]:0x248031)
           at std::panicking::rust_panic_with_hook::hc938c0552bc648ce (<module>[3752]:0x248000)
           at std::panicking::begin_panic_handler::{{closure}}::h4d01c9a24b253a57 (<module>[3739]:0x2471a0)
           at std::sys_common::backtrace::__rust_end_short_backtrace::hfd66980d7bb1538d (<module>[3738]:0x2470cd)
           at rust_begin_unwind (<module>[3747]:0x2478a2)
           at core::panicking::panic_fmt::h8d02db942d8b9e8f (<module>[3891]:0x255ca8)
           at core::result::unwrap_failed::h806695779fe36d9c (<module>[3942]:0x25c8cc)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h4f0e170b30395b1b (<module>[1034]:0xd3471)
           at swc_ecma_ast::decl::_::<impl rkyv::Deserialize<swc_ecma_ast::decl::Decl,__D> for <swc_ecma_ast::decl::Decl as rkyv::Archive>::Archived>::deserialize::h51e26d8c14c5e0b3 (<module>[1088]:0xea3aa)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h14fb66356c68e997 (<module>[1045]:0xd4fa9)
           at swc_common::plugin::serialized::PluginSerializedBytes::deserialize::h60c2d9119f49ea3d (<module>[1043]:0xd42b3)
           at swc_common::plugin::serialized::deserialize_from_ptr::haa90725f1e646b8f (<module>[1042]:0xd4072)
           at __transform_plugin_process_impl (<module>[745]:0x90260)
           at __transform_plugin_process_impl.command_export (<module>[4059]:0x26427f)', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/swc-0.260.46/src/plugin.rs:219:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
node:internal/process/esm_loader:97
    internalBinding('errors').triggerUncaughtException(
                              ^

[Error: failed to handle: failed to invoke plugin: failed to invoke plugin on 'None'

Caused by:
    0: failed to invoke `swc-plugin-coverage-instrument` as js transform plugin at node_modules/swc-plugin-coverage-instrument/target/wasm32-wasi/release/swc_plugin_coverage.wasm
    1: RuntimeError: unreachable
           at __rust_start_panic (<module>[3758]:0x2482a5)
           at rust_panic (<module>[3753]:0x248031)
           at std::panicking::rust_panic_with_hook::hc938c0552bc648ce (<module>[3752]:0x248000)
           at std::panicking::begin_panic_handler::{{closure}}::h4d01c9a24b253a57 (<module>[3739]:0x2471a0)
           at std::sys_common::backtrace::__rust_end_short_backtrace::hfd66980d7bb1538d (<module>[3738]:0x2470cd)
           at rust_begin_unwind (<module>[3747]:0x2478a2)
           at core::panicking::panic_fmt::h8d02db942d8b9e8f (<module>[3891]:0x255ca8)
           at core::result::unwrap_failed::h806695779fe36d9c (<module>[3942]:0x25c8cc)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h4f0e170b30395b1b (<module>[1034]:0xd3471)
           at swc_ecma_ast::decl::_::<impl rkyv::Deserialize<swc_ecma_ast::decl::Decl,__D> for <swc_ecma_ast::decl::Decl as rkyv::Archive>::Archived>::deserialize::h51e26d8c14c5e0b3 (<module>[1088]:0xea3aa)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h14fb66356c68e997 (<module>[1045]:0xd4fa9)
           at swc_common::plugin::serialized::PluginSerializedBytes::deserialize::h60c2d9119f49ea3d (<module>[1043]:0xd42b3)
           at swc_common::plugin::serialized::deserialize_from_ptr::haa90725f1e646b8f (<module>[1042]:0xd4072)
           at __transform_plugin_process_impl (<module>[745]:0x90260)
           at __transform_plugin_process_impl.command_export (<module>[4059]:0x26427f)] {
  code: 'GenericFailure'
}
           at swc_common::plugin::serialized::PluginSerializedBytes::deserialize::h60c2d9119f49ea3d (<module>[1043]:0xd42b3)
           at swc_common::plugin::serialized::deserialize_from_ptr::haa90725f1e646b8f (<module>[1042]:0xd4072)
           at __transform_plugin_process_impl (<module>[745]:0x90260)
           at __transform_plugin_process_impl.command_export (<module>[4059]:0x26427f)', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/swc-0.260.46/src/plugin.rs:219:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
node:internal/process/esm_loader:97
    internalBinding('errors').triggerUncaughtException(
                              ^

[Error: failed to handle: failed to invoke plugin: failed to invoke plugin on 'None'

Caused by:
    0: failed to invoke `swc-plugin-coverage-instrument` as js transform plugin at node_modules/swc-plugin-coverage-instrument/target/wasm32-wasi/release/swc_plugin_coverage.wasm
    1: RuntimeError: unreachable
           at __rust_start_panic (<module>[3758]:0x2482a5)
           at rust_panic (<module>[3753]:0x248031)
           at std::panicking::rust_panic_with_hook::hc938c0552bc648ce (<module>[3752]:0x248000)
           at std::panicking::begin_panic_handler::{{closure}}::h4d01c9a24b253a57 (<module>[3739]:0x2471a0)
           at std::sys_common::backtrace::__rust_end_short_backtrace::hfd66980d7bb1538d (<module>[3738]:0x2470cd)
           at rust_begin_unwind (<module>[3747]:0x2478a2)
           at core::panicking::panic_fmt::h8d02db942d8b9e8f (<module>[3891]:0x255ca8)
           at core::result::unwrap_failed::h806695779fe36d9c (<module>[3942]:0x25c8cc)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h4f0e170b30395b1b (<module>[1034]:0xd3471)
           at swc_ecma_ast::decl::_::<impl rkyv::Deserialize<swc_ecma_ast::decl::Decl,__D> for <swc_ecma_ast::decl::Decl as rkyv::Archive>::Archived>::deserialize::h51e26d8c14c5e0b3 (<module>[1088]:0xea3aa)
           at rkyv::impls::core::<impl rkyv::DeserializeUnsized<[U],D> for [T]>::deserialize_unsized::h14fb66356c68e997 (<module>[1045]:0xd4fa9)
           at swc_common::plugin::serialized::PluginSerializedBytes::deserialize::h60c2d9119f49ea3d (<module>[1043]:0xd42b3)
           at swc_common::plugin::serialized::deserialize_from_ptr::haa90725f1e646b8f (<module>[1042]:0xd4072)
           at __transform_plugin_process_impl (<module>[745]:0x90260)
           at __transform_plugin_process_impl.command_export (<module>[4059]:0x26427f)] {
  code: 'GenericFailure'
}

When transforming

    export default {
      foo: 'bar',
      baz: () => console.log('baz'),
    }

the plugin causes a segmentation fault:

[1]    29598 segmentation fault

Downgrading to @swc/core@1.3.56 resolves both errors.

@MattyBalaam
Copy link

MattyBalaam commented Jun 23, 2023

Our CI has just passed a run with @swc/core v1.3.65 so perhaps this is now fixed?

EDIT: Spoke too soon, it had actually just hung so had not reported an error yet.

@kwonoj kwonoj closed this as completed Jul 17, 2023
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

No branches or pull requests

3 participants