Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #44035

ANN: rom 0.10 - Redis object mapper for Python

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail
Return-Path <josiah.carlson@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.000
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'python.': 0.02; 'python,': 0.02; 'url:pypi': 0.03; 'package,': 0.03; 'subject:Python': 0.06; 'cache': 0.07; 'json': 0.07; 'nested': 0.07; 'subject:ANN': 0.07; '===': 0.09; "django's": 0.09; 'release,': 0.09; 'types:': 0.09; 'url:github': 0.09; 'django': 0.11; 'project,': 0.12; '==========': 0.16; 'appengine': 0.16; 'col': 0.16; 'columns': 0.16; 'orm,': 0.16; 'rough': 0.16; 'semantics': 0.16; 'sqlalchemy': 0.16; 'subject:mapper': 0.16; 'subject:object': 0.16; 'to:addr:python-announce-list': 0.16; 'skip:= 10': 0.16; 'hey': 0.18; 'looked': 0.18; 'everyone,': 0.19; 'hack': 0.22; 'entries': 0.24; 'initial': 0.24; "i've": 0.25; '(for': 0.26; 'to:2**1': 0.27; 'to:no real name:2**1': 0.29; 'words': 0.29; 'message-id:@mail.gmail.com': 0.30; 'included': 0.31; 'announced': 0.31; 'go.': 0.31; 'interface': 0.32; 'text': 0.33; 'url:python': 0.33; 'style': 0.33; 'at:': 0.34; 'basic': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'building': 0.35; 'there': 0.35; 'data,': 0.36; 'replies': 0.36; "didn't": 0.36; 'similar': 0.36; 'url:org': 0.36; 'skip:& 10': 0.38; 'thank': 0.38; 'others.': 0.38; 'to:addr:python-list': 0.38; 'anything': 0.39; 'to:addr:python.org': 0.39; 'easy': 0.60; "google's": 0.60; 'new': 0.61; 'range': 0.61; 'offer': 0.62; 'personal': 0.63; 'skip:n 10': 0.64; 'modeling': 0.65; 'within': 0.65; 'here': 0.66; 'saving': 0.69; 'sports': 0.69; 'below.': 0.71; 'features:': 0.84; 'offered.': 0.91
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to :content-type; bh=MsYPFsrg0ZbO8LYFNo89893dH485bXV2RHmhA2hEniw=; b=aA0u/pTKqF0vbzEO7izAQ12bg25G2tqX+elrceFLOL7BmItHRbS7h3Zyjcxl8pEayq +sQATt+VHBl9tfUCjvmzF6sc630uC6IxzgRVXIPdOBrAJXMLU8ZzejFsgF1woVygTuPA VCAXOapsWbWADH4t6C/2JG2Kp8SrTq0YTznc8M5RLZ7QzdN0WZa9LAk1eiEles6KSgqK OuQlgf4BYzy3ITbkQQfp7263RTRHyID21vas85DBBbrMbkqWgmUWRafYsNVM8snXW2RN NLD3NLPpkZZM6MqAIbfPtPPFEwWAd42akEVqMhW7p1dQUPdMTlgC0cB4O4cEewaIrtcq jSWw==
MIME-Version 1.0
X-Received by 10.52.176.163 with SMTP id cj3mr15474140vdc.35.1366606310393; Sun, 21 Apr 2013 21:51:50 -0700 (PDT)
Date Sun, 21 Apr 2013 21:51:50 -0700
Subject ANN: rom 0.10 - Redis object mapper for Python
From Josiah Carlson <josiah.carlson@gmail.com>
To Python-announce-list@python.org, python-list@python.org
Content-Type multipart/alternative; boundary=bcaec5015d0fadce5a04daebd36e
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.897.1366606318.3114.python-list@python.org> (permalink)
Lines 108
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1366606318 news.xs4all.nl 2177 [2001:888:2000:d::a6]:49280
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:44035

Show key headers only | View raw


[Multipart message — attachments visible in raw view] - view raw

Hey everyone,

I know, it's been several years since I announced anything on these lists,
but I suspect that some of you may have uses for my new package, so here
you go.

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.

This is the initial release, so there may be some rough edges. I've
included the basic intro for the package below. You can find the package at:
https://www.github.com/josiahcarlson/rom
https://pypi.python.org/pypi/rom

Please CC me on any replies if you have any questions or comments.

Thank you,
 - Josiah

What's new?
==========

Everything

What
====

Rom is a package whose purpose is to offer active-record style data modeling
within Redis from Python, similar to the semantics of Django ORM,
SQLAlchemy +
Elixir, Google's Appengine datastore, and others.

Why
===

I was building a personal project, wanted to use Redis to store some of my
data, but didn't want to hack it poorly. I looked at the existing Redis
object
mappers available in Python, but didn't like the features and functionality
offered.

What is available
=================

Data types:

* Strings, ints, floats, decimals
* Json columns (for nested structures)
* OneToMany and ManyToOne columns (for model references)

Indexes:

* Numeric range fetches, searches, and ordering
* Full-word text search (find me entries with col X having words A and B)

Other features:

* Per-thread entity cache (to minimize round-trips, easy saving of all
  entities)

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

ANN: rom 0.10 - Redis object mapper for Python Josiah Carlson <josiah.carlson@gmail.com> - 2013-04-21 21:51 -0700

csiph-web