Commit graph

24 commits

Author SHA1 Message Date
oxalica
fb76756482 feat(webapi): impl user registration and identity description format 2024-09-16 10:45:40 -04:00
oxalica
98b2df2fdf feat(blahd): impl socket activation integration
This also allows arbitrary listening fd include UNIX domain sockets, via
environment variables as sd_listen_fds(3).
2024-09-11 13:17:52 -04:00
oxalica
0ac841e6fa refactor: move types crate into blahd-types subpackage 2024-09-10 03:47:41 -04:00
oxalica
ff5b7e60a7 Add tests for room create/read and fix incorrect foreign keys 2024-09-10 01:29:21 -04:00
oxalica
c5263c607c Split out socket config and switch back to toml crate
basic-toml does not support externally-tagged enum yet.

See: https://github.com/dtolnay/basic-toml/issues/8
2024-09-10 01:29:21 -04:00
oxalica
4f0f1405dc Librarify blahd for testing 2024-09-10 01:29:21 -04:00
oxalica
59d51937da Switch room identifier from UUID to stringified i64 2024-09-06 02:06:14 -04:00
oxalica
99d1311d63 Avoid unnecessary unwrap 2024-09-06 02:05:32 -04:00
oxalica
b05f704406 Rework /room/{}/item and pagination query
- Now it use `skipToken` and `top` to (mostly) align to OData spec.

- Its response type is now a normal struct and is documented.

- Room metadata is now excluded from room item query.
2024-09-03 04:08:34 -04:00
oxalica
77216aa0f8 Switch from event stream to WebSocket for events 2024-09-02 23:43:26 -04:00
oxalica
a63d0df443 Use serde_jcs for RFC 8785 compliancy
This fixes serialization and reduces maintainance cost, but does more
data copying on serialization.
2024-08-31 15:24:07 -04:00
oxalica
6e7229e4ac Make more server constants configurable 2024-08-31 01:25:38 -04:00
oxalica
abdc32b51f Use configuration file to simplify CLI 2024-08-31 01:02:20 -04:00
oxalica
4937502d4c Define error response format and refactor error handling 2024-08-31 00:04:16 -04:00
oxalica
4ceffe3f31 Split out timestamp check and actually check nonce 2024-08-31 00:04:16 -04:00
oxalica
668b873b07 Reorganize workspace layout and split out blahd 2024-08-31 00:04:16 -04:00
oxalica
370722731b Simplify rich text on-wire format 2024-08-30 13:05:29 -04:00
oxalica
c492bb2537 Use rich text format for chat 2024-08-30 12:26:45 -04:00
oxalica
cf5d648315 Enforce sorted fields for signed payloads 2024-08-29 19:06:48 -04:00
oxalica
d672d067cd Ser/de bitflags as raw integers 2024-08-29 18:14:40 -04:00
oxalica
482432758c Allow using userkey literal in ctl commands 2024-08-27 01:29:48 -04:00
oxalica
bcfac0c6b6 Allow CORS and fix event readiness notification 2024-08-27 01:29:48 -04:00
oxalica
593da123b6 Initial impl 2024-08-27 01:29:48 -04:00
oxalica
ae7a2b09fc Init 2024-08-25 14:26:34 -04:00