[workspace] members = [ ".", "rorm-db", "rorm-declaration", "rorm-macro", "rorm-sql", ] [package] name = "rorm" version = "0.6.4" edition = "2021" repository = "https://github.com/rorm-orm/rorm" authors = ["gammelalf", "myOmikron "] categories = ["database"] keywords = ["database", "orm", "async"] description = "A asynchronous declarative ORM written in pure rust." homepage = "https://rorm.rs" documentation = "https://docs.rorm.rs" license = "MIT" [lib] name = "rorm" path = "src/lib.rs" [dependencies] # Abstractions for asynchronous programming. futures = { version = "~0.3" } # json serialization to communicate with the migrator serde_json = { version = "~1" } serde = { version = "~1" } # linker magic to create a slice containing all models defined by crates linkme = { version = "~0.3" } # Allow wrapping futures and streams pin-project = { version = "~1" } rorm-db = { version = "~0.9", path = "./rorm-db", features = ["serde"] } rorm-macro = { version = ">=0.8.2", path = "./rorm-macro" } rorm-declaration = { version = "~0.4", path = "./rorm-declaration" } # rorm-cli exposes interfaces to integrate the cli as library rorm-cli = { version = "~0.8", path = "./rorm-cli", default-features = false, optional = true } # Mac address support (postgres-only) mac_address = { version = "~1", optional = true } # Bitvec support (postgres-only) bit-vec = { version = "~0.6", optional = true } # Ip network support (postgres-only) ipnetwork = { version = "~0.20", optional = true } # Date and time support chrono = { version = ">=0.4.20", default-features = false, optional = true } time = { version = "~0.3", optional = true } # Uuid support uuid = { version = "~1", optional = true } # `MessagePack` support rmp-serde = { version = "~1", optional = true } [build-dependencies] rustc_version = "0.4.0" [package.metadata.docs.rs] features = ["msgpack", "cli", "tokio"] [features] default = [ "all-drivers", "chrono", "time", "uuid", ] # Drivers all-drivers = [ "rorm-db/postgres", "rorm-cli?/postgres", "rorm-db/mysql", "rorm-cli?/mysql", "rorm-db/sqlite", "rorm-cli?/sqlite", ] postgres-only = [ "rorm-db/postgres-only", "rorm-cli?/postgres", "dep:mac_address", "dep:ipnetwork", "dep:bit-vec", ] # Extensions chrono = ["dep:chrono"] time = ["dep:time"] uuid = ["dep:uuid"] msgpack = ["dep:rmp-serde"] cli = ["dep:rorm-cli"] # Available Runtimes tokio = ["rorm-db/tokio"] async-std = ["rorm-db/async-std"] # TLS libraries rustls = ["rorm-db/rustls"] native-tls = ["rorm-db/native-tls"] [profile.release-lto] inherits = "release" lto = "fat" [profile.release-debug] inherits = "release" debug = true