Atproto, types overhaul and error handling

Breaks off from Atrium-rs's types because they are implemented
inconsistently, which makes them harder to use. Additionally, I wanted
sqlx support so I decided I'd need to reimplement them to some extent
anyways.

This was done with reference to the atproto documentation but
specifically not the atrium-rs codebase so I wouldn't have to think
about licenses.

This adds the types and error module in atproto. It also touches
Cargo.toml for some new dependencies and some shared dependencies. It
required thiserror, so I looped that into the workspace meaning that
this commit touches db.

some things to keep in mind:
- There is no CID parsing
- None of this is tested, nor are there any tests written. We're playing
  fast and loose baby~
This commit is contained in:
Julia Lange 2025-06-16 15:29:27 -07:00
parent 1abdb7f133
commit 781a56028f
Signed by: Julia
SSH key fingerprint: SHA256:5DJcfxa5/fKCYn57dcabJa2vN2e6eT0pBerYi5SUbto
12 changed files with 439 additions and 81 deletions

View file

@ -4,8 +4,8 @@ version = "0.1.0"
edition = "2024"
[dependencies]
thiserror = "2.0.12"
atproto.workspace = true
async-trait.workspace = true
sqlx = { version = "0.8.6", features = ["postgres", "runtime-tokio"] }
sqlx.workspace = true
thiserror.workspace = true
tokio.workspace = true