mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-26 21:03:12 +00:00
46c1f0e338
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.
93 lines
2.2 KiB
TOML
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"
|