add basic typed key value store abstraction

Should eliminate a few classes of footgun when it's done.
This commit is contained in:
Charles Hall 2024-06-14 22:30:24 -07:00
parent 41c01ad1b7
commit 029e32971e
No known key found for this signature in database
GPG key ID: 7B8E0645816E07CF
6 changed files with 455 additions and 0 deletions

53
Cargo.lock generated
View file

@ -713,6 +713,58 @@ dependencies = [
"percent-encoding",
]
[[package]]
name = "frunk"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11a351b59e12f97b4176ee78497dff72e4276fb1ceb13e19056aca7fa0206287"
dependencies = [
"frunk_core",
"frunk_derives",
"frunk_proc_macros",
]
[[package]]
name = "frunk_core"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "af2469fab0bd07e64ccf0ad57a1438f63160c69b2e57f04a439653d68eb558d6"
[[package]]
name = "frunk_derives"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b0fa992f1656e1707946bbba340ad244f0814009ef8c0118eb7b658395f19a2e"
dependencies = [
"frunk_proc_macro_helpers",
"quote",
"syn",
]
[[package]]
name = "frunk_proc_macro_helpers"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "35b54add839292b743aeda6ebedbd8b11e93404f902c56223e51b9ec18a13d2c"
dependencies = [
"frunk_core",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "frunk_proc_macros"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71b85a1d4a9a6b300b41c05e8e13ef2feca03e0334127f29eca9506a7fe13a93"
dependencies = [
"frunk_core",
"frunk_proc_macro_helpers",
"quote",
"syn",
]
[[package]]
name = "futures-channel"
version = "0.3.30"
@ -840,6 +892,7 @@ dependencies = [
"base64 0.22.1",
"bytes",
"clap",
"frunk",
"futures-util",
"hmac",
"html-escape",