Add the serde 'twins' (Serialize + Deserialize) to every public struct and enum in src/*/types.rs so data types can be serialized via JSON, bincode, postcard, etc. Dependency changes: - enable 'serde' feature on gix (for gix::ObjectId) - enable 'serde' feature on time (for time::OffsetDateTime) Skipped: - src/archive/types.rs::ChildArchiveReader<R> — contains a tokio::process::Child field, semantically not serializable Coverage (18 modules): archive, blame, blob, branch, cleanup, commit, compare, config, conflict, diff, merge, refs, remote, setup, submodule, tags, tree Notes: - field names kept snake_case (no rename_all remap) - existing PartialEq / Eq / Default / Copy derives preserved - cargo build + cargo test (38 passed) green
12 lines
427 B
TOML
12 lines
427 B
TOML
[package]
|
|
name = "gitbaby"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[dependencies]
|
|
tokio = { version = "1.53.1", features = ["process", "io-util", "sync", "macros", "rt-multi-thread", "time", "fs"] }
|
|
serde = { version = "1.0.229", features = ["derive"] }
|
|
serde_json = { version = "1.0.151", features = [] }
|
|
gix = { version = "0.86.0", features = ["serde"] }
|
|
time = { version = "0.3.55", features = ["serde"] }
|
|
async-trait = "0.1.92" |