e5dd14f468
- New experimental ZeroMQ transport. Contributed by John Watson. - Redis: Ack timed-out messages were not restored when using the eventloop. - Now uses pickle protocol 2 by default to be cross-compatible with Python 3. The protocol can also now be changed using the PICKLE_PROTOCOL environment variable. - Adds Transport.supports_ev attribute. - Pika: Queue purge was not working properly. Fix contributed by Steeve Morin. - Pika backend was no longer working since Kombu 2.3 Fix contributed by Steeve Morin. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-kombu?expand=0&rev=49
726 lines
30 KiB
Plaintext
726 lines
30 KiB
Plaintext
-------------------------------------------------------------------
|
||
Fri Aug 17 20:24:04 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.4.0:
|
||
- New experimental ZeroMQ transport.
|
||
Contributed by John Watson.
|
||
- Redis: Ack timed-out messages were not restored when using the eventloop.
|
||
- Now uses pickle protocol 2 by default to be cross-compatible with Python 3.
|
||
The protocol can also now be changed using the PICKLE_PROTOCOL
|
||
environment variable.
|
||
- Adds Transport.supports_ev attribute.
|
||
- Pika: Queue purge was not working properly.
|
||
Fix contributed by Steeve Morin.
|
||
- Pika backend was no longer working since Kombu 2.3
|
||
Fix contributed by Steeve Morin.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Aug 1 18:57:38 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.3.2:
|
||
- Fixes problem with deserialization in Python 3.
|
||
- Aditional changes from 2.3.1:
|
||
- librabbitmq: Can now handle messages that does not have a
|
||
content_encoding/content_type set (Issue #149).
|
||
|
||
Fix contributed by C Anthony Risinger.
|
||
|
||
- Beanstalk: Now uses localhost by default if the URL does not
|
||
contain a host.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jul 26 00:01:34 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.3.0:
|
||
- New pyamqp:// transport!
|
||
The new py-amqp library is a fork of amqplib started with the
|
||
following goals:
|
||
- Uses AMQP 0.9.1 instead of 0.8
|
||
- Should support all RabbitMQ extensions
|
||
- API compatible with librabbitmq so that it can be used
|
||
as a pure-python replacement in environments where rabbitmq-c cannot
|
||
be compiled.
|
||
|
||
py-amqp: http://amqp.readthedocs.org/
|
||
|
||
If you start using use py-amqp instead of amqplib you can enjoy many
|
||
advantages including:
|
||
|
||
- Heartbeat support (Issue #79 + Issue #131)
|
||
- Consumer Cancel Notifications (Issue #131)
|
||
- Publisher Confirms
|
||
|
||
amqplib has not been updated in a long while, so maintaining our own fork
|
||
ensures that we can quickly roll out new features and fixes without
|
||
resorting to monkey patching.
|
||
|
||
To use the py-amqp transport you must install the amqp library:
|
||
|
||
$ pip install amqp
|
||
|
||
and change the connection URL to use the correct transport:
|
||
|
||
>>> conn = Connection('pyamqp://guest:guest@localhost//')
|
||
|
||
|
||
The pyamqp:// transport will be the default fallback transport
|
||
in Kombu version 3.0, when librabbitmq is not installed,
|
||
and librabbitmq will also be updated to support the same features.
|
||
|
||
- Connection now supports heartbeat argument.
|
||
If enabled you must make sure to manually maintain heartbeats
|
||
by calling the Connection.heartbeat_check at twice the rate
|
||
of the specified heartbeat interval.
|
||
|
||
E.g. if you have Connection(heartbeat=10),
|
||
then you must call Connection.heartbeat_check() every 5 seconds.
|
||
|
||
if the server has not sent heartbeats at a suitable rate then
|
||
the heartbeat check method must raise an error that is listed
|
||
in Connection.connection_errors.
|
||
|
||
The attribute Connection.supports_heartbeats has been added
|
||
for the ability to inspect if a transport supports heartbeats
|
||
or not.
|
||
|
||
Calling heartbeat_check on a transport that does
|
||
not support heartbeats results in a noop operation.
|
||
|
||
- SQS: Fixed bug with invalid characters in queue names.
|
||
Fix contributed by Zach Smith.
|
||
- utils.reprcall: Fixed typo where kwargs argument was an empty tuple by
|
||
default, and not an empty dict.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Jul 11 12:52:40 UTC 2012 - saschpe@suse.de
|
||
|
||
- Re-enable testsuite and add it's build-time dependencies
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jul 10 22:40:59 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.6:
|
||
- Adds ``messaging.entry_to_queue`` for compat with previous versions.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jul 10 16:34:37 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.5:
|
||
- Pidbox: Now sets queue expire at 10 seconds for reply queues.
|
||
- EventIO: Now ignores ``ValueError`` raised by epoll unregister.
|
||
- MongoDB: Fixes Issue #142
|
||
Fix by Flavio Percoco Premoli
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jul 5 16:30:11 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.4:
|
||
- Support for msgpack-python 0.2.0 (Issue #143)
|
||
The latest msgpack version no longer supports Python 2.5, so if you're
|
||
still using that you need to depend on an earlier msgpack-python version.
|
||
|
||
Fix contributed by Sebastian Insua
|
||
- kombu.common.maybe_declare no longer caches entities with the
|
||
auto_delete flag set.
|
||
- New experimental filesystem transport.
|
||
Contributed by Bobby Beever.
|
||
- Virtual Transports: Now support anonymous queues and exchanges.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jun 25 02:37:27 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.3:
|
||
- BrokerConnection now renamed to Connection.
|
||
The name Connection has been an alias for a very long time,
|
||
but now the rename is official in the documentation as well.
|
||
The Connection alias has been available since version 1.1.3,
|
||
and BrokerConnection will still work and is not deprecated.
|
||
- Connection.clone() now works for the sqlalchemy transport.
|
||
- kombu.common.eventloop, kombu.utils.uuid,
|
||
and kombu.utils.url.parse_url can now be
|
||
imported from the kombu module directly.
|
||
- Pidbox transport callback after_reply_message_received now happens
|
||
in a finally block.
|
||
- Trying to use the librabbitmq:// transport will now show the right
|
||
name in the ImportError if librabbitmq is not installed.
|
||
The librabbitmq falls back to the older pylibrabbitmq name for
|
||
compatibility reasons and would therefore show No module named
|
||
pylibrabbitmq instead of librabbitmq.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 22 17:03:30 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.2:
|
||
- Now depends on anyjson 0.3.3
|
||
- Json serializer: Now passes buffer objects directly,
|
||
since this is supported in the latest anyjson version.
|
||
- Fixes blocking epoll call if timeout was set to 0.
|
||
Fix contributed by John Watson.
|
||
- setup.py now takes requirements from the requirements/ directory.
|
||
- The distribution directory contrib/ is now renamed to extra/
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Jun 21 14:40:14 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.1:
|
||
|
||
- SQS: Default visibility timeout is now 30 minutes.
|
||
Since we have ack emulation the visibility timeout is
|
||
only in effect if the consumer is abrubtly terminated.
|
||
- retry argument to Producer.publish now works properly,
|
||
when the declare argument is specified.
|
||
- Json serializer: didn't handle buffer objects (Issue #135).
|
||
Fix contributed by Jens Hoffrichter.
|
||
- Virtual: Now supports passive argument to exchange_declare.
|
||
- Exchange & Queue can now be bound to connections (which will use
|
||
the default channel):
|
||
>>> exchange = Exchange("name")
|
||
>>> bound_exchange = exchange(connection)
|
||
>>> bound_exchange.declare()
|
||
- SimpleQueue & SimpleBuffer can now be bound to connections (which
|
||
will use the default channel).
|
||
- Connection.manager.get_bindings now works for librabbitmq and pika.
|
||
- Adds new transport info attributes:
|
||
- Transport.driver_type
|
||
Type of underlying driver, e.g. "amqp", "redis", "sql".
|
||
- Transport.driver_name
|
||
Name of library used e.g. "amqplib", "redis", "pymongo".
|
||
- Transport.driver_version()
|
||
Version of underlying library.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jun 8 12:58:07 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.2.0:
|
||
- Please read descriptive changelog here:
|
||
http://kombu.readthedocs.org/en/latest/changelog.html#version-2-2-0
|
||
|
||
-------------------------------------------------------------------
|
||
Mon May 7 20:49:30 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.8:
|
||
* Bound Exchange/Queue's are now pickleable.
|
||
* Consumer/Producer can now be instantiated without a channel,
|
||
and only later bound using .revive(channel).
|
||
* ProducerPool now takes Producer argument.
|
||
* kombu.utils.fxrange now counts forever if the
|
||
stop argument is set to None.
|
||
(fxrange is like xrange but for decimals).
|
||
* Auto delete support for virtual transports were incomplete
|
||
and could lead to problems so it was removed.
|
||
* Cached declarations (kombu.common.maybe_declare)
|
||
are now bound to the underlying connection, so that
|
||
entities are redeclared if the connection is lost.
|
||
This also means that previously uncacheable entities
|
||
(e.g. non-durable) can now be cached.
|
||
* compat ConsumerSet: can now specify channel.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 27 18:59:01 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.7:
|
||
* compat consumerset now accepts optional channel argument.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Apr 23 14:41:50 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.6:
|
||
* SQLAlchemy transport was not working correctly after URL parser change.
|
||
* maybe_declare now stores cached declarations per underlying connection
|
||
instead of globally, in the rare case that data disappears from the
|
||
broker after connection loss.
|
||
* Django: Added South migrations.
|
||
Contributed by Joseph Crosland.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Apr 13 17:37:56 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.5:
|
||
* The url parser removed more than the first leading slash (Issue #121).
|
||
* SQLAlchemy: Can now specify url using + separator
|
||
Example::
|
||
BrokerConnection("sqla+mysql://localhost/db")
|
||
* Better support for anonymous queues (Issue #116).
|
||
Contributed by Michael Barrett.
|
||
* Connection.as_uri now quotes url parts (Issue #117).
|
||
* Beanstalk: Can now set message TTR as a message property.
|
||
Contributed by Andrii Kostenko
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Apr 3 16:49:46 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.4:
|
||
* MongoDB: URL parsing are now delegated to the pymongo library
|
||
(Fixes Issue #103 and Issue #87).
|
||
Fix contributed by Flavio Percoco Premoli and James Sullivan
|
||
* SQS: A bug caused SimpleDB to be used even if sdb persistence
|
||
was not enabled (Issue #108).
|
||
Fix contributed by Anand Kumria.
|
||
* Django: Transaction was committed in the wrong place, causing
|
||
data cleanup to fail (Issue #115).
|
||
Fix contributed by Daisuke Fujiwara.
|
||
* MongoDB: Now supports replica set URLs.
|
||
Contributed by Flavio Percoco Premoli.
|
||
* Redis: Now raises a channel error if a queue key that is currently
|
||
being consumed from disappears.
|
||
Fix contributed by Stephan Jaekel.
|
||
* All transport 'channel_errors' lists now includes
|
||
kombu.exception.StdChannelError.
|
||
* All kombu exceptions now inherit from a common
|
||
kombu.exceptions.KombuError.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 27 08:35:53 UTC 2012 - saschpe@suse.de
|
||
|
||
- Change rabbitmq-server recommends to suggests, OpenStack doesn't like that
|
||
- Simplified macro usage
|
||
- Use upstream tarball
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 20 17:42:53 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.3:
|
||
* Fixes Jython compatibility issues.
|
||
* Fixes Python 2.5 compatibility issues.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Mar 14 13:45:07 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Add BuildRequires python-unittest2 to fix SLE builds.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Mar 14 13:26:04 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Do not touch files without a submitrequest.
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Mar 10 17:49:39 UTC 2012 - saschpe@gmx.de
|
||
|
||
- Require rabbitmq-server, suggest mongodb or couchdb
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Mar 10 17:00:40 UTC 2012 - saschpe@gmx.de
|
||
|
||
- Update to version 2.1.1:
|
||
* Connection URLs now supports encoded characters.
|
||
* Fixed a case where connection pool could not recover from connection loss.
|
||
* We now patch amqplib's __del__ method to skip trying to close the socket
|
||
if it is not connected, as this resulted in an annoying warning.
|
||
* Compression can now be used with binary message payloads.
|
||
- Don't install INSTALL
|
||
- Run testsuite
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Feb 4 18:00:49 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.1.0:
|
||
* MongoDB: Now supports fanout (broadcast) (Issue #98).
|
||
Contributed by Scott Lyons.
|
||
* pika transport: Now works with pika 0.9.5 and 0.9.6dev.
|
||
The old pika transport (supporting 0.5.x) is now available
|
||
as alias oldpika.
|
||
(Note terribly latency has been experienced with the new pika
|
||
versions, so this is still an experimental transport).
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jan 17 01:15:23 UTC 2012 - alexandre@exatati.com.br
|
||
|
||
- Update to 2.0.0:
|
||
Important Notes
|
||
- No longer supports Python 2.4.
|
||
New Transports
|
||
- django-kombu is now part of Kombu core.
|
||
- kombu-sqlalchemy is now part of Kombu core.
|
||
News
|
||
- kombu.mixins.ConsumerMixin is a mixin class that lets you
|
||
easily write consumer programs and threads.
|
||
- SQS Transport: Added support for SQS queue prefixes (Issue #84).
|
||
- Producer.publish now supports automatic retry.
|
||
- Producer.publish now supports a declare keyword argument.
|
||
Fixes
|
||
- Redis transport: Timeout was multiplied by 1000 seconds when
|
||
using select for event I/O (Issue #86).
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Nov 30 14:55:08 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.5.1:
|
||
* Fixes issue with kombu.compat introduced in 1.5.0 (Issue #83).
|
||
* Adds the ability to disable content_types in the serializer registry.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Nov 28 02:19:24 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.5.0:
|
||
* kombu.pools: Fixed a bug resulting in resources not being properly released.
|
||
This was caused by the use of __hash__ to distinguish them.
|
||
* Virtual transports: Dead-letter queue is now disabled by default.
|
||
The dead-letter queue was enabled by default to help application
|
||
authors, but now that Kombu is stable it should be removed.
|
||
There are after all many cases where messages should just be dropped
|
||
when there are no queues to buffer them, and keeping them without
|
||
supporting automatic cleanup is rather considered a resource leak
|
||
than a feature.
|
||
|
||
If wanted the dead-letter queue can still be enabled, by using
|
||
the deadletter_queue transport option:
|
||
|
||
>>> x = BrokerConnection("redis://",
|
||
... transport_options={"deadletter_queue": "ae.undeliver"})
|
||
|
||
In addition, an UndeliverableWarning is now emitted when
|
||
the dead-letter queue is enabled and a message ends up there.
|
||
* MongoDB transport now supports Replicasets (Issue #81).
|
||
* The Connection.ensure methods now accepts a max_retries value
|
||
of 0.
|
||
A value of 0 now means *do not retry*, which is distinct from :const:None
|
||
which means *retry indefinitely*.
|
||
* SQS Transport: Now has a lowercase sqs alias, so that it can be
|
||
used with broker URLs (Issue #82).
|
||
* SQS Transport: Fixes KeyError on message acknowledgements (Issue #73).
|
||
The SQS transport now uses UUID's for delivery tags, rather than
|
||
a counter.
|
||
* SQS Transport: Unicode related fixes (Issue #82).
|
||
* Redis version check could crash because of improper handling of types
|
||
(Issue #63).
|
||
* Fixed error with Resource.force_close_all, when resources
|
||
not yet properly initialized. (Issue #78).
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Oct 27 22:33:03 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.4.3:
|
||
- Fixes bug in ProducerPool where too many resources would be acquired.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Oct 26 18:12:33 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.4.2:
|
||
- Eventio: Polling should ignore errno.EINTR
|
||
- SQS: str.encode did only start accepting kwargs after Py2.7.
|
||
- simple_task_queue example didn’t run correctly (Issue #72).
|
||
- Empty messages would not raise an exception not able to be
|
||
handled by on_decode_error (Issue #72)
|
||
- CouchDB: Properly authenticate if user/password set (Issue #70)
|
||
- BrokerConnection.Consumer had the wrong signature.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Sep 26 18:46:36 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.4.1:
|
||
- 1.4.0 broke the producer pool, resulting in new connections being
|
||
established for every acquire.
|
||
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Sep 22 16:59:42 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.4.0:
|
||
- Adds module kombu.mixins.
|
||
- New example: Task Queue Example
|
||
- MongoDB transport did not work with MongoDB >= 2.0 (Issue #66)
|
||
- Redis-py version check did not account for beta identifiers in
|
||
version string.
|
||
- Producer and Consumer now accepts a connection instance as the
|
||
first argument.
|
||
- BrokerConnection has aquired a connected attribute that can be
|
||
used to check if the connection instance has established a
|
||
connection.
|
||
- ConnectionPool.acquire_channel now returns the connections
|
||
default channel rather than establising a new channel that must be manually handled.
|
||
- Added kombu.common.maybe_declare
|
||
- kombu.compat.entry_to_queue() has been moved to kombu.common
|
||
- New module kombu.clocks now contains an implementation of
|
||
Lamports logical clock.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Sep 19 18:45:36 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.3.5:
|
||
* Python 3: AMQP_PROTOCOL_HEADER must be bytes, not str.
|
||
- Changes from 1.3.4:
|
||
* Fixes syntax error in pools.reset
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Sep 15 16:55:35 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.3.3:
|
||
* pools.reset did not support after forker arguments.
|
||
|
||
-------------------------------------------------------------------
|
||
Sun Sep 11 01:15:42 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.3.2:
|
||
* Broke Python 2.5 compatibility by importing parse_qsl from urlparse
|
||
* Connection.default_channel is now closed when connection is revived
|
||
after connection failures.
|
||
* Pika: Channel now supports the connection.client attribute
|
||
as required by the simple interface.
|
||
* pools.set_limit now raises an exception if the limit is lower
|
||
than the previous limit.
|
||
* pools.set_limit no longer resets the pools.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Sep 8 01:40:01 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.3.1:
|
||
* Last release broke after fork for pool reinitialization.
|
||
* Producer/Consumer now has a connection attribute,
|
||
giving access to the BrokerConnection of the
|
||
instance.
|
||
* Pika: Channels now have access to the underlying
|
||
BrokerConnection instance using channel.connection.client.
|
||
This was previously required by the Simple classes and is now
|
||
also required by Consumer and Producer.
|
||
* Connection.default_channel is now closed at object revival.
|
||
* Adds kombu.clocks.LamportClock.
|
||
* compat.entry_to_queue has been moved to new module kombu.common.
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Sep 5 22:53:31 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.3.0:
|
||
* Broker connection info can be now be specified using URLs
|
||
* Now comes with default global connection and producer pools
|
||
* SQS Transport: Persistence using SimpleDB is now disabled by
|
||
default, after reports of unstable SimpleDB connections leading
|
||
to errors
|
||
* Producer can now be used as a context manager
|
||
* Producer.__exit__ now properly calls release instead of close
|
||
* Now silences all exceptions from import ctypes to match behaviour
|
||
of the standard Python uuid module, and avoid passing on
|
||
MemoryError exceptions on SELinux-enabled systems (Issue #52 +
|
||
Issue #53)
|
||
* amqp is now an alias to the amqplib transport
|
||
* kombu.syn.detect_environment now returns ‘default’, ‘eventlet’,
|
||
or ‘gevent’ depending on what monkey patches have been installed
|
||
* Serialization registry has new attribute type_to_name so it is
|
||
possible to lookup serializater name by content type
|
||
* Exchange argument to Producer.publish can now be an Exchange
|
||
instance
|
||
* compat.Publisher now supports the channel keyword argument
|
||
* Acking a message on some transports could lead to KeyError being
|
||
raised (Issue #57)
|
||
* Connection pool: Connections are no long instantiated when the
|
||
pool is created, but instantiated as needed instead
|
||
* Tests now pass on PyPy
|
||
* Connection.as_uri now includes the password if the keyword
|
||
argument include_password is set
|
||
* Virtual transports now comes with a default
|
||
default_connection_params attribute
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 29 12:44:33 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.2.1:
|
||
* Now depends on amqplib >= 1.0.0.
|
||
* Redis: Now automatically deletes auto_delete queues at basic_cancel.
|
||
* serialization.unregister added so it is possible to remove unwanted
|
||
seralizers.
|
||
* Fixes MemoryError while importing ctypes on SELinux (Issue #52).
|
||
* BrokerConnection.autoretry is a version of ensure that works
|
||
with arbitrary functions (i.e. it does not need an associated object
|
||
that implements the revive method.
|
||
* ConnectionPool.acquire no longer force establishes the connection.
|
||
The connection will be established as needed.
|
||
* BrokerConnection.ensure now supports an on_revive callback
|
||
that is applied whenever the connection is re-established.
|
||
* Consumer.consuming_from(queue) returns True if the Consumer is
|
||
consuming from queue.
|
||
* Consumer.cancel_by_queue did not remove the queue from queues.
|
||
* compat.ConsumerSet.add_queue_from_dict now automatically declared
|
||
the queue if auto_declare set.
|
||
|
||
-------------------------------------------------------------------
|
||
Fri Jul 15 12:52:07 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.2.0:
|
||
* Virtual: Fixes cyclic reference in Channel.close (Issue #49).
|
||
* Producer.publish: Can now set additional properties using keyword
|
||
arguments (Issue #48).
|
||
* Adds Queue.no_ack option to control the no_ack option for individual queues.
|
||
* Recent versions broke pylibrabbitmq support.
|
||
* SimpleQueue and SimpleBuffer can now be used as contexts.
|
||
* Test requirements specifies PyYAML==3.09 as 3.10 dropped Python 2.4 support
|
||
* Now properly reports default values in Connection.info/.as_uri
|
||
|
||
-------------------------------------------------------------------
|
||
Mon Jun 13 22:42:00 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.1.6:
|
||
* Redis: Fixes issue introduced in 1.1.4, where a redis connection
|
||
failure could leave consumer hanging forever.
|
||
* SQS: Now supports fanout messaging by using SimpleDB to store routing
|
||
tables.
|
||
|
||
This can be disabled by setting the supports_fanout transport option:
|
||
|
||
>>> BrokerConnection(transport="SQS",
|
||
... transport_options={"supports_fanout": False})
|
||
* SQS: Now properly deletes a message when a message is acked.
|
||
* SQS: Can now set the Amazon AWS region, by using the region
|
||
transport option.
|
||
* amqplib: Now uses localhost as default hostname instead of raising an
|
||
error.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Jun 7 22:57:44 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.1.5:
|
||
* Fixes compatibility with redis-py 2.4.4.
|
||
- Aditional changes from:
|
||
* Redis transport: Now requires redis-py version 2.4.4 or later.
|
||
* New Amazon SQS transport added.
|
||
* librabbitmq transport: Fixes default credentials support.
|
||
* amqplib transport: Now supports login_method for SSL auth.
|
||
Default login_method is AMQPLAIN.
|
||
|
||
-------------------------------------------------------------------
|
||
Thu Apr 21 18:07:47 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.1.3:
|
||
* Redis: Consuming from multiple connections now works with
|
||
Eventlet.
|
||
* Redis: Can now perform channel operations while the channel
|
||
is in BRPOP/LISTEN mode (Issue #35).
|
||
Also the async BRPOP now times out after 1 second, this
|
||
means that cancelling consuming from a queue/starting
|
||
consuming from additional queues has a latency of up to
|
||
one second (BRPOP does not support subsecond timeouts).
|
||
* Virtual: Allow channel objects to be closed multiple times
|
||
without error.
|
||
* amqplib: AttributeError has been added to the list of known
|
||
connection related errors (Connection.connection_errors).
|
||
* amqplib: Now converts SSLError timeout errors to
|
||
socket.timeout (http://bugs.python.org/issue10272)
|
||
* Ensures cyclic references are destroyed when the connection
|
||
is closed.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 6 17:43:07 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.1.2:
|
||
* Redis: Fixes serious issue where messages could be lost.
|
||
The issue could happen if the message exceeded a certain number
|
||
of kilobytes in size.
|
||
It is recommended that all users of the Redis transport should
|
||
upgrade to this version, even if not currently experiencing any
|
||
issues.
|
||
|
||
-------------------------------------------------------------------
|
||
Wed Apr 6 00:59:48 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.1.1:
|
||
* Virtual transports: Message body is now base64 encoded by
|
||
default (Issue #27).
|
||
This should solve problems sending binary data with virtual
|
||
transports.
|
||
Message compatibility is handled by adding a body_encoding
|
||
property, so messages sent by older versions is compatible
|
||
with this release. However – If you are accessing the
|
||
messages directly not using Kombu, then you have to respect
|
||
the body_encoding property.
|
||
For transport authors:
|
||
You don’t have to change anything in your custom
|
||
transports, as this is handled automatically by the base
|
||
class.
|
||
If you want to use a different encoder you can do so by
|
||
adding a key to Channel.codecs. Default encoding is
|
||
specified by the Channel.body_encoding attribute.
|
||
A new codec must provide two methods: encode(data) and
|
||
decode(data).
|
||
* ConnectionPool/ChannelPool/Resource: Setting limit=None
|
||
(or 0) now disables pool semantics, and will establish and
|
||
close the resource whenever acquired or released.
|
||
* ConnectionPool/ChannelPool/Resource: Is now using a LIFO
|
||
queue instead of the previous FIFO behavior.
|
||
* BrokerConnection: Cloned connections did not inherit
|
||
transport_options (__copy__).
|
||
* contrib/requirements is now located in the top directory of
|
||
the distribution.
|
||
* MongoDB: Now supports authentication using the userid and
|
||
password arguments to BrokerConnection (Issue #30).
|
||
* BrokerConnection: Default autentication credentials are now
|
||
delegated to the individual transports.
|
||
* Consumer.__exit__() did not have the correct signature
|
||
(Issue #32).
|
||
* Channel objects now have a channel_id attribute.
|
||
* MongoDB: Version sniffing broke with development versions of
|
||
mongod (Issue #29).
|
||
* New environment variable KOMBU_LOG_CONNECTION will now emit
|
||
debug log messages for connection related actions.
|
||
KOMBU_LOG_DEBUG will also enable KOMBU_LOG_CONNECTION.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 29 01:14:55 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.0.7:
|
||
* Now depends on anyjson 0.3.1
|
||
cjson is no longer a recommended json implementation, and anyjson
|
||
will now emit a deprecation warning if used.
|
||
* Please note that the Pika backend only works with version 0.5.2.
|
||
The latest version (0.9.x) drastically changed API, and it is not
|
||
compatible yet.
|
||
* on_decode_error is now called for exceptions in message_to_python
|
||
(Issue #24).
|
||
* Redis: did not respect QoS settings.
|
||
* Redis: Creating a connection now ensures the connection is established.
|
||
This means BrokerConnection.ensure_connection works properly with
|
||
Redis.
|
||
* consumer_tag argument to Queue.consume can't be None
|
||
(Issue #21).
|
||
A None value is now automatically converted to empty string.
|
||
An empty string will make the server generate a unique tag.
|
||
* BrokerConnection now supports a transport_options argument.
|
||
This can be used to pass additional arguments to transports.
|
||
* Pika: drain_events raised socket.timeout even if no timeout
|
||
set (Issue #8).
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 22 16:59:52 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.0.6:
|
||
- The delivery_mode aliases (persistent/transient) were not
|
||
automatically converted to integer, and would cause a crash if
|
||
using the amqplib transport.
|
||
- Redis: The redis-py InvalidData exception suddenly changed
|
||
name to DataError.
|
||
- The KOMBU_LOG_DEBUG environment variable can now be set to log
|
||
all channel method calls.
|
||
- Support for the following environment variables have been added:
|
||
- KOMBU_LOG_CHANNEL will wrap channels in an object that logs
|
||
every method call.
|
||
- KOMBU_LOG_DEBUG both enables channel logging and configures
|
||
the root logger to emit messages to standard error.
|
||
- Aditional changes from 1.0.5:
|
||
- Fixed memory leak when creating virtual channels. All virtual
|
||
transports affected (redis, mongodb, memory, django, sqlalchemy,
|
||
couchdb, beanstalk).
|
||
- Virtual Transports: Fixed potential race condition when acking
|
||
messages.
|
||
- If you have been affected by this, the error would show itself
|
||
as an exception raised by the OrderedDict implementation.
|
||
(object no longer exists).
|
||
- MongoDB transport requires the findandmodify command only
|
||
available in MongoDB 1.3+, so now raises an exception if
|
||
connected to an incompatible server version.
|
||
- Virtual Transports: basic.cancel should not try to remove
|
||
unknown consumer tag.
|
||
- Added AUTHORS Changelog FAQ INSTALL README THANKS TODO files
|
||
as documentation.
|
||
|
||
-------------------------------------------------------------------
|
||
Tue Mar 1 00:31:41 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Update to 1.0.4:
|
||
* Added Transport.polling_interval
|
||
Used by django-kombu to increase the time to sleep between SELECTs when
|
||
there are no messages in the queue.
|
||
|
||
Users of django-kombu should upgrade to django-kombu v0.9.2.
|
||
|
||
-------------------------------------------------------------------
|
||
Sat Feb 12 17:17:22 UTC 2011 - alexandre@exatati.com.br
|
||
|
||
- Initial package (1.0.3) for openSUSE.
|