- avoid building all workspace crates with `cargo x build` (only plugins and main binary) - only set the target triple in tests for plugins - add new profile for `cargo x run` to build with optimized dependencies => FAST plugins when developing (thanks [Bevy Book](https://bevyengine.org/learn/book/getting-started/setup/#compile-with-performance-optimizations) for the idea) - use https://github.com/Swatinem/rust-cache to avoid rebuilding dependencies every time in ci - split `Build & Test` job into two so they run in parallel - hopefully improve the flaky tests situation, this also makes the e2e tests run much faster (some tests produced correct snapshots but had some logic errors causing them to loop for much longer than necessary). Add some output to the tests so it is easier to see if something goes wrong. - remove verbose build output from e2e test build
87 lines
2.7 KiB
TOML
87 lines
2.7 KiB
TOML
[package]
|
|
name = "zellij"
|
|
version = "0.37.0"
|
|
authors = ["Aram Drevekenin <aram@poor.dev>"]
|
|
edition = "2021"
|
|
description = "A terminal workspace with batteries included"
|
|
license = "MIT"
|
|
repository = "https://github.com/zellij-org/zellij"
|
|
homepage = "https://zellij.dev"
|
|
include = ["src/**/*", "assets/layouts/*", "assets/config/*", "LICENSE.md", "README.md", "!**/*_test.*", "!**/tests/**/*"]
|
|
rust-version = "1.60"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
anyhow = "1.0"
|
|
thiserror = "1.0.30"
|
|
names = { version = "0.13.0", default-features = false }
|
|
miette = { version = "3.3.0", features = ["fancy"] }
|
|
zellij-client = { path = "zellij-client/", version = "0.37.0" }
|
|
zellij-server = { path = "zellij-server/", version = "0.37.0" }
|
|
zellij-utils = { path = "zellij-utils/", version = "0.37.0" }
|
|
log = "0.4.17"
|
|
dialoguer = "0.10.1"
|
|
suggest = "0.4"
|
|
|
|
[dev-dependencies]
|
|
insta = { version = "1.6.0", features = ["backtrace"] }
|
|
ssh2 = "0.9.1"
|
|
rand = "0.8.0"
|
|
regex = "1.8.1"
|
|
|
|
[workspace]
|
|
members = [
|
|
"default-plugins/compact-bar",
|
|
"default-plugins/status-bar",
|
|
"default-plugins/strider",
|
|
"default-plugins/tab-bar",
|
|
"zellij-client",
|
|
"zellij-server",
|
|
"zellij-utils",
|
|
"zellij-tile",
|
|
"zellij-tile-utils",
|
|
"xtask",
|
|
".",
|
|
]
|
|
|
|
[profile.dev-opt]
|
|
inherits = "dev"
|
|
|
|
[profile.dev-opt.package."*"]
|
|
opt-level = 3
|
|
|
|
[profile.release]
|
|
lto = true
|
|
strip = true
|
|
|
|
[package.metadata.deb]
|
|
depends = "$auto"
|
|
license-file = ["LICENSE.md", "4"]
|
|
assets = [
|
|
["assets/man/zellij.1", "usr/share/man/man1/zellij.1", "644"],
|
|
["target/release/zellij", "usr/bin/zellij", "755"],
|
|
["GOVERNANCE.md", "usr/share/doc/zellij/GOVERNANCE.md", "644"],
|
|
["README.md", "usr/share/doc/zellij/README.md", "644"],
|
|
["assets/layouts/*", "usr/share/zellij/layouts/", "644"],
|
|
["assets/plugins/*", "usr/share/zellij/plugins/", "644"],
|
|
["assets/completions/zellij.bash", "usr/share/bash-completion/completions/zellij.bash", "644"],
|
|
["assets/completions/zellij.fish", "usr/share/fish/vendor_completions.d/zellij.fish", "644"],
|
|
["assets/completions/_zellij", "usr/share/zsh/vendor-completions/_zellij", "644"],
|
|
]
|
|
|
|
[package.metadata.binstall]
|
|
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }.tar.gz"
|
|
bin-dir = "{ bin }{ binary-ext }"
|
|
pkg-fmt = "tgz"
|
|
|
|
[features]
|
|
# See remarks in zellij_utils/Cargo.toml
|
|
default = [ "zellij-utils/plugins_from_target" ]
|
|
disable_automatic_asset_installation = [ "zellij-utils/disable_automatic_asset_installation" ]
|
|
unstable = [ "zellij-client/unstable", "zellij-utils/unstable" ]
|
|
singlepass = [ "zellij-server/singlepass" ]
|
|
|
|
# uncomment this when developing plugins in the Zellij UI to make plugin compilation faster
|
|
# [profile.dev.package."*"]
|
|
# opt-level = 3
|