[workspace] resolver = "2" members = [ ] [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" [dependencies] pcre2 = { git = "https://github.com/fish-shell/rust-pcre2", branch = "master", default-features = false, features = ["utf32"] } fast-float = { git = "https://github.com/fish-shell/fast-float-rust", branch="fish" } hexponent = { git = "https://github.com/fish-shell/hexponent", branch="fish" } printf-compat = { git = "https://github.com/fish-shell/printf-compat.git", branch="fish" } bitflags = "2.4.0" errno = "0.2.8" lazy_static = "1.4.0" libc = "0.2.137" # 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.10.0" nix = { version = "0.25.0", default-features = false, features = ["inotify", "resource", "fs"] } num-traits = "0.2.15" once_cell = "1.17.0" rand = { version = "0.8.5", features = ["small_rng"] } widestring = "1.0.2" terminfo = { git = "https://github.com/meh/rust-terminfo", rev = "7259f5aa5786a9d396162da0d993e268f6163fb2" } [dev-dependencies] rand_pcg = "0.3.1" serial_test = { version = "1.0.0", default-features = false } [build-dependencies] cc = "1.0.94" rsconf = "0.1.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 = [] [lints] rust.non_camel_case_types = "allow" rust.non_upper_case_globals = "allow" rust.unknown_lints = "allow" rust.unstable_name_collisions = "allow" clippy.assigning_clones = "allow" clippy.bool_assert_comparison = "allow" clippy.box_default = "allow" clippy.collapsible_if = "allow" clippy.comparison_chain = "allow" clippy.derivable_impls = "allow" clippy.field_reassign_with_default = "allow" clippy.get_first = "allow" clippy.if_same_then_else = "allow" clippy.incompatible_msrv = "allow" clippy.len_without_is_empty = "allow" clippy.manual_is_ascii_check = "allow" clippy.manual_range_contains = "allow" clippy.mut_from_ref = "allow" clippy.needless_return = "allow" clippy.new_without_default = "allow" clippy.option_map_unit_fn = "allow" clippy.ptr_arg = "allow" clippy.redundant_slicing = "allow" clippy.too_many_arguments = "allow" clippy.uninlined_format_args = "allow"