Commit graph

32 commits

Author SHA1 Message Date
Rahix 1cefb058bf manager: Fix mermaid style on dark Forgejo theme
All checks were successful
/ build (push) Successful in 1m6s
Forgejo seems to automatically choose a light font color for mermaid
graphs when the site-theme is dark.  This conflicts with the background
colors of our mermaid nodes.  Explicitly force a dark font color to
ensure the text is also readable on dark Forgejo.
2025-05-25 15:33:46 +02:00
Rahix 15726d9ee8 manager: Apply rustfmt 2025-05-25 15:33:46 +02:00
Rahix cc05ba7407 manager: Simplify very complex mermaid graphs
All checks were successful
/ build (push) Successful in 1m4s
Forgejo has a limit of 5000 characters per mermaid graph.  We started
hitting this for some issues.  Regenerate a somewhat simplified version
of the subtree in this case which hopefully does not hit the same limit
again.
2025-05-25 03:44:07 +02:00
Rahix 42ec50cb64 manager: Add license
All checks were successful
/ build (push) Successful in 1m6s
2025-05-24 21:16:29 +02:00
Rahix c08beba27b manager: Implement pagination for issue fetching
All checks were successful
/ build (push) Successful in 1m6s
Forgejo seems to limit requests to 50 issues server side, regardless of
the limit we send in our request.  This means we have to fetch each page
separately regardless.
2025-05-24 21:10:12 +02:00
Rahix d900bd80ab manager: Fix fake event not pointing at the correct repo 2025-05-23 00:46:15 +02:00
Rahix b484256246 manager: Mark completion using a label
All checks were successful
/ build (push) Successful in 1m7s
Don't use the open/close state of the issues to mark their completion.
This has friction with dependencies, because you can only add
dependencies on open issues.

Instead, issues are marked as completed using a "Completed" label now.
2025-05-23 00:44:36 +02:00
Rahix c1936c7ed2 manager: More cleanup 2025-05-22 20:37:10 +02:00
Rahix 785ff37107 manager: The big refactoring
Clean up the logic in main to make it more readable.  Factor out common
functionality into the respective modules.
2025-05-22 20:28:38 +02:00
Rahix bc54cd91fd manager: Factor out a common context object
Clean up the global data a bit by bundling it in a context object.
2025-05-22 18:47:31 +02:00
Rahix eebbd9c453 manager: Fix double comment bug
When the job for the new issue is scheduled later than another manager
run, we create a second comment due to the previously unconditional
comment creating.  Always look for an existing comment first.
2025-05-22 17:56:28 +02:00
Rahix f11d8459ba manager: Wait a bit before collecting new issue 2025-05-22 17:37:45 +02:00
Rahix 34e9a99d61 manager: Fix pagination limit for issue list
It turns out that `None` does not disable pagination, it just uses the
default limit.  Set an obscenely high limit to ensure we get the full
list.
2025-05-22 17:24:48 +02:00
Rahix e418d9d720 manager: Reduce noise from git commands 2025-05-22 17:20:01 +02:00
Rahix ec5a71b936 manager: Make graph tree more tall than wide
Helps with readability.
2025-05-22 16:59:40 +02:00
Rahix 34d7a371b3 manager: Drop wiki page updates
Let's focus on the dot-based total tree
2025-05-22 16:12:13 +02:00
Rahix a6aa02aa40 manager: wiki: Fix deprecation warning about base64::encode() 2025-05-22 16:12:13 +02:00
Rahix c93f701ef8 manager: Allow dead_code
For now, this makes development easier
2025-05-22 16:12:13 +02:00
Rahix 6d7af36726 manager: Ignore errors while removing labels 2025-05-22 15:58:13 +02:00
Rahix 24e834dde3 manager: Don't hardcode repository URL 2025-05-22 15:49:06 +02:00
Rahix d0c8389c3b manager: Apply rustfmt 2025-05-22 15:49:06 +02:00
Rahix f04beb5dea manager: Remove Stale label if present
The stale label provides an easy way to force CI runs for issues after
changing dependencies.
2025-05-22 15:49:06 +02:00
Rahix e274f6206c manager: Configure a git identity for committing 2025-05-22 15:02:57 +02:00
Rahix cf484fe21c manager: Fix ignoring subcommand exit status 2025-05-22 15:00:28 +02:00
Rahix 656b8f4b25 manager: Add new dependencies to nix shell 2025-05-22 14:55:35 +02:00
Rahix 8b66d2551a manager: Render graphviz tree and push it to git 2025-05-22 14:55:35 +02:00
Rahix 3bd79f176e manager: Apply rustfmt 2025-05-22 10:23:07 +02:00
Rahix 6d258f489f manager: Use Type/ labels instead of ty/ and don't force types
Allow arbitrary element types via the Type/# labels.
2025-05-22 10:09:59 +02:00
Rahix 81932d2ac1 manager: collect: Fix panic on non-tracked dependency 2025-05-22 10:09:22 +02:00
Rahix fb3a4a0d19 tree: Improve dot styling
Use the same/similar styles that we use for mermaid.
2025-05-22 09:51:48 +02:00
Rahix 04047052e3 manager: Add nix shell
This nix shell will also be used as the CI environment for this tool.
2025-05-22 09:49:08 +02:00
Rahix 870e54e263 manager: Add first version of the techtree manager
The techtree manager is a CI tool that derives the techtree graph from
the forgejo issues in this repository.  It then adds graph
visualizations to each issue and the wiki, to give an overview of the
tree.
2025-05-22 09:48:01 +02:00