about summary refs log tree commit diff
path: root/src/main.rs
Commit message (Collapse)AuthorAgeFilesLines
* media: move to separate subtreeVika2022-05-101-1/+1
| | | | | | | | This will ease future extraction of the media endpoint to a separate crate. This is highly desirable since it will allow Kittybox's media endpoint to be used separately in instances where a standalone media endpoint is desirable (e.g. custom solutions using my code to polyfill for desired functionality that is undesirable to implement by oneself)
* Don't enable tokio-console support in productionVika2022-05-071-0/+1
|
* main.rs: clean up some dumb stuffVika2022-05-071-8/+6
| | | | | Match blocks and ifs are actually perfectly usable as expressions. I forgot about that when writing that code.
* added tokio-console instrumentation supportVika2022-04-171-0/+1
|
* Cargo.toml: add reqwestVika2022-04-151-0/+17
| | | | It's an advanced HTTP client that can do more than vanilla Hyper does.
* feat: graceful shutdownVika2022-04-151-4/+20
| | | | | | Now Kittybox can gracefully shutdown on SIGTERM. Nice! TODO: consider shutting down on multiple signals
* Port onboardingVika2022-03-071-1/+5
|
* Restored most of the functionality (except onboarding and some queries)Vika2022-03-061-44/+80
|
* Use the media endpoint stubsVika2022-02-211-2/+1
|
* Small tweaks, additions and preparationsVika2022-02-211-16/+23
|
* WIP: convert to Tokio and WarpVika2022-02-151-17/+101
| | | | | | | | | | | Warp allows requests to be applied as "filters", allowing to flexibly split up logic and have it work in a functional style, similar to pipes. Tokio is just an alternative runtime. I thought that maybe switching runtimes and refactoring the code might allow me to fish out that pesky bug with the whole application hanging after a certain amount of requests...
* Make rustfmt and clippy happyVika2021-12-061-1/+1
|
* Added support for IndieAuth client sign inVika2021-12-061-0/+19
| | | | | | | This will allow readers to view private posts intended just for them. Additionally fixed bugs in patterns due to which webmentions might not have been sent.
* Code cleanup and small bugfixing in templatesVika2021-12-051-2/+3
|
* Deprecated Redis backend and added a database migration tool (untested, beware)Vika2021-10-271-16/+2
|
* Moved integration tests and allowed the binary to use file backendVika2021-09-261-14/+36
| | | | | | Now the Redis dependencies are optional and only required if you want to test the backend or actually use it in production. The app displays a hint if you try to launch with an unsupported backend.
* Appease rustfmt, clippy and cargo checkVika2021-07-291-1/+1
|
* Added an internal token mechanismVika Shleina2021-07-271-0/+3
| | | | | | | | The internal token is a shared secret that can update and delete any posts stored in the database. It is intended for use in webmention endpoints to update posts with latest webmentions. Please keep it safe.
* make clippy happyVika Shleina2021-07-191-1/+0
|
* Renamed main executable to kittybox, added toolsVika Shleina2021-07-191-3/+3
| | | | | | | | | The new tools are: - kittybox-bulk-import, a bare-bones Micropub client that reads a JSON list of posts and then sends them one by one to the Micropub endpoint - pyindieblog-export, my personal tool which directly connects to Pyindieblog's redis instance and extracts data from it in JSON format suitable for use with kittybox-bulk-import.
* Make rustfmt happyVika2021-05-171-6/+14
|
* Refactoring, easter egg, healthcheck endpoint, support for rel= indieweb ↵Vika2021-05-171-2/+20
| | | | APIs and preparation for onboarding
* Clippy lintsVika2021-05-041-2/+1
|
* Initial commitVika2021-05-041-0/+48
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!!!