Hey everyone, As time progresses, so does my Redis object mapper.
The "rom" package is a Redis object mapper for Python. It sports an interface similar to Django's ORM, SQLAlchemy + Elixir, or Appengine's datastore. The changelog for recent releases can be seen below my signature. You can find the package at: https://www.github.com/josiahcarlson/rom https://pypi.python.org/pypi/rom And docs can be found at: http://pythonhosted.org/rom/ Please CC me on any replies if you have any questions or comments. Thank you, - Josiah #----------------------------------- 0.22 ------------------------------------ [fixed] size estimation for intersection ordering when filtering has now been fixed, thank you to https://github.com/MickeyKim for the report and the change (should improve performance). [fixed] an issue with some types when trying to update attributes has now been fixed, thank you to https://github.com/denisvolokh for the report. [changed] improved performance for simple numeric range queries of the form Model.get_by(attr=value) or Model.get_by(attr=(min, max)) by roughly a factor of 60x or better in some cases. Thank you to https://github.com/MickeyKim for the report on poor performance. #----------------------------------- 0.21 ------------------------------------ [fixed] upload for rom 0.20 was missing new columns.py, now fixed #----------------------------------- 0.20 ------------------------------------ [changed] Added exception when performing .all(), .execute(), or .count() on query objects that have had no filters or attribute ordering provided. This addresses issue #12. [changed] Moved column definitions to their own module, shouldn't affect any normal uses of rom. [added] For users of Redis 2.6 and later, there is a beta Lua-enabled writing option that allows for multiple unique columns on models. In some cases, this may improve performance when writing many entities very quickly. [added] The ability to reload an entity from Redis, optionally discarding any modifications to the object itself. Check out the documentation for Model.refresh(), Session.refresh(), and Session.refresh_all() [added] Tests for the newly changed/added features. [changed] Tests no longer use flushdb() - all test models/indexes/etc. are prefixed with RomTest, and we find/delete such keys before and after any tests are run. Now anyone can reasonably run the test suite. #----------------------------------- 0.19 ------------------------------------ [fixed] Thanks to a bug report by https://github.com/MickeyKim , was notified of a bug when using unique indexes, which is now fixed and has a testcase.
-- https://mail.python.org/mailman/listinfo/python-list