version-0.1.0
Pre-release
Pre-release
version-0.1.0
The initial alpha implements the full public API surface of gpscheduler:
- Config-driven scheduling — declare jobs (cron, callable, args) in YAML via
gpconfig; nothing is hardcoded in
application code. @scheduleddecorator — marks a module-level function as schedulable;
located by dotted path and validated against a strict process-local Registry.@worker_initdecorator — builds an expensive object once per execution
context and injects it asgp_context; never crosses a process boundary.job_globals/gp_globals— opt-in scheduler-wide config values injected
into functions that declare thegp_globalsparameter.- Variable 5/6-segment cron — paste-compatible with standard crontab, with
an optional leading-seconds field for sub-minute precision. - Thread and process executors — each job picks its pool; process jobs get
pickle preflight at load time. max_runs— optional cap on job executions before automatic removal.- Fail-Early validation — bad config, unknown functions, signature
mismatches, and unpicklable args fail loudly at load time. - Cross-platform graceful shutdown —
Ctrl+Con Windows,SIGINT/SIGTERM
on POSIX, with a configurable timeout. GPSchedulerengine + CLI —create_scheduler/run_schedulerfor
embedded use;gpscheduler run/list-jobsconsole commands.- Bilingual docs — English / 简体中文 MkDocs site.