Changelog¶
v4.2.0 🌈¶
🚀 Features¶
- Add
get_current_job()helper to access the running job from within a task #326 #373 - Show the job callable return value in the admin execution lists #336
- Suggest
@job-registered callables in the Task admincallablefield (autocomplete) #252
🐛 Bug Fixes¶
- Fix workers failing to connect with
redis(redis-py) >= 8.0.0 when configured with host/port #375
🧰 Maintenance¶
- Fix the
FAKEREDIS=Truetest configuration so the suite can run without a real broker - Bump CI broker images to redis 8.8.0 and valkey 9.1.0
v4.1.0 🌈¶
Welcome @cclauss and @DhavalGojiya as new maintainers!
🚀 Features¶
🐛 Bug Fixes¶
- Ensured transactional safety when writing to redis #296
- Correct error masking in
get_scheduled_taskand worker TTL expiry #360 - Handle
Nonescheduled_time inTaskAdmin.next_run#363 #365 - Fix module permission check for queues and workers admin #313
- Check for a valid Task before rendering its link #318
- Fix annotation handling for Python 3.14+ #305 #309
🧰 Maintenance¶
- Add ruff linting rules to CI #314 #312 #310 #317
- Add pre-commit hooks with codespell, pyproject-fmt, and pyproject validation #316 #322
- Add intro video to README #308
- Add Python 3.14 and free-threaded 3.14t to test matrix #302 #306
- Turn off fail-fast in CI #303
- Fix typos in docs #304
- Replace legacy
US/Easterntimezone withAmerica/New_York#368 - Improve CI pipeline speed and supply chain security #355
- Add CI check to validate
uv.lockis up-to-date #300
v4.0.8 🌈¶
🐛 Bug Fixes¶
- fix:registries do not keep connections
v4.0.7 🌈¶
🐛 Bug Fixes¶
- Fix: Scheduled jobs fail to execute: {'scheduled_time': ['Scheduled time must be in the future']} #297
- Fix Error with deserialize JobModel due to multi-processing #291
🧰 Maintenance¶
- Improve GitHub workflow performance using ruff action @DhavalGojiya #294
v4.0.6 🌈¶
🐛 Bug Fixes¶
- Issue on task admin showing list of jobs where jobs have been deleted from broker #285
- Task admin view shows next run currently #288
🧰 Maintenance¶
- Added typing to many files
v4.0.5 🌈¶
🐛 Bug Fixes¶
- fix:repeatable task without start date #276
- fix:admin list of tasks showing local datetime #280
- fix:wait for job child process using os.waitpid #281
🧰 Maintenance¶
- refactor some tests
v4.0.4 🌈¶
🐛 Bug Fixes¶
🧰 Maintenance¶
- Fix gha zizmor findings
- Update dependencies to latest versions
v4.0.3 🌈¶
🐛 Bug Fixes¶
- Updated
scheduler_workermanagement command argument to--without-schedulersince the worker has a scheduler by default.
v4.0.2 🌈¶
🐛 Bug Fixes¶
- Add type hint for
JOB_METHODS_LIST - Fix issue creating new
ONCEtask without a scheduled time #270
🧰 Maintenance¶
- Update dependencies to latest versions
- Migrate to use
uvinstead ofpoetryfor package management
v4.0.0 🌈¶
See breaking changes in 4.0.0 beta versions.
🐛 Bug Fixes¶
v4.0.0b3 🌈¶
Refactor the code to make it more organized and easier to maintain. This includes:
- All types are under
typesinstead of separated tobroker_typesandsettings_types. - Added
__all__tomodels, and other packages.
v4.0.0b2 🌈¶
🐛 Bug Fixes¶
- Fix bug when
SCHEDULER_CONFIGisSchedulerConfiguration
v4.0.0b1 🌈¶
Breaking Changes¶
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_statsrqworker=>scheduler_worker
Settings:
SCHEDULER_CONFIGis now aSchedulerConfigurationobject to help IDE guide settings.SCHEDULER_QUEUESis now a list ofQueueConfigurationobjects to help IDE guide settings.- Configuring queue to use
SSL/SSL_CERT_REQS/SOCKET_TIMEOUTis now done usingCONNECTION_KWARGSinQueueConfigurationpython 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.
v3.0.2 🌈¶
🐛 Bug Fixes¶
- Fix issue updating wrong field #233
v3.0.1 🌈¶
🐛 Bug Fixes¶
- Lookup error issue #228.
🧰 Maintenance¶
- Migrated to use ruff instead of flake8/black
v3.0.0 🌈¶
Breaking Changes¶
- Renamed
REDIS_CLIENT_KWARGSconfiguration toCLIENT_KWARGS.
🚀 Features¶
- Created a new
Taskmodel representing all kind of scheduled tasks.- In future versions,
CronTask,ScheduledTaskandRepeatableTaskwill be removed. Taskmodel has atask_typefield to differentiate between the types of tasks.- Old tasks in the database will be migrated to the new
Taskmodel automatically.
- In future versions,
🧰 Maintenance¶
- Update dependencies to latest versions.
v2.1.1 🌈¶
🐛 Bug Fixes¶
- Support for valkey sentinel configuration @amirreza8002 (#191)
- Fix issue with task being scheduled despite being already scheduled #202
v2.1.0 🌈¶
🚀 Features¶
- Support for custom job-class for every worker, using
--job-classoption inrqworkercommand. @gabriels1234 (#160) - Support for integrating with sentry, using
--sentry-dsn,--sentry-debug, and--sentry-ca-certsoptions inrqworkercommand. - Support for using ValKey as broker instead of redis.
🧰 Maintenance¶
- Refactor settings module.
v2.0.0 🌈¶
Breaking Changes¶
- Remove support for django 3.* and 4.*. Only support django 5.0 and above.
v1.3.4 🌈¶
🧰 Maintenance¶
- Update dependencies to latest versions
v1.3.3 🌈¶
🐛 Bug Fixes¶
- Fix issue of django generating a new migration when settings.SCHEDULER_QUEUES is changed #119
v1.3.2 🌈¶
v1.3.1 🌈¶
🐛 Bug Fixes¶
- Fix workers' page when there are no queues #83
🧰 Maintenance¶
v1.3.0 🌈¶
🚀 Features¶
- Add to CronTask and RepeatableTask counters for successful/failed runs.
🧰 Maintenance¶
- Support for django 5.0
- Update homepage url @dirkmueller (#65)
v1.2.4 🌈¶
🐛 Bug Fixes¶
- Fix for non-existent task @gabriels1234 (#62)
🧰 Maintenance¶
- Use rq
fetch_many
v1.2.3 🌈¶
🐛 Bug Fixes¶
- Fix When a job fails it becomes unscheduled #45
v1.2.1 🌈¶
🐛 Bug Fixes¶
- Fix infinite loop on callback calling is_scheduled() #37.
v1.2.0 🌈¶
🚀 Features¶
- Rename
*Jobmodels to*Taskto differentiate.
v1.1.0 🌈¶
🚀 Features¶
- 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.
🐛 Bug Fixes¶
v1.0.2 🌈¶
🧰 Maintenance¶
- Update dependencies
🐛 Bug Fixes¶
- Add missing migration and check for missing migrations
v1.0.1 🌈¶
- Update dependencies
- Remove redundant log calls
v1.0.0 🌈¶
- Migrated from django-rq-scheduler