mirror of
https://framagit.org/ppom/reaction
synced 2026-03-14 12:45:47 +01:00
I realized that already-ran actions where not run on startup. This is a problem because reaction is expected to ban, then unban. On startup it runs already ran action with have a still-to-be run action with an after directive. So the solution to this problem has been to move the action execution logic to the filter manager, which have a coherent view of all the action set of a filter. I also changed how pending actions are run on exit: - Before, pending tasks would be left out by the runtime quitting, and now tasks would run to exec them - Now, pending tasks are woken up by a global CancellationToken. This token also replace the shutdown channel. The daemon/mod.rs then waits for all the tasks to complete via an empty mpsc channel. TODO Add the (Match, Time) to triggers only if longuest_action_duration is non-zero. Then spawn a task that will remove past self.triggers (Match, Time) after longuest_action_duration time.
21 lines
246 B
Text
21 lines
246 B
Text
/reaction
|
|
/ip46tables
|
|
/nft46
|
|
reaction*.db
|
|
reaction*.db.old
|
|
/data
|
|
reaction*.export.json
|
|
/reaction*.sock
|
|
/result
|
|
/wiki
|
|
/deb
|
|
*.deb
|
|
*.minisig
|
|
*.qcow2
|
|
debian-packaging/*
|
|
*.swp
|
|
export-go-db/export-go-db
|
|
import-rust-db/target
|
|
/target
|
|
/local
|
|
.ccls-cache
|