newlib

newlib

Крошечный планировщик с cron-выражениями и разбросом.

Версия 1.5.1 Python 3.12+ Лицензия MPL-2.0 PyPI

newlib заменяет системный crontab для работы, которая принадлежит вашему приложению. Он учитывает часовые пояса, добавляет разброс, чтобы сотня серверов не просыпалась одновременно, и аккуратно останавливается.

uv add newlib

Пример

from datetime import timedelta

from newlib import Scheduler

scheduler = Scheduler(
    timezone="Europe/Moscow",
    jitter=timedelta(seconds=30),
)

ok = scheduler.add("cleanup", "0 3 * * *")
print(ok)

scheduler.start()

Возможности

Документация

УстановкаТребования, установка и сборка из исходников. РуководствоПервая программа и основные понятия. ПримерыЗаконченные программы для типичных задач. НастройкиВсе параметры, их типы и значения по умолчанию. СправочникСигнатуры и поведение публичного API. ТестированиеКак тестировать код, использующий библиотеку. Решение проблемЧастые проблемы и их решения. Частые вопросыКороткие ответы на частые вопросы. Обновление версийКак переходить между мажорными версиями. Список измененийИстория релизов. БезопасностьПоддерживаемые версии и сообщения об уязвимостях. Как помочь проектуКак собрать проект и отправить изменения. ПоддержкаГде задать вопрос и как связаться с авторами.