summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine/reflection.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-08-05 15:14:51 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2012-08-05 15:14:51 -0400
commit6bd46945ccd585c494eb7550a0dfea22f17727c0 (patch)
tree4412d12bb42af58a1c30f7f961f77acb2fa35386 /lib/sqlalchemy/engine/reflection.py
parenta4f2db890322a225e6c9754b711f5c16d04f377c (diff)
downloadsqlalchemy-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