fish-shell/Cargo.toml
Mahmoud Al-Qudsi 46c1f0e338
Add kqueue-based uvar notifier for BSD (#10674)
Add kqueue-based uvar notifier for BSD

Tested under FreeBSD 13.3.

This also works under all versions of macOS, and has some
benefits over the current notifyd choice.

Mutex is used because of the non-mut `notification_fd_became_readable()` `&self`
reference, but contention is not expected.
2024-08-26 17:10:26 -05:00

93 lines
2.2 KiB
TOML

[workspace]
resolver = "2"
members = ["printf"]
[workspace.package]
rust-version = "1.70"
edition = "2021"
[profile.release]
overflow-checks = true
lto = true
[package]
name = "fish"
version = "0.1.0"
edition.workspace = true
rust-version.workspace = true
default-run = "fish"
# see doc_src/license.rst for details
# don't forget to update COPYING and debian/copyright too
license = "GPL-2.0-only AND LGPL-2.0-or-later AND MIT AND PSF-2.0"
repository = "https://github.com/fish-shell/fish-shell"
homepage = "https://fishshell.com"
readme = "README.rst"
[dependencies]
pcre2 = { git = "https://github.com/fish-shell/rust-pcre2", branch = "master", default-features = false, features = [
"utf32",
] }
bitflags = "2.5.0"
errno = "0.3.0"
lazy_static = "1.4.0"
libc = "0.2.155"
# lru pulls in hashbrown by default, which uses a faster (though less DoS resistant) hashing algo.
# disabling default features uses the stdlib instead, but it doubles the time to rewrite the history
# files as of 22 April 2024.
lru = "0.12.3"
nix = { version = "0.29.0", default-features = false, features = [
"event",
"inotify",
"resource",
"fs",
] }
num-traits = "0.2.19"
once_cell = "1.19.0"
fish-printf = { path = "./printf" }
rand = { version = "0.8.5", features = ["small_rng"] }
widestring = "1.1.0"
terminfo = "0.9.0"
[target.'cfg(not(target_has_atomic = "64"))'.dependencies]
portable-atomic = { version = "1", default-features = false, features = ["fallback"] }
[dev-dependencies]
rand_pcg = "0.3.1"
serial_test = { version = "1.0.0", default-features = false }
[build-dependencies]
cc = "1.0.94"
rsconf = "0.2.2"
[lib]
crate-type = ["rlib"]
path = "src/lib.rs"
[[bin]]
name = "fish"
path = "src/bin/fish.rs"
[[bin]]
name = "fish_indent"
path = "src/bin/fish_indent.rs"
[[bin]]
name = "fish_key_reader"
path = "src/bin/fish_key_reader.rs"
[features]
default = []
benchmark = []
# The following features are auto-detected by the build-script and should not be enabled manually.
asan = []
tsan = []
[lints]
rust.non_camel_case_types = "allow"
rust.non_upper_case_globals = "allow"
rust.unknown_lints = "allow"
rust.unstable_name_collisions = "allow"
clippy.manual_range_contains = "allow"
clippy.needless_return = "allow"