Permalink
Browse files

Merge branch 'master' of github.com:CloudMarc/ironmq-python

  • Loading branch information...
2 parents de046f8 + a01ecf6 commit 46f96602b88228bcc232367839d77b9043ed76ec @CloudMarc committed Jan 22, 2012
View
@@ -0,0 +1,5 @@
+*.pyc
+redis.egg-info
+build/
+dist/
+dump.rdb
View
@@ -0,0 +1,180 @@
+* 2.4.11 (in development)
+ * AuthenticationError will now be correctly raised if an invalid password
+ is supplied.
+ * If Hiredis is unavailable, the HiredisParser will raise a RedisError
+ if selected manually.
+* 2.4.10
+ * Buffer reads from socket in the PythonParser. Fix for a Windows-specific
+ bug (#205).
+ * Added the OBJECT and DEBUG OBJECT commands.
+ * Added __del__ methods for classes that hold on to resources that need to
+ be cleaned up. This should prevent resource leakage when these objects
+ leave scope due to misuse or unhandled exceptions. Thanks David Wolever
+ for the suggestion.
+ * Added the ECHO command for completeness.
+ * Fixed a bug where attempting to subscribe to a PubSub channel of a Redis
+ server that's down would blow out the stack. Fixes #179 and #195. Thanks
+ Ovidiu Predescu for the test case.
+ * StrictRedis's TTL command now returns a -1 when querying a key with no
+ expiration. The Redis class continues to return None.
+ * ZADD and SADD now return integer values indicating the number of items
+ added. Thanks Homer Strong.
+ * Renamed the base client class to StrictRedis, replacing ZADD and LREM in
+ favor of their official argument order. The Redis class is now a subclass
+ of StrictRedis, implementing the legacy redis-py implementations of ZADD
+ and LREM. Docs have been updated to suggesting the use of StrictRedis.
+ * SETEX in StrictRedis is now compliant with official Redis SETEX command.
+ the name, value, time implementation moved to "Redis" for backwards
+ compatability.
+* 2.4.9
+ * Removed socket retry logic in Connection. This is the responsbility of
+ the caller to determine if the command is safe and can be retried. Thanks
+ David Wolver.
+ * Added some extra guards around various types of exceptions being raised
+ when sending or parsing data. Thanks David Wolver and Denis Bilenko.
+* 2.4.8
+ * Imported with_statement from __future__ for Python 2.5 compatability.
+* 2.4.7
+ * Fixed a bug where some connections were not getting released back to the
+ connection pool after pipeline execution.
+ * Pipelines can now be used as context managers. This is the preferred way
+ of use to ensure that connections get cleaned up properly. Thanks
+ David Wolever.
+ * Added a convenience method called transaction() on the base Redis class.
+ This method eliminates much of the boilerplate used when using pipelines
+ to watch Redis keys. See the documentation for details on usage.
+* 2.4.6
+ * Variadic arguments for SADD, SREM, ZREN, HDEL, LPUSH, and RPUSH. Thanks
+ Raphaël Vinot.
+ * (CRITICAL) Fixed an error in the Hiredis parser that occasionally caused
+ the socket connection to become corrupted and unusable. This became
+ noticeable once connection pools started to be used.
+ * ZRANGE, ZREVRANGE, ZRANGEBYSCORE, and ZREVRANGEBYSCORE now take an
+ additional optional argument, score_cast_func, which is a callable used
+ to cast the score value in the return type. The default is float.
+ * Removed the PUBLISH method from the PubSub class. Connections that are
+ [P]SUBSCRIBEd cannot issue PUBLISH commands, so it doesn't make sense
+ to have it here.
+ * Pipelines now contain WATCH and UNWATCH. Calling WATCH or UNWATCH from
+ the base client class will result in a deprecation warning. After
+ WATCHing one or more keys, the pipeline will be placed in immediate
+ execution mode until UNWATCH or MULTI are called. Refer to the new
+ pipeline docs in the README for more information. Thanks to David Wolever
+ and Randall Leeds for greatly helping with this.
+* 2.4.5
+ * The PythonParser now works better when reading zero length strings.
+* 2.4.4
+ * Fixed a typo introduced in 2.4.3
+* 2.4.3
+ * Fixed a bug in the UnixDomainSocketConnection caused when trying to
+ form an error message after a socket error.
+* 2.4.2
+ * Fixed a bug in pipeline that caused an exception while trying to
+ reconnect after a connection timeout.
+* 2.4.1
+ * Fixed a bug in the PythonParser if disconnect is called before connect.
+* 2.4.0
+ * WARNING: 2.4 contains several backwards incompatible changes.
+ * Completely refactored Connection objects. Moved much of the Redis
+ protocol packing for requests here, and eliminated the nasty dependencies
+ it had on the client to do AUTH and SELECT commands on connect.
+ * Connection objects now have a parser attribute. Parsers are responsible
+ for reading data Redis sends. Two parsers ship with redis-py: a
+ PythonParser and the HiRedis parser. redis-py will automatically use the
+ HiRedis parser if you have the Python hiredis module installed, otherwise
+ it will fall back to the PythonParser. You can force or the other, or even
+ an external one by passing the `parser_class` argument to ConnectionPool.
+ * Added a UnixDomainSocketConnection for users wanting to talk to the Redis
+ instance running on a local machine only. You can use this connection
+ by passing it to the `connection_class` argument of the ConnectionPool.
+ * Connections no longer derive from threading.local. See threading.local
+ note below.
+ * ConnectionPool has been comletely refactored. The ConnectionPool now
+ maintains a list of connections. The redis-py client only hangs on to
+ a ConnectionPool instance, calling get_connection() anytime it needs to
+ send a command. When get_connection() is called, the command name and
+ any keys involved in the command are passed as arguments. Subclasses of
+ ConnectionPool could use this information to identify the shard the keys
+ belong to and return a connection to it. ConnectionPool also implements
+ disconnect() to force all connections in the pool to disconnect from
+ the Redis server.
+ * redis-py no longer support the SELECT command. You can still connect to
+ a specific database by specifing it when instantiating a client instance
+ or by creating a connection pool. If you need to talk to multiplate
+ databases within your application, you should use a separate client
+ instance for each database you want to talk to.
+ * Completely refactored Publish/Subscribe support. The subscribe and listen
+ commands are no longer available on the redis-py Client class. Instead,
+ the `pubsub` method returns an instance of the PubSub class which contains
+ all publish/subscribe support. Note, you can still PUBLISH from the
+ redis-py client class if you desire.
+ * Removed support for all previously deprecated commands or options.
+ * redis-py no longer uses threading.local in any way. Since the Client
+ class no longer holds on to a connection, it's no longer needed. You can
+ now pass client instances between threads, and commands run on those
+ threads will retrieve an available connection from the pool, use it and
+ release it. It should now be trivial to use redis-py with eventlet or
+ greenlet.
+ * ZADD now accepts pairs of value=score keyword arguements. This should help
+ resolve the long standing #72. The older value and score arguements have
+ been deprecated in favor of the keyword argument style.
+ * Client instances now get their own copy of RESPONSE_CALLBACKS. The new
+ set_response_callback method adds a user defined callback to the instance.
+ * Support Jython, fixing #97. Thanks to Adam Vandenberg for the patch.
+ * Using __getitem__ now properly raises a KeyError when the key is not
+ found. Thanks Ionuț Arțăriși for the patch.
+ * Newer Redis versions return a LOADING message for some commands while
+ the database is loading from disk during server start. This could cause
+ problems with SELECT. We now force a socket disconnection prior to
+ raising a ResponseError so subsuquent connections have to reconnect and
+ re-select the appropriate database. Thanks to Benjamin Anderson for
+ finding this and fixing.
+* 2.2.4
+ * WARNING: Potential backwards incompatible change - Changed order of
+ parameters of ZREVRANGEBYSCORE to match those of the actual Redis command.
+ This is only backwards-incompatible if you were passing max and min via
+ keyword args. If passing by normal args, nothing in user code should have
+ to change. Thanks Stéphane Angel for the fix.
+ * Fixed INFO to properly parse the Redis data correctly for both 2.2.x and
+ 2.3+. Thanks Stéphane Angel for the fix.
+ * Lock objects now store their timeout value as a float. This allows floats
+ to be used as timeout values. No changes to existing code required.
+ * WATCH now supports multiple keys. Thanks Rich Schumacher.
+ * Broke out some code that was Python 2.4 incompatible. redis-py should
+ now be useable on 2.4, but this hasn't actually been tested. Thanks
+ Dan Colish for the patch.
+ * Optimized some code using izip and islice. Should have a pretty good
+ speed up on larger data sets. Thanks Dan Colish.
+ * Better error handling when submitting an empty mapping to HMSET. Thanks
+ Dan Colish.
+ * Subscription status is now reset after every (re)connection.
+* 2.2.3
+ * Added support for Hiredis. To use, simply "pip install hiredis" or
+ "easy_install hiredis". Thanks for Pieter Noordhuis for the hiredis-py
+ bindings and the patch to redis-py.
+ * The connection class is chosen based on whether hiredis is installed
+ or not. To force the use of the PythonConnection, simply create
+ your own ConnectionPool instance with the connection_class argument
+ assigned to to PythonConnection class.
+ * Added missing command ZREVRANGEBYSCORE. Thanks Jay Baird for the patch.
+ * The INFO command should be parsed correctly on 2.2.x server versions
+ and is backwards compatible with older versions. Thanks Brett Hoerner.
+* 2.2.2
+ * Fixed a bug in ZREVRANK where retriving the rank of a value not in
+ the zset would raise an error.
+ * Fixed a bug in Connection.send where the errno import was getting
+ overwritten by a local variable.
+ * Fixed a bug in SLAVEOF when promoting an existing slave to a master.
+ * Reverted change of download URL back to redis-VERSION.tar.gz. 2.2.1's
+ change of this actually broke Pypi for Pip installs. Sorry!
+* 2.2.1
+ * Changed archive name to redis-py-VERSION.tar.gz to not conflict
+ with the Redis server archive.
+* 2.2.0
+ * Implemented SLAVEOF
+ * Implemented CONFIG as config_get and config_set
+ * Implemented GETBIT/SETBIT
+ * Implemented BRPOPLPUSH
+ * Implemented STRLEN
+ * Implemented PERSIST
+ * Implemented SETRANGE
View
@@ -0,0 +1,6 @@
+
+Please use
+ python setup.py install
+
+and report errors to Andy McCurdy (sedrik@gmail.com)
+
View
@@ -0,0 +1,22 @@
+Copyright (c) 2010 Andy McCurdy
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
View
@@ -0,0 +1,4 @@
+include CHANGES
+include INSTALL
+include LICENSE
+include README.md
Oops, something went wrong.

0 comments on commit 46f9660

Please sign in to comment.