fix(toolchain): Unbreak client startup

This reverts commit 9f900a7325.
This commit is contained in:
har7an
2025-03-03 09:26:58 +00:00
committed by GitHub
parent b7cc3f3a62
commit 736d43b138
22 changed files with 207 additions and 138 deletions
+3 -2
View File
@@ -6,8 +6,9 @@ edition = "2021"
[dependencies]
anyhow = "1.0"
xshell = "= 0.2.7"
xflags = "0.3.2"
lazy_static = "1.4"
xshell = "= 0.2.2"
xflags = "0.3.1"
which = "4.2"
toml = "0.5"
prost-build = "0.11.9"
+6 -4
View File
@@ -22,7 +22,7 @@ pub fn build(sh: &Shell, flags: flags::Build) -> anyhow::Result<()> {
std::process::exit(1);
}
for WorkspaceMember { crate_name, .. } in crate::workspace_members()
for WorkspaceMember { crate_name, .. } in crate::WORKSPACE_MEMBERS
.iter()
.filter(|member| member.build)
{
@@ -32,8 +32,10 @@ pub fn build(sh: &Shell, flags: flags::Build) -> anyhow::Result<()> {
if flags.no_plugins {
continue;
}
} else if flags.plugins_only {
continue;
} else {
if flags.plugins_only {
continue;
}
}
// zellij-utils requires protobuf definition files to be present. Usually these are
@@ -151,7 +153,7 @@ pub fn manpage(sh: &Shell) -> anyhow::Result<()> {
let project_root = crate::project_root();
let asset_dir = &project_root.join("assets").join("man");
sh.create_dir(asset_dir).context(err_context)?;
sh.create_dir(&asset_dir).context(err_context)?;
let _pd = sh.push_dir(asset_dir);
cmd!(sh, "{mandown} {project_root}/docs/MANPAGE.md 1")
+4 -4
View File
@@ -77,7 +77,7 @@ fn e2e_build(sh: &Shell) -> anyhow::Result<()> {
sh.remove_path(&data_dir)
.and_then(|_| sh.create_dir(&data_dir))
.and_then(|_| sh.create_dir(data_dir.join("plugins")))
.and_then(|_| sh.create_dir(&data_dir.join("plugins")))
.context(err_context)?;
for plugin in plugins {
@@ -119,15 +119,15 @@ fn e2e_test(sh: &Shell, args: Vec<OsString>) -> anyhow::Result<()> {
// plugin system tests are run here because they're medium-slow
let _pd = sh.push_dir(Path::new("zellij-server"));
println!();
let msg = ">> Testing Plugin System".to_string();
println!("");
let msg = format!(">> Testing Plugin System");
crate::status(&msg);
println!("{}", msg);
cmd!(sh, "{cargo} test -- --ignored --nocapture --test-threads 1")
.args(args.clone())
.run()
.with_context(|| "Failed to run tests for the Plugin System".to_string())?;
.with_context(|| format!("Failed to run tests for the Plugin System"))?;
Ok(())
})
.context(err_context)
+1 -1
View File
@@ -21,7 +21,7 @@ pub fn clippy(sh: &Shell, _flags: flags::Clippy) -> anyhow::Result<()> {
.and_then(|_| crate::cargo())
.context("failed to run task 'clippy'")?;
for WorkspaceMember { crate_name, .. } in crate::workspace_members().iter() {
for WorkspaceMember { crate_name, .. } in crate::WORKSPACE_MEMBERS.iter() {
let _pd = sh.push_dir(Path::new(crate_name));
// Tell the user where we are now
println!();
+2 -2
View File
@@ -9,7 +9,7 @@ xflags::xflags! {
cmd xtask {
/// Deprecation warning. Compatibility to transition from `cargo make`.
cmd deprecated {
repeated _args: OsString
repeated args: OsString
}
/// Tasks for the CI
@@ -128,7 +128,7 @@ pub enum XtaskCmd {
#[derive(Debug)]
pub struct Deprecated {
pub _args: Vec<OsString>,
pub args: Vec<OsString>,
}
#[derive(Debug)]
+1 -1
View File
@@ -11,7 +11,7 @@ pub fn format(sh: &Shell, flags: flags::Format) -> anyhow::Result<()> {
.and_then(|_| crate::cargo())
.context("failed to run task 'format'")?;
for WorkspaceMember { crate_name, .. } in crate::workspace_members().iter() {
for WorkspaceMember { crate_name, .. } in crate::WORKSPACE_MEMBERS.iter() {
let _pd = sh.push_dir(Path::new(crate_name));
// Tell the user where we are now
println!();
+18 -67
View File
@@ -19,7 +19,6 @@ use anyhow::Context;
use std::{
env,
path::{Path, PathBuf},
sync::OnceLock,
time::Instant,
};
use xshell::Shell;
@@ -29,72 +28,24 @@ pub struct WorkspaceMember {
build: bool,
}
fn workspace_members() -> &'static Vec<WorkspaceMember> {
static WORKSPACE_MEMBERS: OnceLock<Vec<WorkspaceMember>> = OnceLock::new();
WORKSPACE_MEMBERS.get_or_init(|| {
vec![
WorkspaceMember {
crate_name: "default-plugins/compact-bar",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/status-bar",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/strider",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/tab-bar",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/fixture-plugin-for-tests",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/session-manager",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/configuration",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/plugin-manager",
build: true,
},
WorkspaceMember {
crate_name: "default-plugins/about",
build: true,
},
WorkspaceMember {
crate_name: "zellij-utils",
build: false,
},
WorkspaceMember {
crate_name: "zellij-tile-utils",
build: false,
},
WorkspaceMember {
crate_name: "zellij-tile",
build: false,
},
WorkspaceMember {
crate_name: "zellij-client",
build: false,
},
WorkspaceMember {
crate_name: "zellij-server",
build: false,
},
WorkspaceMember {
crate_name: ".",
build: true,
},
]
})
lazy_static::lazy_static! {
pub static ref WORKSPACE_MEMBERS: Vec<WorkspaceMember> = vec![
WorkspaceMember{crate_name: "default-plugins/compact-bar", build: true},
WorkspaceMember{crate_name: "default-plugins/status-bar", build: true},
WorkspaceMember{crate_name: "default-plugins/strider", build: true},
WorkspaceMember{crate_name: "default-plugins/tab-bar", build: true},
WorkspaceMember{crate_name: "default-plugins/fixture-plugin-for-tests", build: true},
WorkspaceMember{crate_name: "default-plugins/session-manager", build: true},
WorkspaceMember{crate_name: "default-plugins/configuration", build: true},
WorkspaceMember{crate_name: "default-plugins/plugin-manager", build: true},
WorkspaceMember{crate_name: "default-plugins/about", build: true},
WorkspaceMember{crate_name: "zellij-utils", build: false},
WorkspaceMember{crate_name: "zellij-tile-utils", build: false},
WorkspaceMember{crate_name: "zellij-tile", build: false},
WorkspaceMember{crate_name: "zellij-client", build: false},
WorkspaceMember{crate_name: "zellij-server", build: false},
WorkspaceMember{crate_name: ".", build: true},
];
}
fn main() -> anyhow::Result<()> {
+1 -1
View File
@@ -317,7 +317,7 @@ pub fn publish(sh: &Shell, flags: flags::Publish) -> anyhow::Result<()> {
}
// Publish all the crates
for WorkspaceMember { crate_name, .. } in crate::workspace_members().iter() {
for WorkspaceMember { crate_name, .. } in crate::WORKSPACE_MEMBERS.iter() {
if crate_name.contains("plugin") || crate_name.contains("xtask") {
continue;
}
+5 -5
View File
@@ -20,15 +20,15 @@ pub fn test(sh: &Shell, flags: flags::Test) -> anyhow::Result<()> {
)
.context(err_context)?;
for WorkspaceMember { crate_name, .. } in crate::workspace_members().iter() {
for WorkspaceMember { crate_name, .. } in crate::WORKSPACE_MEMBERS.iter() {
// the workspace root only contains e2e tests, skip it
if crate_name == &"." {
if *crate_name == "." {
continue;
}
let _pd = sh.push_dir(Path::new(crate_name));
// Tell the user where we are now
println!();
println!("");
let msg = format!(">> Testing '{}'", crate_name);
crate::status(&msg);
println!("{}", msg);
@@ -60,9 +60,9 @@ pub fn host_target_triple(sh: &Shell) -> anyhow::Result<String> {
return None;
}
if let Some((_, triple)) = line.split_once(": ") {
Some(triple.to_string())
return Some(triple.to_string());
} else {
None
return None;
}
})
.collect::<Vec<String>>();