Some checks failed
congrats.yml / build(windows): give etw_tracing its own 0.61 windows stack (push) Failing after 0s
deploy_docs.yml / build(windows): give etw_tracing its own 0.61 windows stack (push) Failing after 0s
deploy_nightly_docs.yml / build(windows): give etw_tracing its own 0.61 windows stack (push) Failing after 0s
extension_bump.yml / build(windows): give etw_tracing its own 0.61 windows stack (push) Failing after 0s
run_tests / orchestrate (push) Has been cancelled
run_tests / check_style (push) Has been cancelled
run_tests / clippy_windows (push) Has been cancelled
run_tests / clippy_linux (push) Has been cancelled
run_tests / clippy_mac (push) Has been cancelled
run_tests / clippy_mac_x86_64 (push) Has been cancelled
run_tests / run_tests_windows (push) Has been cancelled
run_tests / run_tests_linux (push) Has been cancelled
run_tests / run_tests_mac (push) Has been cancelled
run_tests / miri_scheduler (push) Has been cancelled
run_tests / doctests (push) Has been cancelled
run_tests / check_workspace_binaries (push) Has been cancelled
run_tests / build_visual_tests_binary (push) Has been cancelled
run_tests / check_wasm (push) Has been cancelled
run_tests / check_dependencies (push) Has been cancelled
run_tests / check_docs (push) Has been cancelled
run_tests / check_licenses (push) Has been cancelled
run_tests / check_scripts (push) Has been cancelled
run_tests / check_postgres_and_protobuf_migrations (push) Has been cancelled
run_tests / tests_pass (push) Has been cancelled
Pinning only windows-core to 0.61 was half the fix: etw_tracing still took the workspace `windows` (0.62), so it mixed a 0.62 PCWSTR/IErrorInfo with 0.61 COM traits. the trait bound IErrorInfo: windows_core::Interface is not satisfied the trait bound PCWSTR: Param<PCWSTR, CopyType> is not satisfied wprcontrol pins BOTH `windows` and `windows-core` at 0.61, so etw_tracing now declares its own 0.61 pair instead of inheriting the workspace 0.62 that gpui_windows needs. Features are the ones it actually uses (Foundation, WinSock, Com, Shell, WindowsAndMessaging). The two windows stacks coexist and never exchange COM types. Co-Authored-By: Claude Opus 4.8 <[email protected]>
34 lines
996 B
TOML
34 lines
996 B
TOML
[package]
|
|
name = "etw_tracing"
|
|
version = "0.1.0"
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
license = "GPL-3.0-or-later"
|
|
|
|
[lib]
|
|
path = "etw_tracing.rs"
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
gpui.workspace = true
|
|
log.workspace = true
|
|
net.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
util.workspace = true
|
|
workspace.workspace = true
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
wprcontrol = { git = "https://github.com/zed-industries/wprcontrol", rev = "cd811f7" }
|
|
# This crate must use the SAME windows stack as the pinned wprcontrol crate,
|
|
# which is 0.61 for both `windows` and `windows-core`. It therefore does not take
|
|
# the workspace `windows` (0.62, which gpui_windows needs): the two stacks
|
|
# coexist in the graph and never exchange COM types.
|
|
windows-core = "0.61"
|
|
windows = { version = "0.61", features = [
|
|
"Win32_Foundation",
|
|
"Win32_Networking_WinSock",
|
|
"Win32_System_Com",
|
|
"Win32_UI_Shell",
|
|
"Win32_UI_WindowsAndMessaging",
|
|
] }
|