2013-02-12 21:45:37 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Feb 12 21:42:37 UTC 2013 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.15:
|
|
|
|
|
|
- Now depends on billiard 2.7.3.21 which fixed a syntax error crash.
|
|
|
|
|
|
- Fixed bug with CELERY_SEND_TASK_SENT_EVENT.
|
|
|
|
|
|
|
2013-02-08 20:24:43 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Feb 8 20:10:26 UTC 2013 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.14:
|
|
|
|
|
|
- Now depends on Kombu 2.5.6
|
|
|
|
|
|
- Now depends on billiard 2.7.3.20
|
|
|
|
|
|
- execv is now disabled by default.
|
|
|
|
|
|
It was causing too many problems for users, you can still enable
|
|
|
|
|
|
it using the CELERYD_FORCE_EXECV setting.
|
|
|
|
|
|
execv was only enabled when transports other than amqp/redis was used,
|
|
|
|
|
|
and it's there to prevent deadlocks caused by mutexes not being released
|
|
|
|
|
|
before the process forks. Sadly it also changes the environment
|
|
|
|
|
|
introducing many corner case bugs that is hard to fix without adding
|
|
|
|
|
|
horrible hacks. Deadlock issues are reported far less often than the
|
|
|
|
|
|
bugs that execv are causing, so we now disable it by default.
|
|
|
|
|
|
Work is in motion to create non-blocking versions of these transports
|
|
|
|
|
|
so that execv is not necessary (which is the situation with the amqp
|
|
|
|
|
|
and redis broker transports)
|
|
|
|
|
|
- Chord exception behavior defined (Issue #1172).
|
|
|
|
|
|
From Celery 3.1 the chord callback will change state to FAILURE
|
|
|
|
|
|
when a task part of a chord raises an exception.
|
|
|
|
|
|
It was never documented what happens in this case,
|
|
|
|
|
|
and the actual behavior was very unsatisfactory, indeed
|
|
|
|
|
|
it will just forward the exception value to the chord callback.
|
|
|
|
|
|
For backward compatibility reasons we do not change to the new
|
|
|
|
|
|
behavior in a bugfix release, even if the current behavior was
|
|
|
|
|
|
never documented. Instead you can enable the
|
|
|
|
|
|
CELERY_CHORD_PROPAGATES setting to get the new behavior
|
|
|
|
|
|
that will be default from Celery 3.1.
|
|
|
|
|
|
See more at chord-errors.
|
|
|
|
|
|
- worker: Fixes bug with ignored and retried tasks.
|
|
|
|
|
|
The on_chord_part_return and Task.after_return callbacks,
|
|
|
|
|
|
nor the task_postrun signal should be called when the task was
|
|
|
|
|
|
retried/ignored.
|
|
|
|
|
|
Fix contributed by Vlad.
|
|
|
|
|
|
- GroupResult.join_native now respects the propagate argument.
|
|
|
|
|
|
- subtask.id added as an alias to subtask['options'].id
|
|
|
|
|
|
>>> s = add.s(2, 2)
|
|
|
|
|
|
>>> s.id = 'my-id'
|
|
|
|
|
|
>>> s['options']
|
|
|
|
|
|
{'task_id': 'my-id'}
|
|
|
|
|
|
|
|
|
|
|
|
>>> s.id
|
|
|
|
|
|
'my-id'
|
|
|
|
|
|
- worker: Fixed error `Could not start worker processes` occurring
|
|
|
|
|
|
when restarting after connection failure (Issue #1118).
|
|
|
|
|
|
- Adds new signal task-retried (Issue #1169).
|
|
|
|
|
|
- `celery events --dumper` now handles connection loss.
|
|
|
|
|
|
- Will now retry sending the task-sent event in case of connection failure.
|
|
|
|
|
|
- amqp backend: Now uses Message.requeue instead of republishing
|
|
|
|
|
|
the message after poll.
|
|
|
|
|
|
- New BROKER_HEARTBEAT_CHECKRATE setting introduced to modify the
|
|
|
|
|
|
rate at which broker connection heartbeats are monitored.
|
|
|
|
|
|
The default value was also changed from 3.0 to 2.0.
|
|
|
|
|
|
- celery.events.state.State is now pickleable.
|
|
|
|
|
|
Fix contributed by Mher Movsisyan.
|
|
|
|
|
|
- celery.datastructures.LRUCache is now pickleable.
|
|
|
|
|
|
Fix contributed by Mher Movsisyan.
|
|
|
|
|
|
- The stats broadcast command now includes the workers pid.
|
|
|
|
|
|
Contributed by Mher Movsisyan.
|
|
|
|
|
|
- New conf remote control command to get a workers current configuration.
|
|
|
|
|
|
Contributed by Mher Movsisyan.
|
|
|
|
|
|
- Adds the ability to modify the chord unlock task's countdown
|
|
|
|
|
|
argument (Issue #1146).
|
|
|
|
|
|
Contributed by Jun Sakai
|
|
|
|
|
|
- beat: The scheduler now uses the now() method of the schedule,
|
|
|
|
|
|
so that schedules can provide a custom way to get the current date and time.
|
|
|
|
|
|
Contributed by Raphaël Slinckx
|
|
|
|
|
|
- Fixed pickling of configuration modules on Windows or when execv is used
|
|
|
|
|
|
(Issue #1126).
|
|
|
|
|
|
- Multiprocessing logger is now configured with loglevel ERROR
|
|
|
|
|
|
by default.
|
|
|
|
|
|
Since 3.0 the multiprocessing loggers were disabled by default
|
|
|
|
|
|
(only configured when the MP_LOG environment variable was set).
|
|
|
|
|
|
|
- Update to 3.0.13:
- Now depends on Kombu 2.5
- py-amqp has replaced amqplib as the default transport,
gaining support for AMQP 0.9, and the RabbitMQ extensions
including Consumer Cancel Notifications and heartbeats.
- support for multiple connection URLs for failover.
- Read more in the Kombu 2.5 changelog.
- Now depends on billiard 2.7.3.19
- Fixed a deadlock issue that could occur when the producer pool
inherited the connection pool instance of the parent process.
- The --loader option now works again (Issue #1066).
- celery umbrella command: All subcommands now supports
the --workdir option (Issue #1063).
- Groups included in chains now give GroupResults (Issue #1057)
Previously it would incorrectly add a regular result instead of a group
result, but now this works:
# [4 + 4, 4 + 8, 16 + 8]
>>> res = (add.s(2, 2) | group(add.s(4), add.s(8), add.s(16)))()
>>> res
<GroupResult: a0acf905-c704-499e-b03a-8d445e6398f7 [
4346501c-cb99-4ad8-8577-12256c7a22b1,
b12ead10-a622-4d44-86e9-3193a778f345,
26c7a420-11f3-4b33-8fac-66cd3b62abfd]>
- Chains can now chain other chains and use partial arguments (Issue #1057).
Example:
>>> c1 = (add.s(2) | add.s(4))
>>> c2 = (add.s(8) | add.s(16))
>>> c3 = (c1 | c2)
# 8 + 2 + 4 + 8 + 16
>>> assert c3(8).get() == 38
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-celery?expand=0&rev=74
2013-01-07 16:42:46 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Jan 7 16:34:24 UTC 2013 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.13:
|
|
|
|
|
|
- Now depends on Kombu 2.5
|
|
|
|
|
|
- py-amqp has replaced amqplib as the default transport,
|
|
|
|
|
|
gaining support for AMQP 0.9, and the RabbitMQ extensions
|
|
|
|
|
|
including Consumer Cancel Notifications and heartbeats.
|
|
|
|
|
|
- support for multiple connection URLs for failover.
|
|
|
|
|
|
- Read more in the Kombu 2.5 changelog.
|
|
|
|
|
|
- Now depends on billiard 2.7.3.19
|
|
|
|
|
|
- Fixed a deadlock issue that could occur when the producer pool
|
|
|
|
|
|
inherited the connection pool instance of the parent process.
|
|
|
|
|
|
- The --loader option now works again (Issue #1066).
|
|
|
|
|
|
- celery umbrella command: All subcommands now supports
|
|
|
|
|
|
the --workdir option (Issue #1063).
|
|
|
|
|
|
- Groups included in chains now give GroupResults (Issue #1057)
|
|
|
|
|
|
Previously it would incorrectly add a regular result instead of a group
|
|
|
|
|
|
result, but now this works:
|
|
|
|
|
|
|
|
|
|
|
|
# [4 + 4, 4 + 8, 16 + 8]
|
|
|
|
|
|
>>> res = (add.s(2, 2) | group(add.s(4), add.s(8), add.s(16)))()
|
|
|
|
|
|
>>> res
|
|
|
|
|
|
<GroupResult: a0acf905-c704-499e-b03a-8d445e6398f7 [
|
|
|
|
|
|
4346501c-cb99-4ad8-8577-12256c7a22b1,
|
|
|
|
|
|
b12ead10-a622-4d44-86e9-3193a778f345,
|
|
|
|
|
|
26c7a420-11f3-4b33-8fac-66cd3b62abfd]>
|
|
|
|
|
|
|
|
|
|
|
|
- Chains can now chain other chains and use partial arguments (Issue #1057).
|
|
|
|
|
|
Example:
|
|
|
|
|
|
>>> c1 = (add.s(2) | add.s(4))
|
|
|
|
|
|
>>> c2 = (add.s(8) | add.s(16))
|
|
|
|
|
|
|
|
|
|
|
|
>>> c3 = (c1 | c2)
|
|
|
|
|
|
|
|
|
|
|
|
# 8 + 2 + 4 + 8 + 16
|
|
|
|
|
|
>>> assert c3(8).get() == 38
|
|
|
|
|
|
|
|
|
|
|
|
- Subtasks can now be used with unregistered tasks.
|
|
|
|
|
|
You can specify subtasks even if you just have the name:
|
|
|
|
|
|
|
|
|
|
|
|
>>> s = subtask(task_name, args=(), kwargs=())
|
|
|
|
|
|
>>> s.delay()
|
|
|
|
|
|
|
|
|
|
|
|
- The celery shell command now always adds the current
|
|
|
|
|
|
directory to the module path.
|
|
|
|
|
|
- The worker will now properly handle the pytz.AmbiguousTimeError
|
|
|
|
|
|
exception raised when an ETA/countdown is prepared while being in DST
|
|
|
|
|
|
transition (Issue #1061).
|
|
|
|
|
|
- force_execv: Now makes sure that task symbols in the original
|
|
|
|
|
|
task modules will always use the correct app instance (Issue #1072).
|
|
|
|
|
|
- AMQP Backend: Now republishes result messages that have been polled
|
|
|
|
|
|
(using result.ready() and friends, result.get() will not do this
|
|
|
|
|
|
in this version).
|
|
|
|
|
|
- Crontab schedule values can now "wrap around"
|
|
|
|
|
|
This means that values like ``11-1`` translates to ``[11, 12, 1]``.
|
|
|
|
|
|
Contributed by Loren Abrams.
|
|
|
|
|
|
- multi stopwait command now shows the pid of processes.
|
|
|
|
|
|
Contributed by Loren Abrams.
|
|
|
|
|
|
- Handling of ETA/countdown fixed when the CELERY_ENABLE_UTC
|
|
|
|
|
|
setting is disabled (Issue #1065).
|
|
|
|
|
|
- A number of uneeded properties were included in messages,
|
|
|
|
|
|
caused by accidentally passing Queue.as_dict as message properties.
|
|
|
|
|
|
- Rate limit values can now be float
|
|
|
|
|
|
This also extends the string format so that values like "0.5/s" works.
|
|
|
|
|
|
Contributed by Christoph Krybus
|
|
|
|
|
|
- Fixed a typo in the broadcast routing documentation (Issue #1026).
|
|
|
|
|
|
- Rewrote confusing section about idempotence in the task user guide.
|
|
|
|
|
|
- Fixed typo in the daemonization tutorial (Issue #1055).
|
|
|
|
|
|
- Fixed several typos in the documentation.
|
|
|
|
|
|
Contributed by Marius Gedminas.
|
|
|
|
|
|
- Batches: Now works when using the eventlet pool.
|
|
|
|
|
|
Fix contributed by Thomas Grainger.
|
|
|
|
|
|
- Batches: Added example sending results to celery.contrib.batches.
|
|
|
|
|
|
Contributed by Thomas Grainger.
|
|
|
|
|
|
- Mongodb backend: Connection max_pool_size can now be set in
|
|
|
|
|
|
CELERY_MONGODB_BACKEND_SETTINGS.
|
|
|
|
|
|
Contributed by Craig Younkins.
|
|
|
|
|
|
- Fixed problem when using earlier versions of pytz.
|
|
|
|
|
|
Fix contributed by Vlad.
|
|
|
|
|
|
- Docs updated to include the default value for the
|
|
|
|
|
|
CELERY_TASK_RESULT_EXPIRES setting.
|
|
|
|
|
|
- Improvements to the django-celery tutorial.
|
|
|
|
|
|
Contributed by Locker537.
|
|
|
|
|
|
- The add_consumer control command did not properly persist
|
|
|
|
|
|
the addition of new queues so that they survived connection failure
|
|
|
|
|
|
(Issue #1079).
|
|
|
|
|
|
|
2012-11-06 18:12:55 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Nov 6 18:00:40 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.12:
|
|
|
|
|
|
- Now depends on kombu 2.4.8
|
|
|
|
|
|
- [Redis] New and improved fair queue cycle algorithm (Kevin McCarthy).
|
|
|
|
|
|
- [Redis] Now uses a Redis-based mutex when restoring messages.
|
|
|
|
|
|
- [Redis] Number of messages that can be restored in one interval is no
|
|
|
|
|
|
longer limited (but can be set using the
|
|
|
|
|
|
unacked_restore_limit
|
|
|
|
|
|
transport option <BROKER_TRANSPORT_OPTIONS>.)
|
|
|
|
|
|
- Heartbeat value can be specified in broker URLs (Mher Movsisyan).
|
|
|
|
|
|
- Fixed problem with msgpack on Python 3 (Jasper Bryant-Greene).
|
|
|
|
|
|
- Now depends on billiard 2.7.3.18
|
|
|
|
|
|
- Celery can now be used with static analysis tools like PyDev/PyCharm/pylint
|
|
|
|
|
|
etc.
|
|
|
|
|
|
- Development documentation has moved to Read The Docs.
|
|
|
|
|
|
The new URL is: http://docs.celeryproject.org/en/master
|
|
|
|
|
|
- New CELERY_QUEUE_HA_POLICY setting used to set the default
|
|
|
|
|
|
HA policy for queues when using RabbitMQ.
|
|
|
|
|
|
New method Task.subtask_from_request returns a subtask using the current
|
|
|
|
|
|
request.
|
|
|
|
|
|
- Results get_many method did not respect timeout argument.
|
|
|
|
|
|
Fix contributed by Remigiusz Modrzejewski
|
|
|
|
|
|
- generic_init.d scripts now support setting CELERY_CREATE_DIRS to
|
|
|
|
|
|
always create log and pid directories (Issue #1045).
|
|
|
|
|
|
This can be set in your /etc/default/celeryd.
|
|
|
|
|
|
- Fixed strange kombu import problem on Python 3.2 (Issue #1034).
|
|
|
|
|
|
- Worker: ETA scheduler now uses millisecond precision (Issue #1040).
|
|
|
|
|
|
- The --config argument to programs is now supported by all loaders.
|
|
|
|
|
|
- The CASSANDRA_OPTIONS setting has now been documented.
|
|
|
|
|
|
Contributed by Jared Biel.
|
|
|
|
|
|
- Task methods celery.contrib.methods cannot be used with the old
|
|
|
|
|
|
task base class, the task decorator in that module now inherits from the new.
|
|
|
|
|
|
- An optimization was too eager and caused some logging messages to never emit.
|
|
|
|
|
|
- celery.contrib.batches now works again.
|
|
|
|
|
|
- Fixed missing whitespace in bdist_rpm requirements (Issue #1046).
|
|
|
|
|
|
- Event state's tasks_by_name applied limit before filtering by name.
|
|
|
|
|
|
Fix contributed by Alexander A. Sosnovskiy.
|
|
|
|
|
|
|
2012-09-26 18:10:11 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Sep 26 17:42:49 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.11:
|
|
|
|
|
|
- generic-init.d scripts changed permissions of /var/log & /var/run
|
|
|
|
|
|
In the daemonization tutorial the recommended directories were as follows:
|
|
|
|
|
|
|
|
|
|
|
|
CELERYD_LOG_FILE="/var/log/celery/%n.log"
|
|
|
|
|
|
CELERYD_PID_FILE="/var/run/celery/%n.pid"
|
|
|
|
|
|
|
|
|
|
|
|
But in the scripts themselves the default files were /var/log/celery%n.log
|
|
|
|
|
|
and /var/run/celery%n.pid, so if the user did not change the location
|
|
|
|
|
|
by configuration, the directories /var/log and /var/run would be
|
|
|
|
|
|
created - and worse have their permissions and owners changed.
|
|
|
|
|
|
|
|
|
|
|
|
This change means that:
|
|
|
|
|
|
|
|
|
|
|
|
- Default pid file is /var/run/celery/%n.pid
|
|
|
|
|
|
- Default log file is /var/log/celery/%n.log
|
|
|
|
|
|
|
|
|
|
|
|
- The directories are only created and have their permissions
|
|
|
|
|
|
changed if *no custom locations are set*.
|
|
|
|
|
|
|
|
|
|
|
|
Users can force paths to be created by calling the create-paths
|
|
|
|
|
|
subcommand:
|
|
|
|
|
|
|
|
|
|
|
|
$ sudo /etc/init.d/celeryd create-paths
|
|
|
|
|
|
|
|
|
|
|
|
Upgrading Celery will not update init scripts
|
|
|
|
|
|
|
|
|
|
|
|
To update the init scripts you have to re-download
|
|
|
|
|
|
the files from source control and update them manually.
|
|
|
|
|
|
You can find the init scripts for version 3.0.x at:
|
|
|
|
|
|
|
|
|
|
|
|
http://github.com/celery/celery/tree/3.0/extra/generic-init.d
|
|
|
|
|
|
|
|
|
|
|
|
- Now depends on billiard 2.7.3.17
|
|
|
|
|
|
- Fixes request stack protection when app is initialized more than
|
|
|
|
|
|
once (Issue #1003).
|
|
|
|
|
|
- ETA tasks now properly works when system timezone is not the same
|
|
|
|
|
|
as the configured timezone (Issue #1004).
|
|
|
|
|
|
- Terminating a task now works if the task has been sent to the
|
|
|
|
|
|
pool but not yet acknowledged by a pool process (Issue #1007).
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Alexey Zatelepin
|
|
|
|
|
|
- Terminating a task now properly updates the state of the task to revoked,
|
|
|
|
|
|
and sends a ``task-revoked`` event.
|
|
|
|
|
|
- Multi: No longer parses --app option (Issue #1008).
|
|
|
|
|
|
- Generic worker init script now waits for workers to shutdown by default.
|
|
|
|
|
|
- Multi: stop_verify command renamed to stopwait.
|
|
|
|
|
|
- Daemonization: Now delays trying to create pidfile/logfile until after
|
|
|
|
|
|
the working directory has been changed into.
|
|
|
|
|
|
- celery worker and celery beat commands now respects
|
|
|
|
|
|
the --no-color option (Issue #999).
|
|
|
|
|
|
- Fixed typos in eventlet examples (Issue #1000)
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Bryan Bishop.
|
|
|
|
|
|
Congratulations on opening bug #1000!
|
|
|
|
|
|
- Tasks that raise celery.exceptions.Ignore are now acknowledged.
|
|
|
|
|
|
- Beat: Now shows the name of the entry in sending due task logs.
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-20 22:32:14 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Sep 20 22:24:32 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.10:
|
|
|
|
|
|
- Now depends on kombu 2.4.7
|
|
|
|
|
|
- Now depends on billiard 2.7.3.14
|
|
|
|
|
|
- Fixes crash at startup when using Django and pre-1.4 projects
|
|
|
|
|
|
(setup_environ).
|
|
|
|
|
|
- Hard time limits now sends the KILL signal shortly after TERM,
|
|
|
|
|
|
to terminate processes that have signal handlers blocked by C extensions.
|
|
|
|
|
|
- Billiard now installs even if the C extension cannot be built.
|
|
|
|
|
|
It's still recommended to build the C extension if you are using
|
|
|
|
|
|
a transport other than rabbitmq/redis (or use forced execv for some
|
|
|
|
|
|
other reason).
|
|
|
|
|
|
- Pool now sets a ``current_process().index`` attribute that can be used to create
|
|
|
|
|
|
as many log files as there are processes in the pool.
|
|
|
|
|
|
- Canvas: chord/group/chain no longer modifies the state when called
|
|
|
|
|
|
Previously calling a chord/group/chain would modify the ids of subtasks
|
|
|
|
|
|
so that:
|
|
|
|
|
|
|
|
|
|
|
|
>>> c = chord([add.s(2, 2), add.s(4, 4)], xsum.s())
|
|
|
|
|
|
>>> c()
|
|
|
|
|
|
>>> c() <-- call again
|
|
|
|
|
|
|
|
|
|
|
|
at the second time the ids for the tasks would be the same as in the
|
|
|
|
|
|
previous invocation. This is now fixed, so that calling a subtask
|
|
|
|
|
|
won't mutate any options.
|
|
|
|
|
|
- Canvas: Chaining a chord to another task now works (Issue #965).
|
|
|
|
|
|
- Worker: Fixed a bug where the request stack could be corrupted if
|
|
|
|
|
|
relative imports are used.
|
|
|
|
|
|
|
|
|
|
|
|
Problem usually manifested itself as an exception while trying to
|
|
|
|
|
|
send a failed task result (NoneType does not have id attribute).
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Sam Cooke.
|
|
|
|
|
|
- Tasks can now raise celery.exceptions.Ignore to skip updating states
|
|
|
|
|
|
or events after return.
|
|
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
|
|
|
|
|
|
|
|
from celery.exceptions import Ignore
|
|
|
|
|
|
|
|
|
|
|
|
@task
|
|
|
|
|
|
def custom_revokes():
|
|
|
|
|
|
if redis.sismember('tasks.revoked', custom_revokes.request.id):
|
|
|
|
|
|
raise Ignore()
|
|
|
|
|
|
|
|
|
|
|
|
- The worker now makes sure the request/task stacks are not modified
|
|
|
|
|
|
by the initial Task.__call__.
|
|
|
|
|
|
|
|
|
|
|
|
This would previously be a problem if a custom task class defined
|
|
|
|
|
|
__call__ and also called super().
|
|
|
|
|
|
- Because of problems the fast local optimization has been disabled,
|
|
|
|
|
|
and can only be enabled by setting the USE_FAST_LOCALS attribute.
|
|
|
|
|
|
- Worker: Now sets a default socket timeout of 5 seconds at shutdown
|
|
|
|
|
|
so that broken socket reads do not hinder proper shutdown (Issue #975).
|
|
|
|
|
|
- More fixes related to late eventlet/gevent patching.
|
|
|
|
|
|
- Documentation for settings out of sync with reality:
|
|
|
|
|
|
|
|
|
|
|
|
- CELERY_TASK_PUBLISH_RETRY
|
|
|
|
|
|
|
|
|
|
|
|
Documented as disabled by default, but it was enabled by default
|
|
|
|
|
|
since 2.5 as stated by the 2.5 changelog.
|
|
|
|
|
|
|
|
|
|
|
|
- CELERY_TASK_PUBLISH_RETRY_POLICY
|
|
|
|
|
|
|
|
|
|
|
|
The default max_retries had been set to 100, but documented as being
|
|
|
|
|
|
3, and the interval_max was set to 1 but documented as 0.2.
|
|
|
|
|
|
The default setting are now set to 3 and 0.2 as it was originally
|
|
|
|
|
|
documented.
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Matt Long.
|
|
|
|
|
|
- Worker: Log messages when connection established and lost have been improved.
|
|
|
|
|
|
- The repr of a crontab schedule value of '0' should be '*' (Issue #972).
|
|
|
|
|
|
- Revoked tasks are now removed from reserved/active state in the worker
|
|
|
|
|
|
(Issue #969)
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Alexey Zatelepin.
|
|
|
|
|
|
- gevent: Now supports hard time limits using gevent.Timeout.
|
|
|
|
|
|
- Documentation: Links to init scripts now point to the 3.0 branch instead
|
|
|
|
|
|
of the development branch (master).
|
|
|
|
|
|
- Documentation: Fixed typo in signals user guide (Issue #986).
|
|
|
|
|
|
|
|
|
|
|
|
instance.app.queues -> instance.app.amqp.queues.
|
|
|
|
|
|
- Eventlet/gevent: The worker did not properly set the custom app
|
|
|
|
|
|
for new greenlets.
|
|
|
|
|
|
- Eventlet/gevent: Fixed a bug where the worker could not recover
|
|
|
|
|
|
from connection loss (Issue #959).
|
|
|
|
|
|
|
|
|
|
|
|
Also, because of a suspected bug in gevent the
|
|
|
|
|
|
BROKER_CONNECTION_TIMEOUT setting has been disabled
|
|
|
|
|
|
when using gevent
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-08-31 23:50:10 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Aug 31 23:44:00 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.9:
|
|
|
|
|
|
- Important note for users of Django and the database scheduler!
|
|
|
|
|
|
Recently a timezone issue has been fixed for periodic tasks,
|
|
|
|
|
|
but erroneous timezones could have already been stored in the
|
|
|
|
|
|
database, so for the fix to work you need to reset
|
|
|
|
|
|
the last_run_at fields.
|
|
|
|
|
|
|
|
|
|
|
|
You can do this by executing the following command:
|
|
|
|
|
|
|
|
|
|
|
|
$ python manage.py shell
|
|
|
|
|
|
>>> from djcelery.models import PeriodicTask
|
|
|
|
|
|
>>> PeriodicTask.objects.update(last_run_at=None)
|
|
|
|
|
|
|
|
|
|
|
|
You also have to do this if you change the timezone or
|
|
|
|
|
|
CELERY_ENABLE_UTC setting.
|
|
|
|
|
|
- Note about the CELERY_ENABLE_UTC setting.
|
|
|
|
|
|
If you previously disabled this just to force periodic tasks to work with
|
|
|
|
|
|
your timezone, then you are now *encouraged to re-enable it*.
|
|
|
|
|
|
- Now depends on Kombu 2.4.5 which fixes PyPy + Jython installation.
|
|
|
|
|
|
- Fixed bug with timezones when :setting:`CELERY_ENABLE_UTC` is disabled
|
|
|
|
|
|
(Issue #952).
|
|
|
|
|
|
- Fixed a typo in the celerybeat upgrade mechanism (Issue #951).
|
|
|
|
|
|
- Make sure the exc_info argument to logging is resolved (Issue #899).
|
|
|
|
|
|
- Fixed problem with Python 3.2 and thread join timeout overflow (Issue #796).
|
|
|
|
|
|
- A test case was occasionally broken for Python 2.5.
|
|
|
|
|
|
- Unit test suite now passes for PyPy 1.9.
|
|
|
|
|
|
- App instances now supports the with statement.
|
|
|
|
|
|
This calls the new :meth:`~celery.Celery.close` method at exit, which
|
|
|
|
|
|
cleans up after the app like closing pool connections.
|
|
|
|
|
|
|
|
|
|
|
|
Note that this is only necessary when dynamically creating apps,
|
|
|
|
|
|
e.g. for "temporary" apps.
|
|
|
|
|
|
|
|
|
|
|
|
- Support for piping a subtask to a chain.
|
|
|
|
|
|
|
|
|
|
|
|
For example:
|
|
|
|
|
|
|
|
|
|
|
|
pipe = sometask.s() | othertask.s()
|
|
|
|
|
|
new_pipe = mytask.s() | pipe
|
|
|
|
|
|
|
|
|
|
|
|
Contributed by Steve Morin.
|
|
|
|
|
|
- Fixed problem with group results on non-pickle serializers.
|
|
|
|
|
|
Fix contributed by Steeve Morin.
|
|
|
|
|
|
|
2012-08-29 18:17:50 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Aug 29 18:02:17 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.8:
|
|
|
|
|
|
- Now depends on Kombu 2.4.4
|
|
|
|
|
|
- Beat: Fixed another timezone bug with interval and crontab schedules
|
|
|
|
|
|
(Issue #943).
|
|
|
|
|
|
- Beat: The schedule file is now automatically cleared if the timezone
|
|
|
|
|
|
is changed.
|
|
|
|
|
|
The schedule is also cleared when you upgrade to 3.0.8 from an earlier
|
|
|
|
|
|
version, this to register the initial timezone info.
|
|
|
|
|
|
- Events: The worker-heartbeat event now include processed and active
|
|
|
|
|
|
count fields.
|
|
|
|
|
|
Contributed by Mher Movsisyan.
|
|
|
|
|
|
- Fixed error with error email and new task classes (Issue #931).
|
|
|
|
|
|
- BaseTask.__call__ is no longer optimized away if it has been monkey
|
|
|
|
|
|
patched.
|
|
|
|
|
|
- Fixed shutdown issue when using gevent (Issue #911 & Issue #936).
|
|
|
|
|
|
Fix contributed by Thomas Meson.
|
|
|
|
|
|
|
2012-08-17 22:42:05 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2012-08-24 22:34:37 +00:00
|
|
|
|
Fri Aug 24 22:30:22 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.7:
|
|
|
|
|
|
- Fixes several problems with periodic tasks and timezones (Issue #937).
|
|
|
|
|
|
- Now depends on kombu 2.4.2
|
|
|
|
|
|
- Redis: Fixes a race condition crash
|
|
|
|
|
|
- Fixes an infinite loop that could happen when retrying establishing
|
|
|
|
|
|
the broker connection.
|
|
|
|
|
|
- Daemons now redirect standard file descriptors to /dev/null
|
|
|
|
|
|
Though by default the standard outs are also redirected
|
|
|
|
|
|
to the logger instead, but you can disable this by changing
|
|
|
|
|
|
the CELERY_REDIRECT_STDOUTS setting.
|
|
|
|
|
|
- Fixes possible problems when eventlet/gevent is patched too late.
|
|
|
|
|
|
- LoggingProxy no longer defines fileno() (Issue #928).
|
|
|
|
|
|
- Results are now ignored for the chord unlock task.
|
|
|
|
|
|
Fix contributed by Steeve Morin.
|
|
|
|
|
|
- Cassandra backend now works if result expiry is disabled.
|
|
|
|
|
|
Fix contributed by Steeve Morin.
|
|
|
|
|
|
- The traceback object is now passed to signal handlers instead
|
|
|
|
|
|
of the string representation.
|
|
|
|
|
|
Fix contributed by Adam DePue.
|
|
|
|
|
|
- Celery command: Extensions are now sorted by name.
|
|
|
|
|
|
- A regression caused the task-failed event to be sent
|
|
|
|
|
|
with the exception object instead of its string representation.
|
|
|
|
|
|
- The worker daemon would try to create the pid file before daemonizing
|
|
|
|
|
|
to catch errors, but this file was not immediately released (Issue #923).
|
|
|
|
|
|
- Fixes Jython compatibility.
|
|
|
|
|
|
- billiard.forking_enable was called by all pools not just the
|
|
|
|
|
|
processes pool, which would result in a useless warning if the billiard
|
|
|
|
|
|
C extensions were not installed.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2012-08-17 22:42:05 +00:00
|
|
|
|
Fri Aug 17 22:34:07 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.6:
|
|
|
|
|
|
- Now depends on kombu 2.4.0
|
|
|
|
|
|
- Now depends on billiard 2.7.3.12
|
|
|
|
|
|
- Redis: Celery now tries to restore messages whenever there are no messages
|
|
|
|
|
|
in the queue.
|
|
|
|
|
|
- Crontab schedules now properly respects CELERY_TIMEZONE setting.
|
|
|
|
|
|
It's important to note that crontab schedules uses UTC time by default
|
|
|
|
|
|
unless this setting is set.
|
|
|
|
|
|
Issue #904 and django-celery #150.
|
|
|
|
|
|
- billiard.enable_forking is now only set by the processes pool.
|
|
|
|
|
|
- The transport is now properly shown by celery report
|
|
|
|
|
|
(Issue #913).
|
|
|
|
|
|
- The --app argument now works if the last part is a module name
|
|
|
|
|
|
(Issue #921).
|
|
|
|
|
|
- Fixed problem with unpickleable exceptions (billiard #12).
|
|
|
|
|
|
- Adds task_name attribute to EagerResult which is always
|
|
|
|
|
|
None (Issue #907).
|
|
|
|
|
|
- Old Task class in celery.task no longer accepts magic kwargs by
|
|
|
|
|
|
default (Issue #918).
|
|
|
|
|
|
A regression long ago disabled magic kwargs for these, and since
|
|
|
|
|
|
no one has complained about it we don't have any incentive to fix it now.
|
|
|
|
|
|
- The inspect reserved control command did not work properly.
|
|
|
|
|
|
- Should now play better with static analyzation tools by explicitly
|
|
|
|
|
|
specifying dynamically created attributes in the celery and
|
|
|
|
|
|
celery.task modules.
|
|
|
|
|
|
- Terminating a task now results in
|
|
|
|
|
|
celery.exceptions.RevokedTaskError instead of a WorkerLostError.
|
|
|
|
|
|
- AsyncResult.revoke now accepts terminate and signal arguments.
|
|
|
|
|
|
- The task-revoked event now includes new fields: terminated,
|
|
|
|
|
|
signum, and expired.
|
|
|
|
|
|
- The argument to celery.exceptions.TaskRevokedError is now one
|
|
|
|
|
|
of the reasons revoked, expired or terminated.
|
|
|
|
|
|
- Old Task class does no longer use classmethods for push_request and
|
|
|
|
|
|
pop_request (Issue #912).
|
|
|
|
|
|
- GroupResult now supports the children attribute (Issue #916).
|
|
|
|
|
|
- AsyncResult.collect now respects the intermediate argument
|
|
|
|
|
|
(Issue #917).
|
|
|
|
|
|
- Fixes example task in documentation (Issue #902).
|
|
|
|
|
|
- Eventlet fixed so that the environment is patched as soon as possible.
|
|
|
|
|
|
- eventlet: Now warns if celery related modules that depends on threads
|
|
|
|
|
|
are imported before eventlet is patched.
|
|
|
|
|
|
- Improved event and camera examples in the monitoring guide.
|
|
|
|
|
|
- Disables celery command setuptools entrypoints if the command can't be
|
|
|
|
|
|
loaded.
|
|
|
|
|
|
- Fixed broken dump_request example in the tasks guide.
|
|
|
|
|
|
|
2012-08-01 19:14:57 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Aug 1 18:58:47 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.5:
|
|
|
|
|
|
- Now depends on kombu 2.3.1 + billiard 2.7.3.11
|
|
|
|
|
|
- Fixed a bug with the -B option (``cannot pickle thread.lock objects``)
|
|
|
|
|
|
(Issue #894 + Issue #892, + django-celery #154).
|
|
|
|
|
|
- The restart_pool control command now requires the
|
|
|
|
|
|
CELERYD_POOL_RESTARTS setting to be enabled
|
|
|
|
|
|
This change was necessary as the multiprocessing event that the restart
|
|
|
|
|
|
command depends on is responsible for creating many semaphores/file
|
|
|
|
|
|
descriptors, resulting in problems in some environments.
|
|
|
|
|
|
- chain.apply now passes args to the first task (Issue #889).
|
|
|
|
|
|
- Documented previously secret options to the Django-Celery monitor
|
|
|
|
|
|
in the monitoring userguide (Issue #396).
|
|
|
|
|
|
- Old changelog are now organized in separate documents for each series,
|
|
|
|
|
|
history.
|
|
|
|
|
|
|
2012-07-26 22:25:25 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Jul 26 22:18:34 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.4:
|
|
|
|
|
|
- Now depends on Kombu 2.3
|
|
|
|
|
|
- New experimental standalone Celery monitor: Flower
|
|
|
|
|
|
See monitoring-flower to read more about it!
|
|
|
|
|
|
|
|
|
|
|
|
Contributed by Mher Movsisyan.
|
|
|
|
|
|
- Now supports AMQP heartbeats if using the new pyamqp:// transport.
|
|
|
|
|
|
- The py-amqp transport requires the amqp library to be installed:
|
|
|
|
|
|
|
|
|
|
|
|
$ pip install amqp
|
|
|
|
|
|
|
|
|
|
|
|
- Then you need to set the transport URL prefix to pyamqp://.
|
|
|
|
|
|
|
|
|
|
|
|
- The default heartbeat value is 10 seconds, but this can be changed using
|
|
|
|
|
|
the BROKER_HEARTBEAT setting
|
|
|
|
|
|
|
|
|
|
|
|
BROKER_HEARTBEAT = 5.0
|
|
|
|
|
|
|
|
|
|
|
|
- If the broker heartbeat is set to 10 seconds, the heartbeats will be
|
|
|
|
|
|
monitored every 5 seconds (double the hertbeat rate).
|
|
|
|
|
|
|
|
|
|
|
|
See the Kombu 2.3 changelog for more information.
|
|
|
|
|
|
|
|
|
|
|
|
- Now supports RabbitMQ Consumer Cancel Notifications, using the pyamqp://
|
|
|
|
|
|
transport.
|
|
|
|
|
|
This is essential when running RabbitMQ in a cluster.
|
|
|
|
|
|
|
|
|
|
|
|
See the Kombu 2.3 changelog for more information.
|
|
|
|
|
|
|
|
|
|
|
|
- Delivery info is no longer passed directly through.
|
|
|
|
|
|
|
|
|
|
|
|
It was discovered that the SQS transport adds objects that can't
|
|
|
|
|
|
be pickled to the delivery info mapping, so we had to go back
|
|
|
|
|
|
to using the whitelist again.
|
|
|
|
|
|
|
|
|
|
|
|
Fixing this bug also means that the SQS transport is now working again.
|
|
|
|
|
|
|
|
|
|
|
|
- The semaphore was not properly released when a task was revoked (Issue #877).
|
|
|
|
|
|
|
|
|
|
|
|
This could lead to tasks being swallowed and not released until a worker
|
|
|
|
|
|
restart.
|
|
|
|
|
|
|
|
|
|
|
|
Thanks to Hynek Schlawack for debugging the issue.
|
|
|
|
|
|
|
|
|
|
|
|
- Retrying a task now also forwards any linked tasks.
|
|
|
|
|
|
|
|
|
|
|
|
This means that if a task is part of a chain (or linked in some other
|
|
|
|
|
|
way) and that even if the task is retried, then the next task in the chain
|
|
|
|
|
|
will be executed when the retry succeeds.
|
|
|
|
|
|
|
|
|
|
|
|
- Chords: Now supports setting the interval and other keyword arguments
|
|
|
|
|
|
to the chord unlock task.
|
|
|
|
|
|
- The interval can now be set as part of the chord subtasks kwargs::
|
|
|
|
|
|
|
|
|
|
|
|
chord(header)(body, interval=10.0)
|
|
|
|
|
|
|
|
|
|
|
|
- In addition the chord unlock task now honors the Task.default_retry_delay
|
|
|
|
|
|
option, used when none is specified, which also means that the default
|
|
|
|
|
|
interval can also be changed using annotations:
|
|
|
|
|
|
|
|
|
|
|
|
CELERY_ANNOTATIONS = {
|
|
|
|
|
|
'celery.chord_unlock': {
|
|
|
|
|
|
'default_retry_delay': 10.0,
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
- New @Celery.add_defaults method can add new default configuration
|
|
|
|
|
|
dicts to the applications configuration.
|
|
|
|
|
|
|
|
|
|
|
|
For example:
|
|
|
|
|
|
|
|
|
|
|
|
config = {'FOO': 10}
|
|
|
|
|
|
|
|
|
|
|
|
celery.add_defaults(config)
|
|
|
|
|
|
|
|
|
|
|
|
is the same as celery.conf.update(config) except that data will not be
|
|
|
|
|
|
copied, and that it will not be pickled when the worker spawns child
|
|
|
|
|
|
processes.
|
|
|
|
|
|
|
|
|
|
|
|
In addition the method accepts a callable:
|
|
|
|
|
|
|
|
|
|
|
|
def initialize_config():
|
|
|
|
|
|
# insert heavy stuff that can't be done at import time here.
|
|
|
|
|
|
|
|
|
|
|
|
celery.add_defaults(initialize_config)
|
|
|
|
|
|
|
|
|
|
|
|
which means the same as the above except that it will not happen
|
|
|
|
|
|
until the celery configuration is actually used.
|
|
|
|
|
|
|
|
|
|
|
|
As an example, Celery can lazily use the configuration of a Flask app::
|
|
|
|
|
|
|
|
|
|
|
|
flask_app = Flask()
|
|
|
|
|
|
celery = Celery()
|
|
|
|
|
|
celery.add_defaults(lambda: flask_app.config)
|
|
|
|
|
|
|
|
|
|
|
|
- Revoked tasks were not marked as revoked in the result backend (Issue #871).
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Hynek Schlawack.
|
|
|
|
|
|
|
|
|
|
|
|
- Eventloop now properly handles the case when the epoll poller object
|
|
|
|
|
|
has been closed (Issue #882).
|
|
|
|
|
|
|
|
|
|
|
|
- Fixed syntax error in funtests/test_leak.py
|
|
|
|
|
|
|
|
|
|
|
|
Fix contributed by Catalin Iacob.
|
|
|
|
|
|
|
|
|
|
|
|
- group/chunks: Now accepts empty task list (Issue #873).
|
|
|
|
|
|
- New method names:
|
|
|
|
|
|
|
|
|
|
|
|
- Celery.default_connection() ➠ @Celery.connection_or_acquire.
|
|
|
|
|
|
- Celery.default_producer() ➠ @Celery.producer_or_acquire.
|
|
|
|
|
|
|
|
|
|
|
|
The old names still work for backward compatibility.
|
|
|
|
|
|
|
2012-07-20 21:17:03 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Jul 20 21:12:59 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.3:
|
|
|
|
|
|
- amqplib passes the channel object as part of the delivery_info
|
|
|
|
|
|
and it's not pickleable, so we now remove it.
|
|
|
|
|
|
|
2012-07-10 22:46:07 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Jul 10 22:43:17 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.1:
|
|
|
|
|
|
- Now depends on kombu 2.2.5
|
|
|
|
|
|
- inspect now supports limit argument::
|
|
|
|
|
|
myapp.control.inspect(limit=1).ping()
|
|
|
|
|
|
- Beat: now works with timezone aware datetime's.
|
|
|
|
|
|
- Task classes inheriting from celery import Task
|
|
|
|
|
|
mistakingly enabled accept_magic_kwargs.
|
|
|
|
|
|
- Fixed bug in inspect scheduled (Issue #829).
|
|
|
|
|
|
- Beat: Now resets the schedule to upgrade to UTC.
|
|
|
|
|
|
- The celery worker command now works with eventlet/gevent.
|
|
|
|
|
|
Previously it would not patch the environment early enough.
|
|
|
|
|
|
- The celery command now supports extension commands
|
|
|
|
|
|
using setuptools entry-points.
|
|
|
|
|
|
Libraries can add additional commands to the celery
|
|
|
|
|
|
command by adding an entry-point like::
|
|
|
|
|
|
|
|
|
|
|
|
setup(
|
|
|
|
|
|
entry_points=[
|
|
|
|
|
|
'celery.commands': [
|
|
|
|
|
|
'foo = my.module:Command',
|
|
|
|
|
|
],
|
|
|
|
|
|
],
|
|
|
|
|
|
...)
|
|
|
|
|
|
|
|
|
|
|
|
The command must then support the interface of
|
|
|
|
|
|
celery.bin.base.Command.
|
|
|
|
|
|
- contrib.migrate: New utilities to move tasks from one queue to another.
|
|
|
|
|
|
- celery.contrib.migrate.move_tasks
|
|
|
|
|
|
- celery.contrib.migrate.move_task_by_id
|
|
|
|
|
|
- The task-sent event now contains exchange and routing_key
|
|
|
|
|
|
fields.
|
|
|
|
|
|
- Fixes bug with installing on Python 3.
|
|
|
|
|
|
Fix contributed by Jed Smith.
|
|
|
|
|
|
|
2012-07-07 14:14:56 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Jul 7 14:05:06 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 3.0.0:
|
|
|
|
|
|
- A new and improved API, that is both simpler and more powerful.
|
|
|
|
|
|
- The worker is now thread-less, giving great performance improvements.
|
|
|
|
|
|
- The new “Canvas” makes it easy to define complex workflows.
|
|
|
|
|
|
- All of Celery’s command line programs are now available from a
|
|
|
|
|
|
single celery umbrella command.
|
|
|
|
|
|
- This is the last version to support Python 2.5.
|
|
|
|
|
|
- Support for the new librabbitmq C client.
|
|
|
|
|
|
- Redis support is more reliable with improved ack emulation.
|
|
|
|
|
|
- Celery now always uses UTC
|
|
|
|
|
|
- Over 600 commits, 30k additions/36k deletions.
|
|
|
|
|
|
- Please read documentation for full list of changes:
|
|
|
|
|
|
http://docs.celeryproject.org/en/latest/whatsnew-3.0.html#whatsnew-3-0
|
|
|
|
|
|
|
2012-06-28 09:05:25 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Jun 28 09:04:40 UTC 2012 - saschpe@suse.de
|
|
|
|
|
|
|
|
|
|
|
|
- Conflict with kombu >= 2.2.0 (see previous changes entry)
|
|
|
|
|
|
|
2012-04-16 22:51:59 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2012-06-08 13:27:00 +00:00
|
|
|
|
Wed Jun 6 17:31:29 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
2012-06-28 09:05:25 +00:00
|
|
|
|
- Update to 2.5.5:
|
2012-06-08 13:27:00 +00:00
|
|
|
|
This is a dummy release performed for the following goals:
|
|
|
|
|
|
- Protect against force upgrading to Kombu 2.2.0
|
|
|
|
|
|
- Version parity with django-celery
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2012-04-16 22:51:59 +00:00
|
|
|
|
Mon Apr 16 22:47:39 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.5.3:
|
|
|
|
|
|
* A bug causes messages to be sent with UTC timestamps even though
|
|
|
|
|
|
CELERY_ENABLE_UTC was not enabled (Issue #636).
|
|
|
|
|
|
* celerybeat: No longer crashes if an entry's args is set to None
|
|
|
|
|
|
(Issue #657).
|
|
|
|
|
|
* Autoreload did not work if a module's __file__ attribute
|
|
|
|
|
|
was set to the modules '.pyc' file. (Issue #647).
|
|
|
|
|
|
* Fixes early 2.5 compatibility where __package__ does not exist
|
|
|
|
|
|
(Issue #638).
|
|
|
|
|
|
|
2012-04-11 18:32:40 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2012-04-13 17:24:03 +00:00
|
|
|
|
Wed Mar 14 13:19:14 UTC 2012 - alexandre@exatati.com.br
|
2012-04-11 18:32:40 +00:00
|
|
|
|
|
2012-04-13 17:24:03 +00:00
|
|
|
|
- Do not touch files without a submitrequest.
|
2012-04-11 18:32:40 +00:00
|
|
|
|
|
2012-03-19 11:35:00 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2012-04-13 17:24:03 +00:00
|
|
|
|
Wed Mar 14 13:00:41 UTC 2012 - alexandre@exatati.com.br
|
2012-03-19 11:35:00 +00:00
|
|
|
|
|
2012-04-13 17:24:03 +00:00
|
|
|
|
- License tag fixed to BSD-3-Clause.
|
2012-03-19 11:35:00 +00:00
|
|
|
|
|
2012-03-14 10:29:26 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Mar 14 10:29:11 UTC 2012 - saschpe@suse.de
|
|
|
|
|
|
|
|
|
|
|
|
- Don't buildrequire pymongo, it's not yet in Factory and only needed to let
|
|
|
|
|
|
some additional tests pass. It's however still suggested.
|
|
|
|
|
|
|
2012-03-10 17:57:30 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Mar 10 17:44:01 UTC 2012 - saschpe@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- Suggest python-eventlet, python-gevent, python-pymongo, python-pytyrant
|
|
|
|
|
|
- Recommend python-curses, python-pyOpenSSL
|
|
|
|
|
|
- Run testsuite
|
|
|
|
|
|
- Changes file cleanup
|
|
|
|
|
|
|
2012-03-01 17:49:37 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Mar 1 17:47:07 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.5.1:
|
|
|
|
|
|
* Eventlet/Gevent: A small typo caused celeryd to hang when eventlet/gevent
|
|
|
|
|
|
was used, this was because the environment was not monkey patched
|
|
|
|
|
|
early enough.
|
|
|
|
|
|
* Eventlet/Gevent: Another small typo caused the mediator to be started
|
|
|
|
|
|
with eventlet/gevent, which would make celeryd sometimes hang at shutdown.
|
|
|
|
|
|
* Mulitprocessing: Fixed an error occurring if the pool was stopped
|
|
|
|
|
|
before it was properly started.
|
|
|
|
|
|
* Proxy objects now redirects __doc__ and __name__ so help(obj)
|
|
|
|
|
|
works.
|
|
|
|
|
|
* Internal timer (timer2) now logs exceptions instead of swallowing them
|
|
|
|
|
|
* celeryctl shell: can now be started with --eventlet or
|
|
|
|
|
|
--gevent options to apply their monkey patches.
|
|
|
|
|
|
|
2012-02-24 22:28:45 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Feb 24 22:26:12 UTC 2012 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.5.0:
|
|
|
|
|
|
- Considerable size of changelog, please read
|
|
|
|
|
|
http://docs.celeryproject.org/en/latest/whatsnew-2.5.html or
|
|
|
|
|
|
the Changelog file inside the package.
|
|
|
|
|
|
|
2011-12-28 17:54:46 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Dec 28 17:52:49 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.6:
|
|
|
|
|
|
- The group id was not changed if both --uid and --gid specified.
|
|
|
|
|
|
|
2011-12-02 23:45:50 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Dec 2 23:43:13 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.5:
|
|
|
|
|
|
- Periodic task interval schedules were accidentally rounded down,
|
|
|
|
|
|
resulting in some periodic tasks being executed early.
|
|
|
|
|
|
- Logging of humanized times in the celerybeat log is now more detailed.
|
|
|
|
|
|
- New brokers section in the Getting Started part of the Documentation
|
|
|
|
|
|
This replaces the old tut-otherqueues tutorial, and adds
|
|
|
|
|
|
documentation for MongoDB, Beanstalk and CouchDB.
|
|
|
|
|
|
|
2011-11-28 01:33:10 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Nov 25 21:56:24 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.4:
|
|
|
|
|
|
- [Security: CELERYSA-0001] Daemons would set effective id’s
|
|
|
|
|
|
rather than real id’s when the --uid/--gid arguments to
|
|
|
|
|
|
celeryd-multi, celeryd_detach, celerybeat and celeryev were used.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
- Processes pool: Fixed rare deadlock at shutdown
|
|
|
|
|
|
- Webhook tasks issued the wrong HTTP POST headers
|
2011-11-28 01:33:10 +00:00
|
|
|
|
The Content-Type header has been changed from
|
|
|
|
|
|
application/json ⇒ application/x-www-form-urlencoded, and adds
|
|
|
|
|
|
a proper Content-Length header.
|
|
|
|
|
|
- Daemonization cookbook: Adds a configuration example using
|
2012-03-10 17:57:30 +00:00
|
|
|
|
Django and virtualenv together
|
2011-11-28 01:33:10 +00:00
|
|
|
|
- Generic init scripts now automatically creates log and pid
|
2012-03-10 17:57:30 +00:00
|
|
|
|
file directories
|
2011-11-28 01:33:10 +00:00
|
|
|
|
|
2011-11-22 22:26:28 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Nov 22 22:25:20 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.3:
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Fixes module import typo in celeryctl
|
2011-11-22 22:26:28 +00:00
|
|
|
|
|
2011-11-07 23:30:03 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2011-11-14 12:37:16 +00:00
|
|
|
|
Mon Nov 14 12:35:54 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.2:
|
|
|
|
|
|
- Program module no longer uses relative imports so that it is
|
|
|
|
|
|
possible to do python -m celery.bin.name.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2011-11-07 23:30:03 +00:00
|
|
|
|
Mon Nov 7 23:26:56 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.1:
|
|
|
|
|
|
* celeryctl inspect commands was missing output.
|
|
|
|
|
|
* processes pool: Decrease polling interval for less idle CPU usage.
|
|
|
|
|
|
* processes pool: MaybeEncodingError was not wrapped in ExceptionInfo
|
|
|
|
|
|
* celeryd: would silence errors occuring after task consumer started.
|
|
|
|
|
|
* logging: Fixed a bug where unicode in stdout redirected log messages
|
2012-03-10 17:57:30 +00:00
|
|
|
|
couldn't be written
|
2011-11-07 23:30:03 +00:00
|
|
|
|
|
2011-11-04 17:32:08 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Nov 4 17:20:46 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.4.0:
|
|
|
|
|
|
* Now supports Python 3.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Fixed deadlock in worker process handling
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* AMQP Result backend: Now expires results by default.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Eventlet: Fixed problem with shutdown
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* Broker transports can be now be specified using URLs
|
|
|
|
|
|
* The deprecated celery.loaders.setup_loader() function has been
|
|
|
|
|
|
removed.
|
|
|
|
|
|
* The CELERY_TASK_ERROR_WHITELIST setting has been replaced by a
|
2012-03-10 17:57:30 +00:00
|
|
|
|
more flexible approach
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* There are additional deprecations.
|
|
|
|
|
|
* No longer depends on pyparsing.
|
|
|
|
|
|
* Now depends on Kombu 1.4.3.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* CELERY_IMPORTS can now be a scalar value
|
|
|
|
|
|
* Fixed a memory leak when using the thread pool
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* The statedb was not saved at exit.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Adds EMAIL_USE_TLS to enable secure SMTP connections
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* Now handles missing fields in task messages as documented in the
|
|
|
|
|
|
message format documentation.
|
|
|
|
|
|
* Fixed race condition in celery.events.state (celerymon/celeryev)
|
2012-03-10 17:57:30 +00:00
|
|
|
|
where task info would be removed while iterating over it
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* The Cache, Cassandra, MongoDB, Redis and Tyrant backends now respects
|
2012-03-10 17:57:30 +00:00
|
|
|
|
the CELERY_RESULT_SERIALIZER setting
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* Logging calls no longer manually formats messages, but delegates that
|
|
|
|
|
|
to the logging system, so tools like Sentry can easier work with the
|
2012-03-10 17:57:30 +00:00
|
|
|
|
messages
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* celeryd_multi now supports a stop_verify command to wait for
|
|
|
|
|
|
processes to shutdown.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Cache backend did not work if the cache key was unicode
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* New setting CELERY_RESULT_DB_SHORT_LIVED_SESSIONS added, which if
|
2012-03-10 17:57:30 +00:00
|
|
|
|
enabled will disable the caching of SQLAlchemy sessions
|
|
|
|
|
|
* All result backends now implements __reduce__ so that they can be pickled
|
|
|
|
|
|
* celeryd-multi did not work on Windows
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* New-style CELERY_REDIS_* settings now takes precedence over the old
|
2012-03-10 17:57:30 +00:00
|
|
|
|
REDIS_* configuration keys
|
|
|
|
|
|
* Generic celerybeat init script no longer sets bash -e
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* Documented that Chords do not work well with redis-server versions
|
|
|
|
|
|
before 2.2.
|
|
|
|
|
|
* The CELERYBEAT_MAX_LOOP_INTERVAL setting was not respected.
|
|
|
|
|
|
* inspect.registered_tasks renamed to inspect.registered for naming
|
|
|
|
|
|
consistency.
|
|
|
|
|
|
* Worker logged the string representation of args and kwargs without
|
2012-03-10 17:57:30 +00:00
|
|
|
|
safe guards
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* RHEL init script: Changed celeryd startup priority.
|
|
|
|
|
|
* KeyValueStoreBackend.get_many did not respect the timeout argument
|
|
|
|
|
|
* celerybeat/celeryev’s –workdir option did not chdir before after
|
2012-03-10 17:57:30 +00:00
|
|
|
|
configuration was attempted
|
2011-11-04 17:32:08 +00:00
|
|
|
|
* After deprecating 2.4 support we can now name modules correctly,
|
|
|
|
|
|
since we can take use of absolute imports.
|
|
|
|
|
|
* AUTHORS file is now sorted alphabetically.
|
|
|
|
|
|
|
2011-09-23 13:31:30 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Sep 23 12:35:58 UTC 2011 - oliver.bengs@opensuse.org
|
|
|
|
|
|
|
|
|
|
|
|
- Added python-dateutil to Requires,
|
|
|
|
|
|
needed by %py_sitedir/celery/schedules.py
|
|
|
|
|
|
|
2011-09-19 18:45:15 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Sep 19 18:42:37 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.3.3:
|
|
|
|
|
|
* Monkey patching sys.stdout could result in the worker
|
|
|
|
|
|
crashing if the replacing object did not define isatty
|
|
|
|
|
|
* CELERYD option in /etc/default/celeryd should not
|
|
|
|
|
|
be used with generic init scripts.
|
|
|
|
|
|
|
2011-09-08 01:45:37 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Sep 8 01:42:58 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.3.2:
|
|
|
|
|
|
* Improved Contributing guide.
|
|
|
|
|
|
* Now depends on Kombu 1.3.1.
|
|
|
|
|
|
* Task.request now contains the current worker host name
|
|
|
|
|
|
* It is now easier for app subclasses to extend how they are
|
|
|
|
|
|
pickled.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* purge/discard_all was not working correctly
|
2011-09-08 01:45:37 +00:00
|
|
|
|
* he coloring of log messages didn’t handle non-ASCII data well
|
|
|
|
|
|
* [Windows] the multiprocessing pool tried to import os.kill even
|
2012-03-10 17:57:30 +00:00
|
|
|
|
though this is not available there
|
2011-09-08 01:45:37 +00:00
|
|
|
|
* Fixes case where the worker could become unresponsive because of
|
|
|
|
|
|
tasks exceeding the hard time limit.
|
|
|
|
|
|
* The task-sent event was missing from the event reference.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* ResultSet.iterate now returns results as they finish
|
2011-09-08 01:45:37 +00:00
|
|
|
|
* Retries will no longer be performed when tasks are called directly
|
|
|
|
|
|
(using __call__).
|
|
|
|
|
|
* Eventlet no longer crashes if autoscale is enabled.
|
|
|
|
|
|
* py24 target removed from tox.ini.
|
|
|
|
|
|
|
2011-08-08 01:10:34 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Aug 8 01:02:52 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.3.1:
|
|
|
|
|
|
* The CELERY_AMQP_TASK_RESULT_EXPIRES setting did not work,
|
|
|
|
|
|
resulting in an AMQP related error about not being able to
|
2012-03-10 17:57:30 +00:00
|
|
|
|
serialize floats while trying to publish task states
|
2011-08-08 01:10:34 +00:00
|
|
|
|
|
2011-08-05 18:10:07 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Aug 5 18:03:01 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.3.0:
|
|
|
|
|
|
- Please refer to the Changelog file or
|
|
|
|
|
|
http://celery.readthedocs.org/en/latest/changelog.html#version-2-3-0.
|
|
|
|
|
|
|
2011-07-05 17:58:14 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Jul 5 12:51:47 UTC 2011 - appleonkel@opensuse.org
|
|
|
|
|
|
|
|
|
|
|
|
- fixed Requires:
|
|
|
|
|
|
* python-tyrant is renamed to python-pytyrant
|
|
|
|
|
|
* added python-pyparsing
|
|
|
|
|
|
|
2011-06-13 15:38:16 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Jun 13 15:35:25 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.7:
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* New signals: after_setup_logger and after_setup_task_logger
|
2011-06-13 15:38:16 +00:00
|
|
|
|
These signals can be used to augment logging configuration
|
|
|
|
|
|
after Celery has set up logging.
|
|
|
|
|
|
* Redis result backend now works with Redis 2.4.4.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* celeryd_multi: The :option:--gid option now works correctly.
|
2011-06-13 15:38:16 +00:00
|
|
|
|
* celeryd: Retry wrongfully used the repr of the traceback instead
|
|
|
|
|
|
of the string representation.
|
|
|
|
|
|
* App.config_from_object: Now loads module, not attribute of module.
|
|
|
|
|
|
* Fixed issue where logging of objects would give "<Unrepresentable: ...>"
|
|
|
|
|
|
|
2011-06-08 12:25:29 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Jun 8 12:25:02 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Fix Require from python-daemon to python-python-daemon.
|
|
|
|
|
|
|
2011-04-15 15:43:51 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Apr 15 15:27:33 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.6:
|
|
|
|
|
|
- Please read Changelog file for News and Fixes notes.
|
|
|
|
|
|
|
2011-03-26 02:10:00 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2011-03-29 01:17:54 +00:00
|
|
|
|
Tue Mar 29 01:09:32 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.5:
|
|
|
|
|
|
- Please read Changelog file for News and Fixes notes.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2011-03-26 02:10:00 +00:00
|
|
|
|
Sat Mar 26 02:05:53 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Regenerate spec file with py2pack;
|
|
|
|
|
|
- Add Changelog, README and TODO files as documentation.
|
|
|
|
|
|
|
2011-02-20 18:47:54 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sun Feb 20 18:43:50 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.4:
|
|
|
|
|
|
* celeryd: 2.2.3 broke error logging, resulting in tracebacks not being logged.
|
|
|
|
|
|
* AMQP result backend: Polling task states did not work properly if there were
|
|
|
|
|
|
more than one result message in the queue.
|
|
|
|
|
|
* TaskSet.apply_async() and TaskSet.apply() now supports an optional
|
|
|
|
|
|
taskset_id keyword argument (Issue #331).
|
|
|
|
|
|
* The current taskset id (if any) is now available in the task context as
|
|
|
|
|
|
request.context (Issue #329).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* SQLAlchemy result backend: date_done was no longer part of the results as it had
|
2011-02-20 18:47:54 +00:00
|
|
|
|
been accidentally removed. It is now available again (Issue #325).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* SQLAlchemy result backend: Added unique constraint on Task.task_id and
|
|
|
|
|
|
TaskSet.taskset_id. Tables needs to be recreated for this to take effect.
|
2011-02-20 18:47:54 +00:00
|
|
|
|
* Fixed exception raised when iterating on the result of TaskSet.apply().
|
|
|
|
|
|
* Tasks Userguide: Added section on choosing a result backend.
|
|
|
|
|
|
|
2011-02-12 17:12:38 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Feb 12 17:06:00 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.3:
|
|
|
|
|
|
- Now depends on Kombu 1.0.3
|
|
|
|
|
|
- Task.retry now supports a max_retries argument, used to change
|
|
|
|
|
|
the default value.
|
|
|
|
|
|
- multiprocessing.cpu_count may raise NotImplementedError on
|
|
|
|
|
|
platforms where this is not supported (Issue #320).
|
|
|
|
|
|
- Coloring of log messages broke if the logged object was not a
|
|
|
|
|
|
string.
|
|
|
|
|
|
- Fixed several typos in the init script documentation.
|
|
|
|
|
|
- A regression caused Task.exchange and Task.routing_key to no
|
|
|
|
|
|
longer have any effect. This is now fixed.
|
|
|
|
|
|
- Routing Userguide: Fixes typo, routers in CELERY_ROUTES must be
|
|
|
|
|
|
instances, not classes.
|
|
|
|
|
|
- celeryev did not create pidfile even though the --pidfile
|
|
|
|
|
|
argument was set.
|
|
|
|
|
|
- Task logger format was no longer used. (Issue #317).
|
|
|
|
|
|
The id and name of the task is now part of the log message
|
|
|
|
|
|
again.
|
|
|
|
|
|
- A safe version of repr() is now used in strategic places to
|
|
|
|
|
|
ensure objects with a broken __repr__ does not crash the
|
|
|
|
|
|
worker, or otherwise make errors hard to understand (Issue #298).
|
|
|
|
|
|
- Remote control command active_queues: did not account for
|
|
|
|
|
|
queues added at runtime.
|
|
|
|
|
|
In addition the dictionary replied by this command now has a
|
|
|
|
|
|
different structure: the exchange key is now a dictionary
|
|
|
|
|
|
containing the exchange declaration in full.
|
|
|
|
|
|
- The -Q option to celeryd removed unused queue declarations, so
|
|
|
|
|
|
routing of tasks could fail.
|
|
|
|
|
|
Queues are no longer removed, but rather
|
|
|
|
|
|
app.amqp.queues.consume_from() is used as the list of queues
|
|
|
|
|
|
to consume from.
|
|
|
|
|
|
This ensures all queues are available for routing purposes.
|
|
|
|
|
|
- celeryctl: Now supports the inspect active_queues command.
|
|
|
|
|
|
|
2011-02-03 22:39:18 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Feb 3 22:37:08 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.2:
|
|
|
|
|
|
* Celerybeat could not read the schedule properly, so entries in
|
2012-03-10 17:57:30 +00:00
|
|
|
|
:setting:CELERYBEAT_SCHEDULE would not be scheduled.
|
|
|
|
|
|
* Task error log message now includes exc_info again.
|
|
|
|
|
|
* The eta argument can now be used with task.retry.
|
2011-02-03 22:39:18 +00:00
|
|
|
|
Previously it was overwritten by the countdown argument.
|
|
|
|
|
|
* celeryd-multi/celeryd_detach: Now logs errors occuring when
|
2012-03-10 17:57:30 +00:00
|
|
|
|
executing the celeryd command.
|
|
|
|
|
|
* daemonizing cookbook: Fixed typo --time-limit 300 ->
|
|
|
|
|
|
--time-limit=300
|
2011-02-03 22:39:18 +00:00
|
|
|
|
* Colors in logging broke non-string objects in log messages.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* setup_task_logger no longer makes assumptions about
|
2011-02-03 22:39:18 +00:00
|
|
|
|
magic task kwargs.
|
|
|
|
|
|
|
2011-02-02 17:35:56 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Feb 2 17:33:41 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.1;
|
|
|
|
|
|
* Eventlet pool was leaking memory (Issue #308).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Deprecated function celery.execute.delay_task was
|
2011-02-02 17:35:56 +00:00
|
|
|
|
accidentally removed,
|
|
|
|
|
|
now available again.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* BasePool.on_terminate stub did not exist
|
2011-02-02 17:35:56 +00:00
|
|
|
|
* celeryd detach: Adds readable error messages if user/group
|
|
|
|
|
|
name does not exist.
|
|
|
|
|
|
* Smarter handling of unicode decod errors when logging errors.
|
|
|
|
|
|
|
2011-02-01 11:26:08 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Feb 1 11:22:43 UTC 2011 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.2.0:
|
|
|
|
|
|
- Lot of fixes, deprecations, and incompatible changes.
|
|
|
|
|
|
Please refer to
|
|
|
|
|
|
http://packages.python.org/celery/changelog.html#version-2-2-0
|
|
|
|
|
|
for a full description.
|
|
|
|
|
|
|
2010-12-04 09:28:19 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Dec 4 09:22:02 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.1.4:
|
|
|
|
|
|
* Celery programs now hijacks the root logger by default (Issue #250).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Execution options to apply_async now takes precedence over options
|
2010-12-04 09:28:19 +00:00
|
|
|
|
returned by active routers. This was a regression introduced recently
|
|
|
|
|
|
(Issue #244).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* celeryev curses monitor: Long arguments are now truncated so curses
|
2010-12-04 09:28:19 +00:00
|
|
|
|
doesn't crash with out of bounds errors. (Issue #235).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* celeryd: Channel errors occurring while handling control commands no
|
2010-12-04 09:28:19 +00:00
|
|
|
|
longer crash the worker but are instead logged with severity error.
|
|
|
|
|
|
* SQLAlchemy database backend: Fixed a race condition occurring when
|
|
|
|
|
|
the client wrote the pending state. Just like the Django database backend,
|
|
|
|
|
|
it does no longer save the pending state (Issue #261 + Issue #262).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* task.apply: propagate=True now raises exceptions from the original
|
2010-12-04 09:28:19 +00:00
|
|
|
|
frame, keeping the same stacktrace (Issue #256).
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* Error email body now uses repr(exception) instead of str(exception),
|
2010-12-04 09:28:19 +00:00
|
|
|
|
as the latter could result in Unicode decode errors (Issue #245).
|
|
|
|
|
|
* Error e-mail timeout value is now configurable by using the
|
2012-03-10 17:57:30 +00:00
|
|
|
|
:setting:EMAIL_TIMEOUT setting.
|
|
|
|
|
|
* celeryev: Now works on Windows (but the curses monitor won't work without
|
2010-12-04 09:28:19 +00:00
|
|
|
|
having curses).
|
|
|
|
|
|
* Unit test output no longer emits non-standard characters.
|
2012-03-10 17:57:30 +00:00
|
|
|
|
* celeryd: The broadcast consumer is now closed if the connection is reset.
|
|
|
|
|
|
* celeryd: Now properly handles errors occurring while trying to acknowledge
|
2010-12-04 09:28:19 +00:00
|
|
|
|
the message.
|
|
|
|
|
|
|
2010-11-09 16:42:42 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Nov 9 16:41:30 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.1.3.
|
|
|
|
|
|
|
2010-10-29 16:18:53 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Oct 29 16:17:05 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.1.2.
|
|
|
|
|
|
|
2010-10-14 14:40:40 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Oct 14 14:34:14 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.1.1.
|
|
|
|
|
|
|
2010-10-09 21:03:50 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Oct 9 21:02:51 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.1.0.
|
|
|
|
|
|
|
2010-08-28 17:05:48 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Aug 28 17:02:01 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.0.3.
|
|
|
|
|
|
|
2010-07-26 01:18:47 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Jul 26 01:13:28 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.0.2.
|
|
|
|
|
|
|
2010-07-14 12:47:29 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Jul 14 12:46:22 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.0.1.
|
|
|
|
|
|
|
2010-07-05 11:39:21 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Jul 5 11:36:44 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 2.0.0.
|
|
|
|
|
|
|
2010-06-30 18:05:05 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Jun 30 17:59:25 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.6.
|
|
|
|
|
|
|
2010-06-01 16:28:36 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Jun 1 16:26:12 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.5.
|
|
|
|
|
|
|
2010-05-31 11:24:03 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon May 31 11:12:11 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.4.
|
|
|
|
|
|
|
2010-05-15 16:45:49 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat May 15 16:38:22 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.3.
|
|
|
|
|
|
|
2010-03-22 02:50:54 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2010-03-31 13:17:07 +00:00
|
|
|
|
Wed Mar 31 13:13:02 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.2;
|
|
|
|
|
|
- Spec file cleaned with spec-cleaner.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2010-03-22 02:50:54 +00:00
|
|
|
|
Mon Mar 22 02:48:51 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.1.
|
|
|
|
|
|
|
2010-02-10 16:06:33 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Feb 10 15:57:58 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 1.0.0.
|
|
|
|
|
|
|
2010-02-05 14:11:59 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Feb 5 14:02:37 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 0.8.4.
|
|
|
|
|
|
|
2009-12-22 18:46:27 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Dec 22 18:42:32 UTC 2009 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 0.8.3.
|
|
|
|
|
|
|
2009-11-20 15:39:23 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Nov 20 15:37:27 UTC 2009 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 0.8.2;
|
|
|
|
|
|
- Building as noarch for openSUSE >= 11.2.
|
|
|
|
|
|
|
2009-11-17 17:24:14 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Nov 17 17:21:26 UTC 2009 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Update to 0.8.1.
|
|
|
|
|
|
|
2009-09-22 15:08:54 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Sep 22 15:07:28 UTC 2009 - alexandre@exatati.com.br
|
|
|
|
|
|
|
|
|
|
|
|
- Initial package (0.8) for openSUSE.
|