snix/users/Profpatsch/whatcd-resolver
Profpatsch 42da189180 feat(users/Profpatsch/whatcd-resolver): conduit shenanigans
Some experiments in speeding up search efficiency.

This is more of a “is this possible” thing, and it looks like it’s
possible, but does not really improve anything regarding the rate
limiting.

The idea is that we can start everything at the same time as async,
but use a semaphore to have only 5 things run at once. That also means
that as soon as something is done, we immediately start the next task.
The asyncs are guaranteed to be cleaned up by the `ResourceT`
wrapper (eventually).

It’s pretty cool how Conduit makes writing these side-effecting things
pretty possible.

Change-Id: Ibadead7db293373b415840960602fa71920fc653
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13246
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2025-03-11 19:45:40 +00:00
..
services fix(users/Profpatsch/whatcd-resolver/services): dont unset builders 2024-09-13 11:13:59 +00:00
src feat(users/Profpatsch/whatcd-resolver): conduit shenanigans 2025-03-11 19:45:40 +00:00
.gitignore chore(users/Profpatsch/whatcd-resolver): ignore .ninja 2024-09-13 11:13:59 +00:00
build.ninja feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
default.nix refactor(users/Profpatsch/whatcd-resolver): init MyLabel 2025-03-11 19:45:40 +00:00
Main.hs feat(users/Profpatsch/whatcd-resolver): add executable 2023-09-17 18:05:42 +00:00
notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
README.md feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
server-notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
whatcd-resolver.cabal feat(users/Profpatsch/whatcd-resolver): conduit shenanigans 2025-03-11 19:45:40 +00:00

whatcd-resolver

To run:

ninja run-services

in one terminal (starts the background tasks)

ninja run

to start the server. It runs on 9092.

You need to be in the nix-shell in ./...

You need to set the pass key internet/redacted/api-keys/whatcd-resolver to an API key for RED.

You need to have a transmission-rpc-daemon listening on port 9091 (no auth, try ssh port forwarding lol).