[package] name = "libpaket" authors.workspace = true edition.workspace = true license.workspace = true version.workspace = true [dependencies] aes-gcm = { version = "0.10.3", optional = true } ed25519-dalek = { version = "2.1.0", optional = true } hmac = { version = "0.12.1", optional = true } num_enum = { version = "0.7", optional = true } # TODO: Consolidate? rand = "0.8.5" random-string = "1.1.0" reqwest = { version = "0.12", features = ["json", "cookies", "gzip", "http2"] } secrecy = { version = "0.8.0", features = ["serde"] } serde = { version = "1.0.195", features = ["derive"] } serde_json = "1.0.111" serde_repr = { version = "0.1.18", optional = true } serde_ignored = "0.1" url = "2.5.0" base64 = "0.22" # TODO: consider splitting login.rs refresh_token and authorization_token # (sha2 and urlencoding only used with authorization_token) # sha2 also used in briefankuendigung and packstation_register_regtoken sha2 = "0.10.8" urlencoding = "2.1.3" uuid = { version = "1.7.0", features = ["v4", "serde"], optional = true } serde_newtype = "0.1.1" thiserror = "1.0.56" [features] default = [ "advices", "locker_all" ] advices = [ #"dep:sha2", "dep:uuid", "dep:aes-gcm", ] locker_all = [ "locker_register_all", "locker_ble", ] locker_base = [ "dep:uuid", "dep:serde_repr", "dep:ed25519-dalek", ] locker_ble = [ "locker_base", "dep:num_enum", ] locker_register_all = [ "locker_register_regtoken", ] locker_register_base = [ "locker_base", "dep:hmac", #"dep:sha2", ] locker_register_regtoken = [ "locker_register_base" ]