Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Removed openssl dependency - now the code is pure Rust | Vika | 2021-05-10 | 3 | -233/+140 | |
| | ||||||
* | More descriptive error handling and more descriptive TODOs | Vika | 2021-05-09 | 2 | -9/+15 | |
| | ||||||
* | Added support for more default feeds, added a feed for vCards | Vika | 2021-05-09 | 1 | -15/+42 | |
| | ||||||
* | Added a frontend to the application. TODO: Login, alternative themes, ↵ | Vika | 2021-05-09 | 6 | -37/+751 | |
| | | | | built-in Micropub capabilities when logged in | |||||
* | Fixed parsing the reply context for webmentions if there is no webmention ↵ | Vika | 2021-05-09 | 1 | -1/+19 | |
| | | | | endpoint | |||||
* | Fixed Micropub client channels and sending payload | Vika | 2021-05-09 | 1 | -11/+21 | |
| | ||||||
* | Added a debug shim to IndieAuthMiddleware that makes it a no-op in staging ↵ | Vika | 2021-05-09 | 1 | -1/+15 | |
| | | | | (except unit tests) | |||||
* | Add a note about a possible optimization once the MF2 parser is ready | Vika | 2021-05-06 | 1 | -0/+3 | |
| | ||||||
* | Deduplicated the fetched posts to save on bandwidth and time | Vika | 2021-05-06 | 1 | -2/+8 | |
| | ||||||
* | 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 | |
| | ||||||
* | Moved things in Cargo.toml to make it prettier | Vika | 2021-05-05 | 1 | -15/+21 | |
| | ||||||
* | Added rudimentary caching to IndieAuth middleware | Vika | 2021-05-05 | 4 | -37/+116 | |
| | ||||||
* | 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 | 3 | -129/+32 | |
| | ||||||
* | 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 | |
| | ||||||
* | Updated nixpkgs | Vika | 2021-05-05 | 1 | -3/+3 | |
| | ||||||
* | Switched to naersk for building crates with Nix... that requires unstable Cargo! | Vika | 2021-05-05 | 2 | -9/+38 | |
| | ||||||
* | 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 | 9 | -419/+519 | |
| | ||||||
* | Initial commit | Vika | 2021-05-04 | 16 | -0/+4745 | |
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!!! |