This version is a full revamp of the package. The main changes are related to removing the RQ dependency. Worker/Queue/Job are all implemented in the package itself. This change allows for more flexibility and control over the tasks.
Management commands:
rqstats
=>scheduler_stats
rqworker
=>scheduler_worker
Settings:
SCHEDULER_CONFIG
is now aSchedulerConfiguration
object to help IDE guide settings.SCHEDULER_QUEUES
is now a list ofQueueConfiguration
objects to help IDE guide settings.- Configuring queue to use
SSL
/SSL_CERT_REQS
/SOCKET_TIMEOUT
is now done usingCONNECTION_KWARGS
inQueueConfiguration
SCHEDULER_QUEUES: Dict[str, QueueConfiguration] = { 'default': QueueConfiguration( HOST='localhost', PORT=6379, USERNAME='some-user', PASSWORD='some-password', CONNECTION_KWARGS={ # Eventual additional Broker connection arguments 'ssl_cert_reqs': 'required', 'ssl':True, }, ), # ... }
- For how to configure in
settings.py
, please see the settings documentation.
- Lookup error issue #228.
- Migrated to use ruff instead of flake8/black
- Renamed
REDIS_CLIENT_KWARGS
configuration toCLIENT_KWARGS
.
- Created a new
Task
model representing all kind of scheduled tasks.- In future versions,
CronTask
,ScheduledTask
andRepeatableTask
will be removed. Task
model has atask_type
field to differentiate between the types of tasks.- Old tasks in the database will be migrated to the new
Task
model automatically.
- In future versions,
- Update dependencies to latest versions.
- Support for valkey sentinel configuration @amirreza8002 (#191)
- Fix issue with task being scheduled despite being already scheduled #202
- Support for custom job-class for every worker, using
--job-class
option inrqworker
command. @gabriels1234 (#160) - Support for integrating with sentry, using
--sentry-dsn
,--sentry-debug
, and--sentry-ca-certs
options inrqworker
command. - Support for using ValKey as broker instead of redis.
- Refactor settings module.
- Remove support for django 3.* and 4.*. Only support django 5.0 and above.
- Update dependencies to latest versions
- Fix issue of django generating a new migration when settings.SCHEDULER_QUEUES is changed #119
- Fix issue with job_details template on python3.12 @cyber237 #87
- Fix workers' page when there are no queues #83
- Removes psycopg2 dependency from pyproject.toml @mbi (#78)
- Add to CronTask and RepeatableTask counters for successful/failed runs.
- Support for django 5.0
- Update homepage url @dirkmueller (#65)
- Fix for non-existent task @gabriels1234 (#62)
- Use rq
fetch_many
- Fix When a job fails it becomes unscheduled #45
- Fix infinite loop on callback calling is_scheduled() #37.
- Rename
*Job
models to*Task
to differentiate.
- Enable using stats view using api token
- Reverted, active jobs are not marked as scheduled as there is currently no new job instance for them.
- #32 Running jobs should be marked as scheduled jobs. @rstalbow (#33)
- Update dependencies
- Add missing migration and check for missing migrations
- Update dependencies
- Remove redundant log calls
- Migrated from django-rq-scheduler