Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Turns out assert!() can have a second argument with a panic reason. Cool! | Vika | 2021-05-06 | 1 | -19/+16 |
| | |||||
* | Added post-processing of new posts | Vika | 2021-05-06 | 1 | -6/+143 |
| | | | | | | | | | | | | | This launches a background task to handle: - Downloading reply contexts (requires an MF2 parser, doesn't work yet) - Syndicating the post (currently no syndication targets are defined) - Sending WebSub notifications if a hub is present (WIP) - Sending webmentions (ok this one is fully implemented... I hope!) This background task should not impact processing times and should never conflict with futher updates of a post, since the database is guaranteed to be fully atomic. Inside of the task, you can run long asynchronous fetching and stuff, just don't block the whole thread. | ||||
* | Added a note to future self | Vika | 2021-05-05 | 1 | -0/+7 |
| | |||||
* | Added rudimentary caching to IndieAuth middleware | Vika | 2021-05-05 | 2 | -29/+85 |
| | |||||
* | Moved the client to /micropub/client | Vika | 2021-05-05 | 1 | -4/+5 |
| | |||||
* | Refactored the Redis instance spawning in tests to automatically kill Redis | Vika | 2021-05-05 | 3 | -40/+43 |
| | |||||
* | Removed the in-memory database, it's dragging me down | Vika | 2021-05-05 | 3 | -214/+0 |
| | |||||
* | Deleted a loose TODO | Vika | 2021-05-05 | 1 | -1/+0 |
| | |||||
* | Moved the Redis spawner to the Redis module where it belongs, refactored ↵ | Vika | 2021-05-05 | 3 | -78/+110 |
| | | | | tests to use the Redis database instead of a fake one | ||||
* | Added a connection pool to the RedisDatabase | Vika | 2021-05-05 | 1 | -17/+27 |
| | |||||
* | Refactored error handling in RedisStorage using the ? operator | Vika | 2021-05-05 | 1 | -184/+124 |
| | |||||
* | Made some StorageError fields private and added getters instead | Vika | 2021-05-05 | 1 | -2/+5 |
| | |||||
* | Clippy lints | Vika | 2021-05-04 | 5 | -34/+27 |
| | |||||
* | Made StorageErrors directly convertible into Micropub JSON responses | Vika | 2021-05-04 | 3 | -15/+22 |
| | |||||
* | Fixed Redis tests | Vika | 2021-05-04 | 2 | -4/+6 |
| | |||||
* | Implemented MemoryStorage::update_post() | Vika | 2021-05-04 | 2 | -1/+84 |
| | |||||
* | Refactored the database module and its tests | Vika | 2021-05-04 | 6 | -387/+423 |
| | |||||
* | Initial commit | Vika | 2021-05-04 | 9 | -0/+1854 |
Working features: - Sending posts from the database - Reading posts from the database - Responding with MF2-JSON (only in debug mode!) - Not locking the database when not needed - All database actions are atomic (except for a small race where UIDs can clash, but that's not gonna happen often) TODOs: - Send webmentions - Send syndication requests - Send WebSub notifications - Make tombstones for deleted posts (update adding dt-deleted) - Rich reply contexts (possibly on the frontend part?) - Frontend? - Fix UID race Code maintenance TODOs: - Split the database module - Finish implementing the in-memory test database - Make RedisDatabase unit tests launch their own Redis instances (see redis-rs/tests/support/mod.rs for more info) - Write more unit-tests!!! |