Intro
ChronoX is a project to extend functionalities of the conventional cron utility;
It provides more expressive power (day of year, month of week, span of time) by using expressions (let's call it cronx) similar to the conventional one;
Besides conventional next/prev 1 search, ChronoX provides convinient functions to directly and efficiently compute the next/prev n
occurence of desired pattern,
where n
could be extremely large! Most conventional implementations require loops which leads to a O(n) time complexity, whereas ChronoX utilizes a optimized algorithm to reduce the time complexity down to somewhere between constant and log, here's a casual benchmark between ChronoX rust implementation and a popular rust crate implement the conventional cron;
If you need to express the following patterns:
- day of year
- week of month
- time span between start and end
or, you need to compute time N
leaps away,
ChronoX would be your right choice!
Project Overview
This project currently includes:
-
python implementation, available on Github and pip
-
Rust implemented API services for demonstration