mirror of
https://github.com/tutao/tutanota.git
synced 2025-10-19 07:53:47 +00:00
63 lines
No EOL
2.2 KiB
TOML
63 lines
No EOL
2.2 KiB
TOML
[workspace.package]
|
|
version = "310.251008.0"
|
|
rust-version = "1.84.0"
|
|
edition = "2021"
|
|
homepage = "https://tutao.de"
|
|
repository = "https://github.com/tutao/tutanota"
|
|
license-file = "LICENSE.txt"
|
|
publish = false
|
|
|
|
[profile]
|
|
# these config should be configured in .cargo/config.toml
|
|
|
|
[workspace]
|
|
resolver = "2" # todo: can use resolver 3 after 1.84.0+
|
|
members = [
|
|
"tuta-sdk/rust/sdk",
|
|
"packages/node-mimimi",
|
|
# uniffi-bindgen is a seperate crate as uniffi-bindgen does not have a cli yet:
|
|
# https://github.com/mozilla/uniffi-rs/blob/fbe146f/docs/manual/src/tutorial/foreign_language_bindings.md#creating-the-bindgen-binary
|
|
# note: not to be confused with `bindgen` binary which is from: https://github.com/rust-lang/rust-bindgen
|
|
"tuta-sdk/rust/uniffi-bindgen",
|
|
"tuta-sdk/rust/crypto-primitives"
|
|
]
|
|
|
|
# in most cases, we don't want to build everything.
|
|
# this requires passing --all or --package <package-name> to
|
|
# cargo for almost anything
|
|
default-members = []
|
|
|
|
[workspace.dependencies]
|
|
tuta-sdk = { path = "tuta-sdk/rust/sdk", default-features = false }
|
|
crypto-primitives = { path = "tuta-sdk/rust/crypto-primitives", default-features = false }
|
|
thiserror = { version = "2.0" }
|
|
base64 = { version = "0.22.1" }
|
|
log = { version = "0.4.22" }
|
|
serde = { version = "1.0.210", features = ["derive", "rc"] }
|
|
serde_json = { version = "1.0.117" }
|
|
tokio = { version = "1.43", default-features = false }
|
|
uniffi = { git = "https://github.com/mozilla/uniffi-rs.git", rev = "13a1c559cb3708eeca40dcf95dc8b3ccccf3b88c", default-features = false }
|
|
rand = { version = "0.8" }
|
|
|
|
# --------- lints
|
|
|
|
# lints.cargo not supported on stable yet.
|
|
# [workspace.lints.cargo]
|
|
|
|
[workspace.lints.clippy]
|
|
new_without_default = "allow" # we don't want to implement Default for everything
|
|
enum_variant_names = "allow" # creates more problems than it solves
|
|
let_and_return = "allow" # we commonly use this style
|
|
too_many_arguments = "allow" # this is fine
|
|
|
|
# "pedantic" lints worth warning on
|
|
manual_let_else = "warn"
|
|
must_use_candidate = "warn"
|
|
unused_async = "warn"
|
|
implicit_clone = "warn"
|
|
explicit_iter_loop = "warn"
|
|
|
|
[profile.release-wasm]
|
|
inherits = "release"
|
|
# Tell `rustc` to optimize for small code size.
|
|
opt-level = "s" |