4个版本 (2个重大变更)

0.3.0 2024年8月15日
0.2.0 2024年4月15日
0.1.1 2024年3月17日
0.1.0 2024年3月17日

WebAssembly 类别中排名第 142

Download history 4/week @ 2024-05-20 9/week @ 2024-06-24 32/week @ 2024-07-29 110/week @ 2024-08-12

每月下载量 142

MIT/Apache

88KB
113

Web Panic Report

用bug报告表单替换HTML元素的panic钩子。

Discord MIT/Apache 2.0 Build status dependency status Crates.io Docs

[!WARNING] 该项目的目标是提供完整的错误报告和分析,而不仅仅是提供一个报告panic条件的框架。

快速入门运行演示

# Make sure the Rust toolchain supports the wasm32 target
rustup target add wasm32-unknown-unknown

# Install `wasm-server-runner` for the example
cargo install wasm-server-runner

WASM_SERVER_RUNNER_CUSTOM_INDEX_HTML=examples/index.html cargo run --target wasm32-unknown-unknown --example simple

还有可用的网络演示 在此

Demo

用法

[!IMPORTANT] 在发布模式下,调试符号会被移除。如果您希望为生产构建提供有用的堆栈跟踪,则需要手动启用它们。

将以下内容添加到您的 Cargo.toml

[profile.release]
debug = true

确保您的网页由一个将被替换为bug报告表单的容器元素提供。

<body>
  <div id="my-container" style="width: 400px; height: 400px;">
    /** Content that is replaced here on panic, like a game canvas */
  </div>
</body>

在您的程序开始处设置panic钩子。

fn main() {
    #[cfg(target_arch = "wasm32")]
    web_panic_report::set_default_hook_with("my-container", |panic_info| {
        // Send the panic info to your backend here.
        // This is triggered when the user clicks "Send Report"
    });
}

您还可以使用自定义bug报告表单。请参阅 自定义示例

替代方案

最低支持的Rust版本 (MSRV)

Web Panic Report的此版本已验证可编译与 Rust 1.75 及更高版本。

Web Panic Report的未来版本可能会提高Rust版本要求。这不会被视为重大变更,甚至可能在小型补丁版本中发生。

如果编译失败,请点击此处。

随着时间的推移,Web Panic Report的一些依赖项可能已发布具有更高Rust要求的版本。如果您遇到依赖项问题并希望不升级您的Rust工具链,则可以降级依赖项。

# Use the problematic dependency's name and version
cargo update -p package_name --precise 0.1.1

社区

所有Loopy项目和发展都在 Loopy Discord 上进行。此Discord对公众开放。

贡献通过拉取请求接受。请参阅 Rust的行为准则

许可证

根据以下任一许可证授权:

任选其一

贡献

除非您明确表示,否则根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,应按上述方式双重许可,不附加任何额外条款或条件。

依赖项

~7–9.5MB
~176K SLoC