mirror of
https://github.com/chatmail/core.git
synced 2026-04-20 06:56:29 +03:00
Before this change progress bar only started when database is already transferred. Database is usually the largest file in the whole transfer, so the transfer appears to be stuck for the sender. With this change progress bar starts for backup export as soon as connection is received and counts bytes transferred over the connection using AsyncWrite wrapper. Similarly for backup import, AsyncRead wrapper counts the bytes received and emits progress events.
210 lines
5.8 KiB
TOML
210 lines
5.8 KiB
TOML
[package]
|
|
name = "deltachat"
|
|
version = "1.146.0"
|
|
edition = "2021"
|
|
license = "MPL-2.0"
|
|
rust-version = "1.77"
|
|
repository = "https://github.com/deltachat/deltachat-core-rust"
|
|
|
|
[profile.dev]
|
|
debug = 0
|
|
panic = 'abort'
|
|
opt-level = 1
|
|
|
|
[profile.test]
|
|
# Make anyhow `backtrace` feature useful.
|
|
# With `debug = 0` there are no line numbers in the backtrace
|
|
# produced with RUST_BACKTRACE=1.
|
|
debug = 1
|
|
opt-level = 0
|
|
|
|
# Always optimize dependencies.
|
|
# This does not apply to crates in the workspace.
|
|
# <https://doc.rust-lang.org/cargo/reference/profiles.html#overrides>
|
|
[profile.dev.package."*"]
|
|
opt-level = "z"
|
|
|
|
[profile.release]
|
|
lto = true
|
|
panic = 'abort'
|
|
opt-level = "z"
|
|
codegen-units = 1
|
|
strip = true
|
|
|
|
[dependencies]
|
|
deltachat_derive = { path = "./deltachat_derive" }
|
|
deltachat-time = { path = "./deltachat-time" }
|
|
deltachat-contact-tools = { workspace = true }
|
|
format-flowed = { path = "./format-flowed" }
|
|
ratelimit = { path = "./deltachat-ratelimit" }
|
|
|
|
anyhow = { workspace = true }
|
|
async-broadcast = "0.7.1"
|
|
async-channel = { workspace = true }
|
|
async-imap = { version = "0.10.1", default-features = false, features = ["runtime-tokio"] }
|
|
async-native-tls = { version = "0.5", default-features = false, features = ["runtime-tokio"] }
|
|
async-smtp = { version = "0.9", default-features = false, features = ["runtime-tokio"] }
|
|
async_zip = { version = "0.0.12", default-features = false, features = ["deflate", "fs"] }
|
|
base64 = { workspace = true }
|
|
brotli = { version = "6", default-features=false, features = ["std"] }
|
|
bytes = "1"
|
|
chrono = { workspace = true, features = ["alloc", "clock", "std"] }
|
|
email = { git = "https://github.com/deltachat/rust-email", branch = "master" }
|
|
encoded-words = { git = "https://github.com/async-email/encoded-words", branch = "master" }
|
|
escaper = "0.1"
|
|
fast-socks5 = "0.9"
|
|
fd-lock = "4"
|
|
futures-lite = { workspace = true }
|
|
futures = { workspace = true }
|
|
hex = "0.4.0"
|
|
hickory-resolver = "=0.25.0-alpha.2"
|
|
http-body-util = "0.1.2"
|
|
humansize = "2"
|
|
hyper = "1"
|
|
hyper-util = "0.1.9"
|
|
image = { version = "0.25.1", default-features=false, features = ["gif", "jpeg", "ico", "png", "pnm", "webp", "bmp"] }
|
|
iroh-gossip = { version = "0.25.0", default-features = false, features = ["net"] }
|
|
iroh-net = { version = "0.25.0", default-features = false }
|
|
kamadak-exif = "0.5.3"
|
|
lettre_email = { git = "https://github.com/deltachat/lettre", branch = "master" }
|
|
libc = { workspace = true }
|
|
mailparse = "0.15"
|
|
mime = "0.3.17"
|
|
num_cpus = "1.16"
|
|
num-derive = "0.4"
|
|
num-traits = { workspace = true }
|
|
once_cell = { workspace = true }
|
|
parking_lot = "0.12"
|
|
percent-encoding = "2.3"
|
|
pgp = { version = "0.13.2", default-features = false }
|
|
pin-project = "1"
|
|
qrcodegen = "1.7.0"
|
|
quick-xml = "0.36"
|
|
quoted_printable = "0.5"
|
|
rand = { workspace = true }
|
|
regex = { workspace = true }
|
|
rusqlite = { workspace = true, features = ["sqlcipher"] }
|
|
rust-hsluv = "0.1"
|
|
rustls-pki-types = "1.9.0"
|
|
rustls = { version = "0.23.13", default-features = false }
|
|
sanitize-filename = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
serde_urlencoded = "0.7.1"
|
|
serde = { workspace = true, features = ["derive"] }
|
|
sha-1 = "0.10"
|
|
shadowsocks = { version = "1.21.0", default-features = false, features = ["aead-cipher-2022"] }
|
|
smallvec = "1.13.2"
|
|
strum = "0.26"
|
|
strum_macros = "0.26"
|
|
tagger = "4.3.4"
|
|
textwrap = "0.16.1"
|
|
thiserror = { workspace = true }
|
|
tokio-io-timeout = "1.2.0"
|
|
tokio-rustls = { version = "0.26.0", default-features = false }
|
|
tokio-stream = { version = "0.1.16", features = ["fs"] }
|
|
tokio-tar = { version = "0.3" } # TODO: integrate tokio into async-tar
|
|
tokio-util = { workspace = true }
|
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread", "macros"] }
|
|
toml = "0.8"
|
|
url = "2"
|
|
uuid = { version = "1", features = ["serde", "v4"] }
|
|
webpki-roots = "0.26.6"
|
|
|
|
[dev-dependencies]
|
|
anyhow = { workspace = true, features = ["backtrace"] } # Enable `backtrace` feature in tests.
|
|
criterion = { version = "0.5.1", features = ["async_tokio"] }
|
|
futures-lite = { workspace = true }
|
|
log = { workspace = true }
|
|
nu-ansi-term = { workspace = true }
|
|
pretty_assertions = "1.4.1"
|
|
proptest = { version = "1", default-features = false, features = ["std"] }
|
|
tempfile = { workspace = true }
|
|
testdir = "0.9.0"
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
|
|
|
|
[workspace]
|
|
members = [
|
|
"deltachat-ffi",
|
|
"deltachat_derive",
|
|
"deltachat-jsonrpc",
|
|
"deltachat-rpc-server",
|
|
"deltachat-ratelimit",
|
|
"deltachat-repl",
|
|
"deltachat-time",
|
|
"format-flowed",
|
|
"deltachat-contact-tools",
|
|
]
|
|
|
|
[[bench]]
|
|
name = "create_account"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "contacts"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "search_msgs"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "receive_emails"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "get_chat_msgs"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "get_chatlist"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "send_events"
|
|
harness = false
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1"
|
|
async-channel = "2.3.1"
|
|
base64 = "0.22"
|
|
chrono = { version = "0.4.38", default-features = false }
|
|
deltachat-contact-tools = { path = "deltachat-contact-tools" }
|
|
deltachat-jsonrpc = { path = "deltachat-jsonrpc" }
|
|
deltachat = { path = "." }
|
|
futures = "0.3.30"
|
|
futures-lite = "2.3.0"
|
|
libc = "0.2"
|
|
log = "0.4"
|
|
nu-ansi-term = "0.46"
|
|
num-traits = "0.2"
|
|
once_cell = "1.18.0"
|
|
rand = "0.8"
|
|
regex = "1.10"
|
|
rusqlite = "0.32"
|
|
sanitize-filename = "0.5"
|
|
serde = "1.0"
|
|
serde_json = "1"
|
|
tempfile = "3.13.0"
|
|
thiserror = "1"
|
|
|
|
# 1.38 is the latest version before `mio` dependency update
|
|
# that broke compilation with Android NDK r23c and r24.
|
|
# Version 1.39.0 cannot be compiled using these NDKs,
|
|
# see issue <https://github.com/tokio-rs/tokio/issues/6748>
|
|
# for details.
|
|
tokio = "~1.38.1"
|
|
|
|
tokio-util = "0.7.11"
|
|
tracing-subscriber = "0.3"
|
|
yerpc = "0.6.2"
|
|
|
|
[features]
|
|
default = ["vendored"]
|
|
internals = []
|
|
vendored = [
|
|
"rusqlite/bundled-sqlcipher-vendored-openssl"
|
|
]
|
|
|
|
[lints.rust]
|
|
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }
|