e4b182d75d
I just ran `cargo clippy -- -W clippy::pedantic` and fixed things. These are more invasive that the default set and the remaining warnings are mostly about our (abysmal) public docs missing Error and Panic sections to explain errors and panicks.
76 lines
2.5 KiB
TOML
76 lines
2.5 KiB
TOML
[package]
|
|
name = "updater"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[lib]
|
|
# "lib" is used by the "cli" target for testing from Rust
|
|
# "cdylib" is used by the "dart_cli" target for testing from Dart
|
|
# "staticlib" is used by the engine build for linking into libflutter.so
|
|
crate-type = ["lib", "cdylib", "staticlib"]
|
|
|
|
[dependencies]
|
|
# Used for error handling for now.
|
|
anyhow = { version = "1.0.69", features = ["backtrace"] }
|
|
# For inflating compressed patch files.
|
|
bipatch = "1.0.0"
|
|
# Used for exposing C API
|
|
# comde is a wrapper around several compression libraries.
|
|
# We only use zstd and could depend on it directly instead.
|
|
comde = { version = "0.2.3", default-features = false, features = [
|
|
"zstandard",
|
|
] }
|
|
# For decoding the hex-encoded hashes in Patch network responses.
|
|
hex = "0.4.3"
|
|
# Used to construct mock responses.
|
|
http = "0.2.9"
|
|
libc = "0.2.98"
|
|
# For error!(), info!(), etc macros. `print` will not show up on Android.
|
|
log = "0.4.14"
|
|
# For implementing thread-local-storage of ResolvedConfig object.
|
|
once_cell = "1.17.1"
|
|
# Json serialization/de-serialization.
|
|
# Pipe is a simple in-memory pipe implementation, there might be a std way too?
|
|
pipe = "0.4.0"
|
|
# Used for networking.
|
|
reqwest = { version = "0.11", default-features = false, features = [
|
|
"blocking",
|
|
"json",
|
|
"rustls-tls",
|
|
] }
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0.93"
|
|
# For reading shorebird.yaml
|
|
serde_yaml = "0.9.19"
|
|
uuid = { version = "1.4.1", features = [
|
|
"v4", # To generate random UUIDs
|
|
] }
|
|
# For computing hashes of patch files for validation.
|
|
sha2 = "0.10.6"
|
|
# For decompressing .apk files.
|
|
zip = { version = "0.6.4", default-features = false, features = ["deflate"] }
|
|
|
|
[target.'cfg(target_os = "android")'.dependencies]
|
|
# For logging to Android logcat.
|
|
android_logger = "0.13.0"
|
|
# Send panics to log (instead of stderr), thus logcat on Android.
|
|
log-panics = { version = "2", features = ["with-backtrace"] }
|
|
|
|
[target.'cfg(target_os = "ios")'.dependencies]
|
|
# Send panics to syslog (instead of stderr).
|
|
log-panics = { version = "2", features = ["with-backtrace"] }
|
|
# Use stderr for logging on iOS.
|
|
simple-logging = "2.0.2"
|
|
|
|
[dev-dependencies]
|
|
# Gives #[serial] attribute for locking all of our shorebird_init
|
|
# tests to a single thread so they don't conflict with each other.
|
|
serial_test = "2.0.0"
|
|
tempdir = "0.3.7"
|
|
|
|
# <https://github.com/eqrion/cbindgen/blob/master/docs.md#buildrs>
|
|
[build-dependencies]
|
|
cbindgen = "0.24.0"
|