skillfed

cronex

This module provides an easy to use interface for cron-like task scheduling.

cronex v0.1.3.1 100.4K downloads/30d#12,987 on PyPI69
Permissive license MIT Abandoned released

What it is and what it does

cronex is a cron expression parser and trigger checker. It takes a cron-format string (minute, hour, day, month, weekday plus optional command comment) and evaluates whether a given time tuple matches the schedule. The library implements Vixie Cron syntax fully and adds Java Quartz's non-standard L, W, and # operators for last-day-of-month, nearest-weekday, and nth-occurrence-of-weekday patterns. It also supports repeaters—a custom extension using % notation to fire at arbitrary intervals (e.g., every 9 hours) without the phase-drift issues of standard cron's slash notation.

The package has no runtime dependencies and is small enough to embed in a scheduler loop. Its main use case is checking whether a scheduled event should fire at a given moment, typically within a polling loop that reads crontab-like files. The library is abandoned and targets Python 2.x; modern Python compatibility is unverified.

Use it for:

  • Check if a scheduled task should run at a specific time when building a custom task scheduler or cron daemon.
  • Parse and validate cron expressions from user input or configuration files before storing them.
  • Implement arbitrary-interval periodic triggers (e.g., every 9 hours) without the phase-drift of standard cron slash notation.
  • Evaluate last-day-of-month or nth-occurrence-of-weekday patterns using Quartz-style L, W, and # operators.
  • Migrate from a system cron to an in-process Python scheduler while preserving existing cron syntax.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Evaluates cron expressions to determine if a scheduled task should trigger at a given time, supporting standard Vixie Cron syntax plus Java Quartz extensions and arbitrary-interval repeaters.

No. The package is abandoned (last release November 2018, last commit November 2021) and targets Python 2.x; compatibility with modern Python is unverified. High install friction and no runtime dependencies suggest it may require compilation or manual setup. Unless you are maintaining legacy Python 2 code or have verified it works on your target Python version, use a maintained alternative.

Install

cronex on PyPI

pip

pip install cronex

uv

uv add cronex

poetry

poetry add cronex

Installing cronex

Before you install

High install friction with no runtime dependencies. Package is abandoned—last release November 2018, last commit November 2021—and targets Python 2.4–2.7 primarily. Not maintained for modern Python versions.

License in practice

MIT license is permissive; you may use, modify, and distribute freely with attribution. No restrictions on commercial use.

Quickstart

import cronex

job = cronex.CronExpression("0 0 * * 1-5 backup")
if job.check_trigger((2010, 5, 1, 7, 0)):
    print("Trigger fires")

Package classifiers indicate Python 2.4–2.7 and Python 3 support, but no requires_python constraint; compatibility with modern Python versions is unverified.

Verify before relying

  • Whether the package actually works on Python 3.x despite being written for Python 2.x.
  • Whether the package has been tested or used successfully in production since its last commit in November 2021.
  • Whether the high install friction (source distribution only) reflects build or compilation requirements.

Package facts

License MIT (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 2,840 days since the last release
Last repo commit
First released
Downloads 100,382/month — #12,987 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: cronex-0.1.3.1.tar.gz

Keywords: cron

License :: OSI Approved :: MIT LicenseOperating System :: POSIXProgramming Language :: Python :: 2Programming Language :: Python :: 2.4Programming Language :: Python :: 2.5Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3

Tags

cron expression parsercron trigger evaluationcron schedule checkertask scheduling librarycron syntax validatorperiodic task schedulercron job timing
schedulingcron-compatiblelegacy

More Utilities packages