[package] name = "libquassel" description = "Native rust implementation of the Quassel protocol and library functions" version = "0.1.0" authors = ["Max Audron "] license = "ISC" homepage = "https://gitlab.com/cocainefarm/libquassel" repository = "https://gitlab.com/cocainefarm/libquassel" edition = "2021" autobins = true include = ["src/**/*", "LICENSE", "README.md"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] log = "0.4" byteorder = "1.3.2" time = { version = "0.3", features = ["macros", "parsing", "local-offset"] } thiserror = "2" num-traits = "0.2" num-derive = "0.4" bitflags = "2" itertools = "0.14" crossbeam-channel = "0.5" once_cell = "1" libquassel-derive = { path = "./derive" } bytes = { version = "1.0", optional = true } flate2 = { version = "1.0", optional = true } tokio = { version = "1", features = [], optional = true } tokio-util = { version = "0.7", features = ["codec"], optional = true } [features] framing = ["tokio", "tokio-util", "flate2", "bytes"] # Enable all the quassel features all-quassel-features = [ "long-message-id", "long-time", "rich-messages", "sender-prefixes", "authenticators", ] # Either act as a client or a server client = [] server = [] # Serialize message IDs as i64 long-message-id = [] # Serialize Message Time as i64 long-time = [] # Add avatar url and real name to messages rich-messages = [] # Show prefixes for senders in backlog sender-prefixes = [] # Support for exchangeable auth backends authenticators = [] # Enable the test crate/feature for running benchmarks bench = [] default = ["all-quassel-features", "client"] [package.metadata.docs.rs] # document all features all-features = true # defines the configuration attribute `docsrs` rustdoc-args = ["--cfg", "docsrs"] [dev-dependencies] futures = { version = "0.3" } # flate2 = { version = "1.0", features = ["tokio"] } # tokio = { version = "0.3", features = ["full"] } # tokio-util = { version = "0.5", features = ["codec"] } tokio-test = { version = "0.4" } pretty_assertions = "1" [workspace] members = ["derive"]