croniter
croniter provides iteration for datetime object with cron like format
Decision gist · record as of 2026-08-14
Yes. croniter is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and requires only one lightweight dependency. It is a focused, well-established tool for anyone working with cron-style scheduling in Python. Install it if you need to parse cron expressions or calculate scheduled times programmatically.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later.
- Low install friction with a single runtime dependency (python-dateutil).
- Actively maintained with a recent release; last commit on 2026-08-08.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
last release 2026-07-10 (35 days) · last repo commit 2026-08-08 · 559 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 91,978,994 downloads/mo, #368 on PyPI
Alternatives
Verify before relying
from croniter import croniter
from datetime import datetime
base = datetime(2010, 1, 25, 4, 46)
iter = croniter('*/5 * * * *', base) # every 5 minutes
print(iter.get_next(datetime)) # 2010-01-25 04:50:00- Whether strict validation (cross-field day/month checking) is enabled by default or opt-in.
- Performance characteristics when iterating over large time ranges or complex cron expressions.
- Timezone handling and whether the package supports timezone-aware datetime objects.
What it is and what it does
croniter is a Python library that interprets cron expressions and generates the next or previous datetime values that match a given schedule. It accepts standard cron format (minute, hour, day, month, day-of-week) and returns datetime objects representing when a scheduled task would run. The library supports common cron features like ranges, lists, step values, and special characters (e.g., 'L' for last day of month, 'W' for nearest weekday), as well as optional strict validation to catch impossible date combinations like February 31st.
You use it by creating a croniter object with a cron expression and a start datetime, then calling get_next() or get_prev() repeatedly to walk forward or backward through matching times. It's commonly used in job schedulers, task runners, and any system that needs to calculate when a cron-like schedule will next fire. The package depends only on python-dateutil for calendar calculations.
Use it for
- Calculate the next scheduled time for a background job or cron task without running a system cron daemon.
- Validate cron expressions before storing them in a configuration or database.
- Build a task scheduler that needs to know when jobs should run based on cron syntax.
- Generate a list of upcoming execution times for a recurring task to display in a UI.
- Iterate backward through past occurrences of a scheduled event for audit or replay purposes.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
croniter is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and requires only one lightweight dependency. It is a focused, well-established tool for anyone working with cron-style scheduling in Python. Install it if you need to parse cron expressions or calculate scheduled times programmatically.
Install
croniter on PyPI
Before you install
Low install friction with a single runtime dependency (python-dateutil). Actively maintained with a recent release; last commit on 2026-08-08. Part of the Pallets Community Ecosystem.
Requires Python 3.9 or later.
License in practice
MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
Quickstart
from croniter import croniter
from datetime import datetime
base = datetime(2010, 1, 25, 4, 46)
iter = croniter('*/5 * * * *', base) # every 5 minutes
print(iter.get_next(datetime)) # 2010-01-25 04:50:00
Verify before relying
- Whether strict validation (cross-field day/month checking) is enabled by default or opt-in.
- Performance characteristics when iterating over large time ranges or complex cron expressions.
- Timezone handling and whether the package supports timezone-aware datetime objects.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagepython-dateutil |
| Maintenance | Actively maintained 35 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 91,978,994 / month, #368 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: croniter-6.2.4-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “cron expression datetime iteration”
- cronitercroniter iterates over datetime objects using cron expression syntax,…
- cron-converterParses cron schedule strings into structured formats and generates…
- cron-validatorValidates Unix cron expressions, matches them against specific…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Parses, validates, and calculates occurrences of AWS EventBridge cron expressions, which differ from standard Unix cron syntax.
Parses cron schedule strings into structured formats and generates next/previous execution times for datetime objects using cron-like scheduling rules.
Install it if you need to parse cron expressions, iterate over scheduled times, or validate datetimes against cron rules.
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.
Parses and evaluates cron expressions to find matching execution times, with support for Debian cron syntax including DST handling, optional seconds field, and advanced features like last-day-of-month and nth-weekday matching.
Install it if you need to parse or evaluate cron expressions in Python—particularly if you require Debian cron compatibility or advanced features like…
Parses crontab schedule expressions and calculates the delay in seconds until the next scheduled execution time.
However, the aging maintenance status (no active development in over a year) and high install friction (source distribution) mean you should verify compatibility with…
Parses and iterates over AWS CloudWatch cron expressions to find matching UTC datetimes, moving forward or backward from a given point.
However, maintenance is dormant—no updates since the last commit in August 2024—so it will not receive fixes for new AWS cron features or Python compatibility issues.
See also tzcron · python-crontab · quartz-cron-checker · pycron