Released: Sat Dec 15 2012
- **[feature]** The function decorated by `CacheRegion.cache_on_arguments()`
now includes a `set()` method, in addition to the existing
`invalidate()` method. Like `invalidate()`, it accepts
a set of function arguments, but additionally accepts as the
first positional argument a new value to place in the cache,
to take the place of that key. Courtesy Antoine Bertin.
References: [pull request 9](pullreq:9)
- **[bug]** Fixed bug in DBM backend whereby if an error occurred
during the "write" operation, the file lock, if enabled,
would not be released, thereby deadlocking the app.
References: [15](ticket:15)
- **[bug]** The `util.function_key_generator()` used by the
function decorator no longer coerces non-unicode
arguments into a Python unicode object on Python 2.x;
this causes failures on backends such as DBM which
on Python 2.x apparently require bytestrings. The
key_mangler is still needed if actual unicode arguments
are being used by the decorated function, however.
References: [12](ticket:12)
- **[feature]** Redis backend now accepts optional "url" argument,
will be passed to the new `StrictRedis.from_url()`
method to determine connection info. Courtesy
Jon Rosebaugh.
- **[feature]** Redis backend now accepts optional "password"
argument. Courtesy Jon Rosebaugh.
- **[feature]** DBM backend has "fallback" when calling dbm.get() to
instead use dictionary access + KeyError, in the case
that the "gdbm" backend is used which does not include
.get(). Courtesy Jon Rosebaugh.
rel_0_4_0