This commit starts the refactoring process towards dropping actix (and
tokio, ...). It builds, but at this commit, Converse does *not* work.
I decided to commit to avoid more ridiculous diffs.
Included changes:
* Added dependency on rouille.
* Refactored DbExecutor (formerly actix actor) to simply be a type
with a few methods. Most actor messages still exist as they are
being referred to by handlers.
* Started refactoring two of the handlers (and their related renderer
functions) into Rouille's call scheme.
Important note: Rouille does not have safe session management out of
the box, and it will need to be implemented as this progresses.
Change-Id: I3e3f203e0705e561e1a3392e8f75dbe273d5fa81
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2861
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
This simpler, curl-based HTTP client (which I wrote years ago) is a
first step towards cleaning up the dependency mess of converse.
Dependency stats: +4, -28
Change-Id: I4f5f3c9307895d261bfb0a6bcf2337b747f9a4c0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2859
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
This does not yet change up `extern crate` and `macro_use` statements,
but since we still depend on Diesel that also wouldn't work right now.
Change-Id: I36de1b7b56f7d220f567346e13bad8da06461517
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2858
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
This project depends on Tokio, via actix, and both of those are bad
ideas. This wasn't as clear 3 years ago as it is now, but to
demonstrate it the project has amassed issues which required at least
this minimum of changes to be buildable in 2021 (using a modern
rustc).
Yes, this adds dozens of new dependencies again (because of a
top-level update) but don't worry: They will be gone when I'm done
here.
Change-Id: I1dde9dc0325da7bdcb6608359fab33e27692dc1d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2857
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Imports the converse forum software I wrote a few years ago. I want to
clean this up a bit and try using Hotwire with it.
Note: The original repository was AGPL-3.0 licensed. I'm the copyright
holder and have relicensed it to GPL-3.0 in the commit that is being
merged.
Imported from: https://github.com/tazjin/converse
git-subtree-dir: web/converse
git-subtree-mainline: 386afdc794
git-subtree-split: 09168021e7
Change-Id: Ia8b587db5174ef5b3c52910d3d027199150c58e0