2 Commits

Author SHA1 Message Date
5ab54585c0 feat: update noworkers
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/tag Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2025-08-08 21:58:33 +02:00
119fb101cf feat: add sys limit
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-01 14:42:36 +02:00
5 changed files with 23 additions and 8 deletions

View File

@@ -110,6 +110,6 @@ See [LICENSE-MIT](LICENSE-MIT) and [LICENSE-APACHE](LICENSE-APACHE) for details.
## Contribute
Simply create an issue here or pr https://github.com/kjuulh/noworkers.git, development happens publicly at: https://git.front.kjuulh.io/kjuulh/noworkers.
Simply create an issue here or pr https://github.com/kjuulh/noworkers.git, development happens publicly at: https://git.kjuulh.io/kjuulh/noworkers.

View File

@@ -4,7 +4,7 @@ edition = "2024"
readme = "../../README.md"
version.workspace = true
license.workspace = true
repository = "https://git.front.kjuulh.io/kjuulh/noworkers"
repository = "https://git.kjuulh.io/kjuulh/noworkers"
authors = ["kjuulh <contact@kasperhermansen.com>"]
description = "A small asyncronous worker pool manages thread pool limiting, cancellation and error propogation, inspired by golangs errgroup (requires tokio)"

View File

@@ -3,6 +3,24 @@ use std::{future::Future, sync::Arc};
use tokio::{sync::Mutex, task::JoinHandle};
use tokio_util::sync::CancellationToken;
pub mod extensions {
use crate::Workers;
pub trait WithSysLimitCpus {
fn with_limit_to_system_cpus(&mut self) -> &mut Self;
}
impl WithSysLimitCpus for Workers {
fn with_limit_to_system_cpus(&mut self) -> &mut Self {
self.with_limit(
std::thread::available_parallelism()
.expect("to be able to get system cpu info")
.into(),
)
}
}
}
type ErrChan = Arc<
Mutex<(
Option<tokio::sync::oneshot::Sender<anyhow::Error>>,

View File

@@ -1,6 +1,6 @@
# yaml-language-server: $schema=https://git.front.kjuulh.io/kjuulh/cuddle/raw/branch/main/schemas/base.json
# yaml-language-server: $schema=https://git.kjuulh.io/kjuulh/cuddle/raw/branch/main/schemas/base.json
base: "git@git.front.kjuulh.io:kjuulh/cuddle-rust-lib-plan.git"
base: "git@git.kjuulh.io:kjuulh/cuddle-rust-lib-plan.git"
vars:
service: "noworkers"
@@ -12,6 +12,6 @@ please:
repository: "noworkers"
branch: main
settings:
api_url: "https://git.front.kjuulh.io"
api_url: "https://git.kjuulh.io"
actions:
rust:

View File

@@ -1,3 +0,0 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
}