fix(tauri): patch wry 绕过 macOS 26 启动崩溃(NSBundle bundleWithIdentifier SIGTRAP)
- 根因:tauri 启动探测 webview 版本时调用 wry platform_webview_version() → NSBundle::bundleWithIdentifier(com.apple.WebKit) 在 macOS 26 (Tahoe) 上 触发 CFBundle/CFRelease 断言崩溃(EXC_BREAKPOINT) - 方案:vendor 本地 wry 0.55.1,该函数改为安全占位返回(仅被上层用作 is_ok() 探测, 返回值无实际用途),[patch.crates-io] 指向本地副本 - 附带:移除 NSBundle import,消除 unused 警告
This commit is contained in:
Vendored
+424
@@ -0,0 +1,424 @@
|
||||
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
|
||||
#
|
||||
# When uploading crates to the registry Cargo will automatically
|
||||
# "normalize" Cargo.toml files for maximal compatibility
|
||||
# with all versions of Cargo and also rewrite `path` dependencies
|
||||
# to registry (e.g., crates.io) dependencies.
|
||||
#
|
||||
# If you are reading this file be aware that the original Cargo.toml
|
||||
# will likely look very different (and much more reasonable).
|
||||
# See Cargo.toml.orig for the original contents.
|
||||
|
||||
[package]
|
||||
edition = "2021"
|
||||
rust-version = "1.77"
|
||||
name = "wry"
|
||||
version = "0.55.1"
|
||||
authors = ["Tauri Programme within The Commons Conservancy"]
|
||||
build = "build.rs"
|
||||
exclude = [
|
||||
"/.changes",
|
||||
"/.github",
|
||||
"/audits",
|
||||
"/wry-logo.svg",
|
||||
]
|
||||
autolib = false
|
||||
autobins = false
|
||||
autoexamples = false
|
||||
autotests = false
|
||||
autobenches = false
|
||||
description = "Cross-platform WebView rendering library"
|
||||
documentation = "https://docs.rs/wry"
|
||||
readme = "README.md"
|
||||
categories = ["gui"]
|
||||
license = "Apache-2.0 OR MIT"
|
||||
repository = "https://github.com/tauri-apps/wry"
|
||||
|
||||
[package.metadata.docs.rs]
|
||||
no-default-features = true
|
||||
features = [
|
||||
"protocol",
|
||||
"os-webview",
|
||||
]
|
||||
targets = [
|
||||
"x86_64-unknown-linux-gnu",
|
||||
"x86_64-pc-windows-msvc",
|
||||
"x86_64-apple-darwin",
|
||||
]
|
||||
|
||||
[features]
|
||||
default = [
|
||||
"protocol",
|
||||
"os-webview",
|
||||
"x11",
|
||||
]
|
||||
devtools = []
|
||||
fullscreen = []
|
||||
linux-body = [
|
||||
"webkit2gtk/v2_40",
|
||||
"os-webview",
|
||||
]
|
||||
mac-proxy = []
|
||||
os-webview = [
|
||||
"javascriptcore-rs",
|
||||
"webkit2gtk",
|
||||
"webkit2gtk-sys",
|
||||
"dep:gtk",
|
||||
"soup3",
|
||||
]
|
||||
protocol = []
|
||||
serde = ["dpi/serde"]
|
||||
tracing = ["dep:tracing"]
|
||||
transparent = []
|
||||
x11 = [
|
||||
"x11-dl",
|
||||
"gdkx11",
|
||||
"tao/x11",
|
||||
]
|
||||
|
||||
[lib]
|
||||
name = "wry"
|
||||
path = "src/lib.rs"
|
||||
|
||||
[[example]]
|
||||
name = "async_custom_protocol"
|
||||
path = "examples/async_custom_protocol.rs"
|
||||
|
||||
[[example]]
|
||||
name = "cookies"
|
||||
path = "examples/cookies.rs"
|
||||
|
||||
[[example]]
|
||||
name = "custom_protocol"
|
||||
path = "examples/custom_protocol.rs"
|
||||
|
||||
[[example]]
|
||||
name = "custom_titlebar"
|
||||
path = "examples/custom_titlebar.rs"
|
||||
|
||||
[[example]]
|
||||
name = "gtk_multiwebview"
|
||||
path = "examples/gtk_multiwebview.rs"
|
||||
|
||||
[[example]]
|
||||
name = "gtk_opengl"
|
||||
path = "examples/gtk_opengl.rs"
|
||||
|
||||
[[example]]
|
||||
name = "multiwebview"
|
||||
path = "examples/multiwebview.rs"
|
||||
|
||||
[[example]]
|
||||
name = "multiwindow"
|
||||
path = "examples/multiwindow.rs"
|
||||
|
||||
[[example]]
|
||||
name = "reparent"
|
||||
path = "examples/reparent.rs"
|
||||
|
||||
[[example]]
|
||||
name = "simple"
|
||||
path = "examples/simple.rs"
|
||||
|
||||
[[example]]
|
||||
name = "streaming"
|
||||
path = "examples/streaming.rs"
|
||||
|
||||
[[example]]
|
||||
name = "transparent"
|
||||
path = "examples/transparent.rs"
|
||||
|
||||
[[example]]
|
||||
name = "wgpu"
|
||||
path = "examples/wgpu.rs"
|
||||
|
||||
[[example]]
|
||||
name = "window_border"
|
||||
path = "examples/window_border.rs"
|
||||
|
||||
[[example]]
|
||||
name = "winit"
|
||||
path = "examples/winit.rs"
|
||||
|
||||
[dependencies.cookie]
|
||||
version = "0.18"
|
||||
|
||||
[dependencies.dpi]
|
||||
version = "0.1"
|
||||
|
||||
[dependencies.http]
|
||||
version = "1.1"
|
||||
|
||||
[dependencies.once_cell]
|
||||
version = "1"
|
||||
|
||||
[dependencies.raw-window-handle]
|
||||
version = "0.6"
|
||||
features = ["std"]
|
||||
|
||||
[dependencies.thiserror]
|
||||
version = "2.0"
|
||||
|
||||
[dependencies.tracing]
|
||||
version = "0.1"
|
||||
optional = true
|
||||
|
||||
[dev-dependencies.base64]
|
||||
version = "0.22"
|
||||
|
||||
[dev-dependencies.dom_query]
|
||||
version = "0.27.0"
|
||||
default-features = false
|
||||
|
||||
[dev-dependencies.getrandom]
|
||||
version = "0.3"
|
||||
|
||||
[dev-dependencies.glow]
|
||||
version = "0.16.0"
|
||||
|
||||
[dev-dependencies.http-range]
|
||||
version = "0.1"
|
||||
|
||||
[dev-dependencies.libloading]
|
||||
version = "0.8.9"
|
||||
|
||||
[dev-dependencies.percent-encoding]
|
||||
version = "2.3"
|
||||
|
||||
[dev-dependencies.pollster]
|
||||
version = "0.4.0"
|
||||
|
||||
[dev-dependencies.sha2]
|
||||
version = "0.10"
|
||||
|
||||
[dev-dependencies.tao]
|
||||
version = "0.35"
|
||||
|
||||
[dev-dependencies.wgpu]
|
||||
version = "23"
|
||||
|
||||
[dev-dependencies.winit]
|
||||
version = "0.30"
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.dirs]
|
||||
version = "6"
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.gdkx11]
|
||||
version = "0.18"
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.gtk]
|
||||
version = "0.18"
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.javascriptcore-rs]
|
||||
version = "=1.1.2"
|
||||
features = ["v2_28"]
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.percent-encoding]
|
||||
version = "2.3"
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.soup3]
|
||||
version = "0.5"
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.webkit2gtk]
|
||||
version = "=2.0.2"
|
||||
features = ["v2_38"]
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.webkit2gtk-sys]
|
||||
version = "=2.0.2"
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dependencies.x11-dl]
|
||||
version = "2.21"
|
||||
optional = true
|
||||
|
||||
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd"))'.dev-dependencies.x11-dl]
|
||||
version = "2.21"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.base64]
|
||||
version = "0.22"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.crossbeam-channel]
|
||||
version = "0.5"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.dom_query]
|
||||
version = "0.27.0"
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.jni]
|
||||
version = "0.21"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.libc]
|
||||
version = "0.2"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.ndk]
|
||||
version = "0.9"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.sha2]
|
||||
version = "0.10"
|
||||
|
||||
[target.'cfg(target_os = "android")'.dependencies.tao-macros]
|
||||
version = "0.1"
|
||||
|
||||
[target.'cfg(target_os = "ios")'.dependencies.objc2-ui-kit]
|
||||
version = "0.3.0"
|
||||
features = [
|
||||
"std",
|
||||
"objc2-core-foundation",
|
||||
"UIResponder",
|
||||
"UIScrollView",
|
||||
"UIView",
|
||||
"UIWindow",
|
||||
"UIApplication",
|
||||
"UIEvent",
|
||||
"UIColor",
|
||||
]
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_os = "macos")'.dependencies.objc2-app-kit]
|
||||
version = "0.3.0"
|
||||
features = [
|
||||
"std",
|
||||
"objc2-core-foundation",
|
||||
"NSApplication",
|
||||
"NSButton",
|
||||
"NSControl",
|
||||
"NSEvent",
|
||||
"NSWindow",
|
||||
"NSView",
|
||||
"NSPasteboard",
|
||||
"NSPanel",
|
||||
"NSResponder",
|
||||
"NSOpenPanel",
|
||||
"NSSavePanel",
|
||||
"NSMenu",
|
||||
"NSGraphics",
|
||||
"NSScreen",
|
||||
]
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.dunce]
|
||||
version = "1"
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.webview2-com]
|
||||
version = "0.38"
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.windows]
|
||||
version = "0.61"
|
||||
features = [
|
||||
"Win32_Foundation",
|
||||
"Win32_Graphics_Gdi",
|
||||
"Win32_System_Com",
|
||||
"Win32_System_Com_StructuredStorage",
|
||||
"Win32_System_LibraryLoader",
|
||||
"Win32_System_Ole",
|
||||
"Win32_System_SystemInformation",
|
||||
"Win32_System_SystemServices",
|
||||
"Win32_UI_Shell",
|
||||
"Win32_UI_WindowsAndMessaging",
|
||||
"Win32_Globalization",
|
||||
"Win32_UI_HiDpi",
|
||||
"Win32_UI_Input",
|
||||
"Win32_UI_Input_KeyboardAndMouse",
|
||||
]
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.windows-core]
|
||||
version = "0.61"
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.windows-version]
|
||||
version = "0.1"
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.block2]
|
||||
version = "0.6"
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.dirs]
|
||||
version = "6"
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.objc2]
|
||||
version = "0.6.4"
|
||||
features = [
|
||||
"exception",
|
||||
"disable-encoding-assertions",
|
||||
]
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.objc2-core-foundation]
|
||||
version = "0.3.0"
|
||||
features = [
|
||||
"std",
|
||||
"CFCGTypes",
|
||||
]
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.objc2-foundation]
|
||||
version = "0.3.0"
|
||||
features = [
|
||||
"std",
|
||||
"objc2-core-foundation",
|
||||
"NSURLRequest",
|
||||
"NSURL",
|
||||
"NSString",
|
||||
"NSKeyValueCoding",
|
||||
"NSStream",
|
||||
"NSDictionary",
|
||||
"NSObject",
|
||||
"NSData",
|
||||
"NSEnumerator",
|
||||
"NSKeyValueObserving",
|
||||
"NSThread",
|
||||
"NSJSONSerialization",
|
||||
"NSDate",
|
||||
"NSBundle",
|
||||
"NSProcessInfo",
|
||||
"NSValue",
|
||||
"NSRange",
|
||||
"NSRunLoop",
|
||||
]
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.objc2-web-kit]
|
||||
version = "0.3.0"
|
||||
features = [
|
||||
"std",
|
||||
"objc2-core-foundation",
|
||||
"objc2-app-kit",
|
||||
"block2",
|
||||
"WKWebView",
|
||||
"WKWebViewConfiguration",
|
||||
"WKWebsiteDataStore",
|
||||
"WKDownload",
|
||||
"WKDownloadDelegate",
|
||||
"WKNavigation",
|
||||
"WKNavigationDelegate",
|
||||
"WKUserContentController",
|
||||
"WKURLSchemeHandler",
|
||||
"WKPreferences",
|
||||
"WKURLSchemeTask",
|
||||
"WKScriptMessageHandler",
|
||||
"WKUIDelegate",
|
||||
"WKOpenPanelParameters",
|
||||
"WKFrameInfo",
|
||||
"WKSecurityOrigin",
|
||||
"WKScriptMessage",
|
||||
"WKNavigationAction",
|
||||
"WKWebpagePreferences",
|
||||
"WKNavigationResponse",
|
||||
"WKUserScript",
|
||||
"WKHTTPCookieStore",
|
||||
"WKWindowFeatures",
|
||||
]
|
||||
default-features = false
|
||||
|
||||
[target.'cfg(target_vendor = "apple")'.dependencies.url]
|
||||
version = "2.5"
|
||||
|
||||
[lints.rust.unexpected_cfgs]
|
||||
level = "warn"
|
||||
priority = 0
|
||||
check-cfg = [
|
||||
"cfg(linux)",
|
||||
"cfg(gtk)",
|
||||
]
|
||||
Reference in New Issue
Block a user