oxalica
61850aa1ed
Make mock rng a fixture to allow dyn Rng
2024-09-10 01:29:21 -04:00
oxalica
e40ec6a324
Add tests for room join/leave and fix response status code
2024-09-10 01:29:21 -04:00
oxalica
5cd45232f4
Enable more local logging and disable dependencies'
2024-09-10 01:29:21 -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
Shibo Lyu
a92f661003
doc: pin @stoplight/elements
version & add sub-resource integrity
2024-09-09 11:26:59 +08:00
Shibo Lyu
8f0311c0d8
doc: openapi doc
2024-09-08 23:09:44 +08:00
oxalica
67ea6aaacc
Impl untilToken
for item_list
to avoid over-fetching seen items
2024-09-06 04:01:06 -04:00
oxalica
8b096ba802
Impl room listing with filter=unseen
2024-09-06 04:00:08 -04:00
oxalica
e74da2812b
Maintain room member's last seen item and fix docs
2024-09-06 03:33:21 -04:00
oxalica
51e2c8418b
Include cid in item responses and update docs
2024-09-06 02:27:53 -04:00
oxalica
a7f260027d
Use simplified Snowflake ID generation
...
This prevents leaking server information to client with little effort.
2024-09-06 02:06:44 -04:00
oxalica
59d51937da
Switch room identifier from UUID to stringified i64
2024-09-06 02:06:14 -04:00
oxalica
236fb61832
Fix missed JSON error response and simplify
2024-09-06 02:05:32 -04:00
oxalica
d3c3961298
Use proper rejection type for Auth
middleware
2024-09-06 02:05:32 -04:00
oxalica
99d1311d63
Avoid unnecessary unwrap
2024-09-06 02:05:32 -04:00
oxalica
81a566a097
Move database logic into submodule and do simple version check
2024-09-06 02:05:27 -04:00
oxalica
a37bc3f81e
Return the latest message in room list for display
2024-09-03 15:09:54 -04:00
oxalica
2eb884766a
Impl room leaving and fix frontend room combobox
2024-09-03 05:39:06 -04:00
oxalica
6831c3d25a
Fix missed attrs
on room creation
2024-09-03 04:08:34 -04:00
oxalica
2b6fbe8794
Impl global room listing at /room
2024-09-03 04:08:34 -04:00
oxalica
a9d5eb9631
Explicitly allow Authorization
header for CORS
...
It would not be included when just allow `*`.
2024-09-03 04:08:34 -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
5fadffef4d
Add GitHub CI and fix clippy warnings
2024-09-01 20:20:30 -04:00
oxalica
263c0ca44b
Fix typos
2024-08-31 22:39:09 -04:00
oxalica
5d15900436
Impl /room
and /room/{ruuid}/admin
endpoints
2024-08-31 18:33:23 -04:00
oxalica
e84b13c876
Package with nix and add systemd unit example
2024-08-31 16:38:43 -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