[package]
edition = "2024"
rust-version = "1.94"
name = "git-remote-object-store"
version = "0.2.2"
authors = ["Elijah Zupancic <elijah@zupancic.name>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Git remote helper backed by cloud object stores (S3, Azure Blob Storage)"
readme = "README.md"
keywords = [
"git",
"remote-helper",
"s3",
"azure",
"object-store",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "Apache-2.0"
repository = "https://github.com/dekobon/git-remote-object-store"
resolver = "2"
[features]
test-util = []
[lib]
name = "git_remote_object_store"
path = "src/lib.rs"
[[test]]
name = "env_var_doc_sync"
path = "tests/env_var_doc_sync.rs"
[[test]]
name = "packchain_read_blob"
path = "tests/packchain_read_blob.rs"
[[test]]
name = "protocol_fetch"
path = "tests/protocol_fetch.rs"
[[test]]
name = "protocol_fetch_packchain"
path = "tests/protocol_fetch_packchain.rs"
[[test]]
name = "protocol_push"
path = "tests/protocol_push.rs"
[[test]]
name = "protocol_push_packchain"
path = "tests/protocol_push_packchain.rs"
[[test]]
name = "protocol_smoke"
path = "tests/protocol_smoke.rs"
[[test]]
name = "url_parsing"
path = "tests/url_parsing.rs"
[dependencies.anyhow]
version = "1"
[dependencies.async-trait]
version = "0.1"
[dependencies.aws-config]
version = "1"
features = [
"behavior-version-latest",
"credentials-login",
]
[dependencies.aws-sdk-s3]
version = "1"
features = [
"sigv4a",
"http-1x",
"default-https-client",
"rt-tokio",
]
default-features = false
[dependencies.aws-smithy-http-client]
version = "1"
features = ["rustls-aws-lc"]
[dependencies.aws-smithy-types-convert]
version = "0.60"
features = ["convert-time"]
[dependencies.azure_core]
version = "0.35"
[dependencies.azure_identity]
version = "0.35"
[dependencies.azure_storage_blob]
version = "0.12"
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1"
[dependencies.dialoguer]
version = "0.11"
default-features = false
[dependencies.futures]
version = "0.3"
[dependencies.gix]
version = "0.83"
[dependencies.gix-archive]
version = "0.32"
[dependencies.gix-hash]
version = "0.25"
features = ["sha1"]
[dependencies.gix-pack]
version = "0.70"
[dependencies.gix-validate]
version = "0.11"
[dependencies.hmac]
version = "0.12"
[dependencies.percent-encoding]
version = "2"
[dependencies.reqwest]
version = "0.13"
features = [
"http2",
"rustls",
]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.tempfile]
version = "3"
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3"
features = [
"parsing",
"formatting",
"macros",
]
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"fs",
"io-std",
"io-util",
"process",
"signal",
"time",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.url]
version = "2"
[dependencies.uuid]
version = "1"
features = ["v4"]
[dev-dependencies.aws-smithy-http-client]
version = "1"
features = ["test-util"]
[dev-dependencies.flate2]
version = "1"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.testcontainers]
version = "0.27"
features = [
"blocking",
"http_wait_plain",
]
[dev-dependencies.tokio]
version = "1"
features = ["test-util"]
[lints.clippy]
module_name_repetitions = "allow"
unreachable = "deny"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "warn"
[profile.release]
debug = "line-tables-only"