diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2012-08-05 15:14:51 -0400 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2012-08-05 15:14:51 -0400 |
commit | 6bd46945ccd585c494eb7550a0dfea22f17727c0 (patch) | |
tree | 4412d12bb42af58a1c30f7f961f77acb2fa35386 /lib/sqlalchemy/engine/reflection.py | |
parent | a4f2db890322a225e6c9754b711f5c16d04f377c (diff) | |
download | sqlalchemy-6bd46945ccd585c494eb7550a0dfea22f17727c0.tar.gz |
- reorganization of declarative such that file sizes are managable again.
the vast majority of file lines are spent on documentation, which moves
into package __init__. The core declarative idea lives in base and
is back down to its originally low size of under 500 lines. The various
helpers and such move into api.py, and the full span of string lookup
moves into a new module clsregistry. the rest of declarative only
refers to two functions in clsregistry in three places inside of base.
- [feature] Declarative now maintains a registry
of classes by string name as well as by full
module-qualified name. Multiple classes with the
same name can now be looked up based on a module-qualified
string within relationship(). Simple class name
lookups where more than one class shares the same
name now raises an informative error message.
[ticket:2338]
- lots of tests to ensure the new weak referencing memory management
is maintained by the new class registry system. this ticket was
served very well by waiting to do #2526 first, else this would
have needed to be rewritten anyway.
Diffstat (limited to 'lib/sqlalchemy/engine/reflection.py')
0 files changed, 0 insertions, 0 deletions