- `actions!` now uses `#[action]` on each struct to reduce duplication.
- The `#[action]` macro now works on unit structs.
- Renamed `menu::unused` to `menu::init` and added more explanation in
comments.
Release Notes:
- N/A
@@ -1,9 +1,13 @@
use gpui::actions;
-// todo!(remove this)
+// If the zed binary doesn't use anything in this crate, it will be optimized away
+// and the actions won't initialize. So we just provide an empty initialization function
+// to be called from main.
+//
+// These may provide relevant context:
// https://github.com/rust-lang/rust/issues/47384
// https://github.com/mmastrac/rust-ctor/issues/280
-pub fn unused() {}
+pub fn init() {}
actions!(
Cancel,
@@ -57,10 +57,7 @@ use zed2::{
mod open_listener;
fn main() {
- //TODO!(figure out what the linker issues are here)- // https://github.com/rust-lang/rust/issues/47384- // https://github.com/mmastrac/rust-ctor/issues/280- menu::unused();
+ menu::init();
let http = http::client();
init_paths();
init_logger();