Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Cargo.toml: add reqwest | Vika | 2022-04-15 | 3 | -3/+89 |
| | | | | It's an advanced HTTP client that can do more than vanilla Hyper does. | ||||
* | frontend: Made endpoints optional in templates | Vika | 2022-04-15 | 2 | -12/+27 |
| | | | | | Sometimes it's cumbersome to include them, and I plan to make them embedded in the app anyway. This is my reminder to do it ASAP. | ||||
* | feat: graceful shutdown | Vika | 2022-04-15 | 1 | -4/+20 |
| | | | | | | Now Kittybox can gracefully shutdown on SIGTERM. Nice! TODO: consider shutting down on multiple signals | ||||
* | Make the settings in the database a strong type | Vika | 2022-03-23 | 6 | -13/+42 |
| | |||||
* | Get rid of todo!() invocations | Vika | 2022-03-23 | 1 | -4/+32 |
| | | | | | | This stubs the neccesary code with enough stuff that it will work and be accepted by most compliant Micropub implementations. Later, this can be extended when the neccesary amendments and refactors are done. | ||||
* | Get rid of legacy code, fix mistakes in fluff text and comments | Vika | 2022-03-23 | 4 | -417/+6 |
| | |||||
* | Added a docker container image built from Nix | Vika | 2022-03-18 | 1 | -2/+43 |
| | | | | | | This is so minimal it can't be much less than this. Use it with `docker load`. | ||||
* | Port onboarding | Vika | 2022-03-07 | 4 | -9/+88 |
| | |||||
* | FileStorage: add lints to catch panicking inside locked code sections | Vika | 2022-03-07 | 1 | -149/+168 |
| | |||||
* | Restored most of the functionality (except onboarding and some queries) | Vika | 2022-03-06 | 9 | -230/+689 |
| | |||||
* | micropub: parse mp-channel as channel | Vika | 2022-03-03 | 1 | -2/+72 |
| | |||||
* | fonts: init font update script | Vika | 2022-03-03 | 2 | -1/+10 |
| | | | | | This will be used to embed fonts into the executable to not rely on Google Fonts anymore. | ||||
* | frontend: convert to warp | Vika | 2022-03-02 | 3 | -292/+208 |
| | | | | | | | | | Warp is using hyperium/http instead of http-types, so I replaced all of the http-types usage (mostly status codes) by Warp's http::StatusCode. Additionally some of the struct fields were made public to allow initialization from public code. | ||||
* | metrics: new metrics collection using warp-prometheus | Vika | 2022-03-02 | 3 | -76/+95 |
| | |||||
* | database: code cleanup | Vika | 2022-03-02 | 2 | -26/+58 |
| | |||||
* | update dev script to use systemfd and cargo-watch | Vika | 2022-03-02 | 2 | -2/+3 |
| | |||||
* | Use the media endpoint stubs | Vika | 2022-02-21 | 1 | -2/+1 |
| | |||||
* | Added stubs for Micropub posts and the media endpoint | Vika | 2022-02-21 | 1 | -1/+83 |
| | |||||
* | Small tweaks, additions and preparations | Vika | 2022-02-21 | 2 | -25/+26 |
| | |||||
* | add compat between http_types and http | Vika | 2022-02-21 | 2 | -2/+5 |
| | |||||
* | micropub: flesh out query | Vika | 2022-02-21 | 1 | -47/+180 |
| | |||||
* | Fix the dev script to use the proper token endpoint and log settings | Vika | 2022-02-21 | 1 | -2/+2 |
| | |||||
* | Make the HTTP client a generic | Vika | 2022-02-21 | 1 | -7/+5 |
| | | | | | | This adds the ability to use mocks that don't actually touch the network and alternative transports such as using OpenSSL instead of rustls (but rustls is still superior). | ||||
* | indieauth/require_token(): reject with 401 when no header | Vika | 2022-02-21 | 1 | -2/+34 |
| | |||||
* | database/memory: restore, it is useful in test scenarios | Vika | 2022-02-21 | 2 | -0/+198 |
| | |||||
* | database: code cleanup | Vika | 2022-02-21 | 2 | -48/+29 |
| | |||||
* | database/file: use Authority instead of origin for directories | Vika | 2022-02-21 | 1 | -4/+4 |
| | |||||
* | Add a module for IndieAuth bearer token auth | Vika | 2022-02-21 | 5 | -211/+798 |
| | | | | | | | | | | | | | require_token() uses a token endpoint URI and an HTTP client to query the token endpoint and return a User object if the user was authorized, or rejecting with IndieAuthError if not. It is recommended to use recover() and catch the IndieAuthError at the application level to show a "not authorized" error message to the user. This function is more intended for API consumption, but is general enough to permit using in other scenarios. TODO: make a variant that returns Option<User> instead of rejecting | ||||
* | WIP: convert to Tokio and Warp | Vika | 2022-02-15 | 9 | -713/+861 |
| | | | | | | | | | | | 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... | ||||
* | Added a dev env script | Vika | 2022-02-14 | 2 | -1/+11 |
| | |||||
* | flake: fix e2e tests | Vika | 2021-12-31 | 1 | -5/+3 |
| | |||||
* | FileBackend: introduce timeouts on operations | Vika | 2021-12-31 | 1 | -34/+51 |
| | | | | | | This is to prevent spinning in a loop waiting for a lock. This hangs often, though I suspect this should have been fixed in the previous commit. | ||||
* | FileBackend: don't transfer locks over async boundaries | Vika | 2021-12-31 | 1 | -169/+188 |
| | | | | | | | This may or may not be the cause for the app hanging while waiting for a lock. Now the operations with locks are never performed over an async boundary, excluding any shenanigans that can happen when accidentally leaving a file locked over async boundaries. | ||||
* | Display pretty links in case there is more than one URL in a post | Vika | 2021-12-07 | 2 | -6/+22 |
| | |||||
* | Migrate to Rust 2021 | Vika | 2021-12-07 | 3 | -25/+25 |
| | |||||
* | Add protected locations that are visible only to logged-in users | Vika | 2021-12-07 | 1 | -1/+3 |
| | |||||
* | Small fixes for code block and vcard avatar CSS | Vika | 2021-12-07 | 1 | -0/+8 |
| | |||||
* | Disable the deprecated redis feature | Vika | 2021-12-07 | 1 | -1/+1 |
| | |||||
* | Add indicators on private posts | Vika | 2021-12-07 | 1 | -0/+5 |
| | |||||
* | Make rustfmt and clippy happy | Vika | 2021-12-06 | 9 | -119/+184 |
| | |||||
* | Added support for IndieAuth client sign in | Vika | 2021-12-06 | 10 | -167/+554 |
| | | | | | | | 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. | ||||
* | Added stuff to gitignore | Vika | 2021-12-05 | 1 | -1/+3 |
| | |||||
* | Debug JSON renderer for posts | Vika | 2021-12-05 | 1 | -0/+12 |
| | | | | Because sometimes seeing the problem is better than searching for it. | ||||
* | Code cleanup and small bugfixing in templates | Vika | 2021-12-05 | 11 | -142/+253 |
| | |||||
* | Added author mini-cards on h-entries | Vika | 2021-12-05 | 3 | -41/+100 |
| | |||||
* | frontend: Added listing feeds to the header bar | Vika | 2021-12-05 | 5 | -16/+23 |
| | |||||
* | Make the default feeds' UIDs pretty! | Vika | 2021-12-05 | 1 | -5/+5 |
| | |||||
* | Added rust-analyzer to the dev environment | Vika | 2021-12-05 | 1 | -3/+2 |
| | |||||
* | Finally finish the migration tool | Vika | 2021-12-02 | 1 | -19/+25 |
| | | | | | | | | | | It works. Launch it using the "kittybox-database-converter" command. First argument should be the old database URI, second should be the new one. It will migrate the DB for you. If you're doing this on a test machine, you can then migrate the database to production using `rsync -rl` to preserve symbolic links created by Kittybox's database backend. | ||||
* | Get rid of the unsafe code | Vika | 2021-12-02 | 1 | -7/+4 |
| | | | | | | Thanks to @Kloenk I was able to get rid of the unsafety and tell the compiler how to properly check what I needed for the StorageError to be declared thread-safe. |