[package] name = "meilisearch" publish = false version.workspace = true authors.workspace = true description.workspace = true homepage.workspace = true readme.workspace = true edition.workspace = true license.workspace = true default-run = "meilisearch" [dependencies] actix-cors = "0.7.0" actix-http = { version = "3.8.0", default-features = false, features = [ "compress-brotli", "compress-gzip", "rustls-0_23", ] } actix-utils = "3.0.1" actix-web = { version = "4.8.0", default-features = false, features = [ "macros", "compress-brotli", "compress-gzip", "cookies", "rustls-0_23", ] } anyhow = { version = "1.0.86", features = ["backtrace"] } async-trait = "0.1.81" bstr = "1.9.1" byte-unit = { version = "5.1.4", default-features = false, features = [ "std", "byte", "serde", ] } bytes = "1.6.0" clap = { version = "4.5.9", features = ["derive", "env"] } crossbeam-channel = "0.5.13" deserr = { version = "0.6.2", features = ["actix-web"] } dump = { path = "../dump" } either = "1.13.0" file-store = { path = "../file-store" } flate2 = "1.0.30" fst = "0.4.7" futures = "0.3.30" futures-util = "0.3.30" index-scheduler = { path = "../index-scheduler" } indexmap = { version = "2.2.6", features = ["serde"] } is-terminal = "0.4.12" itertools = "0.13.0" jsonwebtoken = "9.3.0" lazy_static = "1.5.0" meilisearch-auth = { path = "../meilisearch-auth" } meilisearch-types = { path = "../meilisearch-types" } mimalloc = { version = "0.1.43", default-features = false } mime = "0.3.17" num_cpus = "1.16.0" obkv = "0.2.2" once_cell = "1.19.0" ordered-float = "4.2.1" parking_lot = "0.12.3" permissive-json-pointer = { path = "../permissive-json-pointer" } pin-project-lite = "0.2.14" platform-dirs = "0.3.0" prometheus = { version = "0.13.4", features = ["process"] } rand = "0.8.5" rayon = "1.10.0" regex = "1.10.5" reqwest = { version = "0.12.5", features = [ "rustls-tls", "json", ], default-features = false } rustls = { version = "0.23.11", features = ["ring"], default-features = false } rustls-pki-types = { version = "1.7.0", features = ["alloc"] } rustls-pemfile = "2.1.2" segment = { version = "0.2.4", optional = true } serde = { version = "1.0.204", features = ["derive"] } serde_json = { version = "1.0.120", features = ["preserve_order"] } sha2 = "0.10.8" siphasher = "1.0.1" slice-group-by = "0.3.1" static-files = { version = "0.2.4", optional = true } sysinfo = "0.30.13" tar = "0.4.41" tempfile = "3.10.1" thiserror = "1.0.61" time = { version = "0.3.36", features = [ "serde-well-known", "formatting", "parsing", "macros", ] } tokio = { version = "1.38.0", features = ["full"] } toml = "0.8.14" uuid = { version = "1.10.0", features = ["serde", "v4"] } serde_urlencoded = "0.7.1" termcolor = "1.4.1" url = { version = "2.5.2", features = ["serde"] } tracing = "0.1.40" tracing-subscriber = { version = "0.3.18", features = ["json"] } tracing-trace = { version = "0.1.0", path = "../tracing-trace" } tracing-actix-web = "0.7.11" build-info = { version = "1.7.0", path = "../build-info" } roaring = "0.10.2" utoipa = { version = "5.0.0-beta.0", features = ["actix_extras", "non_strict_integers", "preserve_order", "uuid", "time", "openapi_extensions"] } utoipa-scalar = { version = "0.2.0-beta.0", features = ["actix-web"] } utoipa-rapidoc = { version = "4.0.1-beta.0", features = ["actix-web"] } [dev-dependencies] actix-rt = "2.10.0" brotli = "6.0.0" insta = "1.39.0" manifest-dir-macros = "0.1.18" maplit = "1.0.2" meili-snap = { path = "../meili-snap" } temp-env = "0.3.6" urlencoding = "2.1.3" wiremock = "0.6.0" yaup = "0.3.1" [build-dependencies] anyhow = { version = "1.0.86", optional = true } cargo_toml = { version = "0.20.3", optional = true } hex = { version = "0.4.3", optional = true } reqwest = { version = "0.12.5", features = [ "blocking", "rustls-tls", ], default-features = false, optional = true } sha-1 = { version = "0.10.1", optional = true } static-files = { version = "0.2.4", optional = true } tempfile = { version = "3.10.1", optional = true } zip = { version = "2.1.3", optional = true } [features] default = ["analytics", "meilisearch-types/all-tokenizations", "mini-dashboard"] analytics = ["segment"] mini-dashboard = [ "static-files", "anyhow", "cargo_toml", "hex", "reqwest", "sha-1", "tempfile", "zip", ] chinese = ["meilisearch-types/chinese"] chinese-pinyin = ["meilisearch-types/chinese-pinyin"] hebrew = ["meilisearch-types/hebrew"] japanese = ["meilisearch-types/japanese"] korean = ["meilisearch-types/korean"] thai = ["meilisearch-types/thai"] greek = ["meilisearch-types/greek"] khmer = ["meilisearch-types/khmer"] vietnamese = ["meilisearch-types/vietnamese"] swedish-recomposition = ["meilisearch-types/swedish-recomposition"] german = ["meilisearch-types/german"] [package.metadata.mini-dashboard] assets-url = "https://github.com/meilisearch/mini-dashboard/releases/download/v0.2.14/build.zip" sha1 = "592d1b5a3459d621d0aae1dded8fe3154f5c38fe"