python-stdnet v0.7.0 Release Notes
Release Date: 2012-10-25 // over 11 years ago-
- It requires redis 2.6 or higher.
- ๐ Supported python versions: 2.6, 2.7, 3.2, 3.3.
- Some backward incompatible changes in the API and database schema.
- ๐ Tons of new features including a richer query API, improved performance via custom query options, more flexible transactions and lua_ scripting for redis_.
- The
orm
module has been renamedodm
for object data mapper. This was a painful change with the vast majority of files affected. But it is better to get terminology right at this stage rather than later. - Redesign of :class:
stdnet.odm.ManyToManyField
which now uses athrough
model for building many to many relationships. This is the only backward incompatible change both in terms of API and database scema. - Implemented :ref:
field lookups <range-lookups>
gt
,ge
,lt
andle
. - ๐ Added a prefixed redis client in :class:
stdnet.lib.redis.PrefixedRedis
. - โ Added :class:
stdnet.odm.CompositeIdField
to handle situations where each combination of given set of :class:stdnet.odm.Field
must be unique. - โ Added ability to filter and search on :class:
stdnet.odm.ForeignKey
fields. - โ Added :class:
stdnet.odm.Session
for managing transactions in the object data mapper. - ๐ Moved structures from :mod:
stdnet.backends
to the :mod:stdnet.odm
module. - Added :meth:
stdnet.odm.Query.load_only
and :meth:stdnet.odm.Query.dont_load
methods for loading a subset of a model fields. This can improve performance by reducing the amount of data transferred from the server to the client. Check the :ref:performance tips <performance-loadonly>
regarding the new feature. - โ Added :meth:
stdnet.odm.Query.load_related
for loading related fields of a queryset with a single database query. This can have huge :ref:performance benefits <performance-loadrelated>
when you know you are going to access the related field in your model. - ๐ Fixed bug in related managers. The
exclude
method was not implemented. - :class:
stdnet.odm.PickleObjectField
uses the pickle protocol 2 for compatibility between python 2 and python 3. - ๐จ Refactored the
save
anddelete
method of model instances. - โ Added :meth:
stdnet.odm.StdModel.tojson
method for obtaining JSON representation of model instances. - Indexes for :class:
stdnet.odm.ForeignKey
fields are stored at sets with keys obtained from the fieldattrname
rather thanname
. - โ Added :meth:
stdnet.odm.StdModel.clone
method for cloning model instances. - ๐จ Refactored :ref:
transactions <model-transactions>
to be used with :ref:remote data structures <model-structures>
and :ref:structured fields <model-field-structure>
. - pulsar_ or nose_ are required to run the test suite and unittest2_ is required if using python 2.6.
- ๐ Moved the contrib module to :mod:
stdnet.apps
. - โ Added :mod:
stdnet.utils.dates
. - โ Added :mod:
stdnet.utils.path
. - โ Added a Lua test suite for testing stand alone scripts. Requires lunatest_.
- Serialisation works for :attr:
stdnet.odm.ManyToMany.through
models via the :func:stdnet.odm.all_models_sessions
function (issue #48). - Lua script for univariate timeseries. This means the standard redis distribution
works with the :class:
stdnet.odm.TS
structure. - PEP 386-compliant version number.
- โ 624 regression tests with 92% coverage.
.. _vers06: