forgejo-todo-checker/src/main.rs

36 lines
743 B
Rust
Raw Normal View History

2024-09-18 11:55:33 +01:00
//
2024-09-19 19:12:41 +01:00
use anyhow::Result;
use init::init_config;
2024-09-20 07:23:36 +01:00
use issues::fetch_open_issues;
2024-09-19 19:12:41 +01:00
use scanner::find_markers;
2024-09-18 11:55:33 +01:00
2024-09-19 19:12:41 +01:00
mod init;
2024-09-20 07:23:36 +01:00
mod issues;
2024-09-18 11:55:33 +01:00
mod model;
mod patterns;
2024-09-19 19:12:41 +01:00
mod scanner;
2024-09-19 19:32:15 +01:00
#[cfg(test)]
mod tests;
2024-09-20 07:23:36 +01:00
#[tokio::main]
async fn main() -> std::result::Result<(), Box<dyn std::error::Error>> {
Ok(run(kxio::network::Network::new_real()).await?)
2024-09-19 20:37:23 +01:00
}
2024-09-20 07:23:36 +01:00
async fn run(net: kxio::network::Network) -> Result<()> {
println!("Forgejo TODO Checker!");
2024-09-20 07:23:36 +01:00
let config = init_config(net)?;
2024-09-18 07:44:34 +01:00
let issues = fetch_open_issues(&config).await?;
2024-09-17 18:03:50 +01:00
let markers = find_markers(&config, issues)?;
println!("{markers}");
// TODO: loop over markers, logging any that are invalid or closed.
// TODO: if we logged any, then exit as and error
Ok(())
}