Changelog
=========

2.13.4 (2011-02-05)
-------------------

- Added a new UUIDIndex, based on the common UnIndex. It behaves like a
  FieldIndex, but can only store one document id per value, so there's a 1:1
  mapping from value to document id. An error is logged if a different document
  id is indexed for an already taken value. The internal data structures are
  optimized for this and avoid storing one IITreeSet per value.

- Optimize sorting in presence of batching arguments. If a batch from the end
  of the result set is requested, we internally reverse the sorting order and
  at the end reverse the lazy sequence again. In a sequence with 100 entries,
  if we request the batch with items 80 to 90, we now reverse sort 20 items
  (100 to 80), slice of the first ten items and then reverse them. Before we
  would had to sort the first 90 items and then slice of the last 10.

- If batching arguments are provided, limit the returned lazy sequence to the
  items in the required batch instead of returning leading items falling
  outside of the requested batch.

- Fixed inline `IISet` to `IITreeSet` conversion code inside DateRangeIndex'
  `_insertForwardIndexEntry` method.

2.13.3 (2011-01-01)
-------------------

- Avoid locale-dependent test condition in `test_length_with_filter`.

2.13.2 (2010-12-31)
-------------------

- Preserve `actual_result_count` on flattening nested LazyCat's.

- Preserve the `actual_result_count` on all lazy return values. This allows
  to get proper batching information from catalog results which have been
  restricted by `sort_limit`.

- Made sure `actual_result_count` is available on all lazy classes and falls
  back to `__len__` if not explicitly provided.

- Optimized length calculation of Lazy classes.

2.13.1 (2010-12-25)
-------------------

- Added automatic sorting limit calculation based on batch arguments. If the
  query contains a `b_start` and `b_size` argument and no explicit `sort_limit`
  is provided, the sort limit will be calculated as `b_start + b_size`.

- Avoid pre-allocation of marker items in `LazyMap`.

2.13.0 (2010-12-25)
-------------------

- Fix `LazyMap` to avoid unnecessary function calls.

- Released as separate distribution.
