Age | Commit message (Collapse) | Author | Files | Lines |
|
5.0.5
=====
- Ensure keys are strings when deleting results from S3
- Fix a regression breaking `celery --help` and `celery events`
5.0.4
=====
- DummyClient of cache+memory:// backend now shares state between threads
This fixes a problem when using our pytest integration with the in memory
result backend.
Because the state wasn't shared between threads, 6416 results in test suites
hanging on `result.get()`.
5.0.3
=====
- Make `--workdir` eager for early handling
- When using the MongoDB backend, don't cleanup if result_expires is 0 or None
- Fix passing queues into purge command
- Restore `app.start()` and `app.worker_main()`
- Detaching no longer creates an extra log file
- Result backend instances are now thread local to ensure thread safety
- Don't upgrade click to 8.x since click-repl doesn't support it yet.
- Restore preload options
5.0.2
=====
- Fix _autodiscover_tasks_from_fixups
- Flush worker prints, notably the banner
- **Breaking Change**: Remove `ha_policy` from queue definition.
This argument has no effect since RabbitMQ 3.0.
Therefore, We feel comfortable dropping it in a patch release.
- Python 3.9 support
- **Regression**: When using the prefork pool, pick the fair scheduling strategy by default
- Preserve callbacks when replacing a task with a chain
- Fix max_retries override on `self.retry()`
- Raise proper error when replacing with an empty chain
5.0.1
=====
- Specify UTF-8 as the encoding for log files
- Custom headers now propagate when using the protocol 1 hybrid messages
- Retry creating the database schema for the database results backend
in case of a race condition
- When using the Redis results backend, awaiting for a chord no longer hangs
when setting :setting:`result_expires` to 0
- When a user tries to specify the app as an option for the subcommand,
a custom error message is displayed
- Fix the `--without-gossip`, `--without-mingle`, and `--without-heartbeat`
options which now work as expected.
- Provide a clearer error message when the application cannot be loaded.
- Avoid printing deprecation warnings for settings when they are loaded from
Django settings
- Allow lowercase log levels for the `--loglevel` option
- Detaching now works as expected
- Restore broadcasting messages from `celery control`
- Pass back real result for single task chains
- Ensure group tasks a deeply serialized
- Fix chord element counting
- Restore the `celery shell` command
5.0.0
=====
- **Breaking Change** Remove AMQP result backend
- Warn when deprecated settings are used
- Expose retry_policy for Redis result backend
- Prepare Celery to support the yet to be released Python 3.9
5.0.0rc3
========
- More cleanups of leftover Python 2 support
5.0.0rc2
========
- Bump minimum required eventlet version to 0.26.1.
- Update Couchbase Result backend to use SDK V3.
- Restore monkeypatching when gevent or eventlet are used.
5.0.0rc1
========
- Allow to opt out of ordered group results when using the Redis result backend
- **Breaking Change** Remove the deprecated celery.utils.encoding module.
5.0.0b1
=======
- **Breaking Change** Drop support for the Riak result backend
- **Breaking Change** pytest plugin is no longer enabled by default
Install pytest-celery to enable it.
- **Breaking Change** Brand new CLI based on Click
5.0.0a2
=======
- Bump Kombu version to 5.0
5.0.0a1
=======
- Removed most of the compatibility code that supports Python 2
- Modernized code to work on Python 3.6 and above
|
|
4.4.0
=======
- This version is officially supported on CPython 2.7,
3.5, 3.6, 3.7 & 3.8 and is also supported on PyPy2 & PyPy3.
- Kombu 4.6.7
- Task class definitions can have retry attributes
4.4.0rc5
========
- Kombu 4.6.7
- Events bootstep disabled if no events
- SQS - Reject on failure
- Add a concurrency model with ThreadPoolExecutor
- Add auto expiry for DynamoDB backend
- Store extending result in all backends
- Fix a race condition when publishing a very large chord header
- Improve docs and test matrix
4.4.0rc4
========
- Kombu 4.6.6
- Py-AMQP 2.5.2
- Python 3.8
- Numerious bug fixes
- PyPy 7.2
4.4.0rc3
========
- Kombu 4.6.4
- Billiard 3.6.1
- Py-AMQP 2.5.1
- Avoid serializing datetime
- Fix: (group() | group()) not equals single group
- Revert "Broker connection uses the heartbeat setting from app config.
- Additional file descriptor safety checks.
- fixed call for null args
- Added generic path for cache backend.
- Fix Nested group(chain(group)) fails
- Use self.run() when overriding __call__
- Fix termination of asyncloop
- Fix migrate task to work with both v1 and v2 of the message protocol.
- Updating task_routes config during runtime now have effect.
4.4.0rc2
========
- Many bugs and regressions fixed.
- Kombu 4.6.3
4.4.0rc1
========
- Python 3.4 drop
- Kombu 4.6.1
- Replace deprecated PyMongo methods usage
- Pass task request when calling update_state
- Fix bug in remaining time calculation in case of DST time change
- Fix missing task name when requesting extended result
- Fix `collections` import issue on Python 2.7
- handle `AttributeError` in base backend exception deserializer
- Make `AsynPool`'s `proc_alive_timeout` configurable
- AMQP Support for extended result
- Fix SQL Alchemy results backend to work with extended result
- Fix restoring of exceptions with required param
- Django: Re-raise exception if `ImportError` not caused by missing tasks
module
- Django: fixed a regression putting DB connections in invalid state when
`CONN_MAX_AGE != 0`
- Fixed `OSError` leading to lost connection to broker
- Fixed an issue with inspect API unable get details of Request
- Fix mogodb backend authentication
- Change column type for Extended Task Meta args/kwargs to LargeBinary
- Handle http_auth in Elasticsearch backend results
- Fix task serializer being ignored with `task_always_eager=True`
- Fix `task.replace` to work in `.apply() as well as `.apply_async()`
- Fix sending of `worker_process_init` signal for solo worker
- Fix exception message upacking
- Add delay parameter function to beat_schedule
- Multiple documentation updates
|
|
4.3.0:
- Added support for broadcasting using a regular expression pattern
or a glob pattern to multiple Pidboxes.
- Added support for PEP 420 namespace packages.
- Added :setting:acks_on_failure_or_timeout as a setting instead of
a task only option.
- Added the :signal:task_received signal.
- Fixed a crash of our CLI that occurred for everyone using Python < 3.6.
- Fixed a crash that occurred when using the Redis result backend
while the :setting:result_expires is set to None.
- Added support the DNS seedlist connection format for the MongoDB result backend.
- Bump the minimum eventlet version to 0.24.1.
- Replace the msgpack-python package with msgpack.
- Allow scheduling error handlers which are not registered tasks in the current
worker.
- Additional fixes and enhancements to the SSL support of
the Redis broker and result backend.
|
|
|
|
|
|
* Requirements: Now depends on Kombu 4.0.2.
* Tasks: Fixed problem with JSON serialization of group
* Worker: Fixed JSON serialization issue when using inspect active and friends
* App: Fixed saferef errors when using signals
* Prefork: Fixed bug with pack requiring bytes argument on Python 2.7.5 and earlier
* Tasks: Saferepr did not handle unicode in bytestrings on Python 2
* Testing: Added new celery_worker_paremeters fixture.
* Tasks: Added new app argument to GroupResult.restore
This makes the restore method behave the same way as the GroupResult constructor.
* Tasks: Fixed type checking crash when task takes *args on Python 3
* Documentation and examples improvements
|
|
Celery is an asynchronous task queue/job queue based on distributed message
passing. It is focused on real-time operation, but supports scheduling as well.
The execution units, called tasks, are executed concurrently on a single or more
worker servers using multiprocessing, Eventlet, or gevent. Tasks can execute
asynchronously (in the background) or synchronously (wait until ready).
|