From: Mike Bayer Date: Sun, 14 Nov 2010 17:42:34 +0000 (-0500) Subject: - The 'info' attribute of Column is copied during X-Git-Tag: rel_0_7b1~270 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=588f7402c5d7f0906d1f9baa524d3ac53408a293;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git - The 'info' attribute of Column is copied during Column.copy(), i.e. as occurs when using columns in declarative mixins. [ticket:1967] --- diff --git a/CHANGES b/CHANGES index 7b8749a3f5..7f15effc16 100644 --- a/CHANGES +++ b/CHANGES @@ -23,6 +23,11 @@ CHANGES - Fixed bug regarding "subqueryload" strategy whereby strategy would fail if the entity was an aliased() construct. [ticket:1964] + +- sql + - The 'info' attribute of Column is copied during + Column.copy(), i.e. as occurs when using columns + in declarative mixins. [ticket:1967] - engine - Implemented sequence check capability for the C diff --git a/lib/sqlalchemy/schema.py b/lib/sqlalchemy/schema.py index 8e937968d0..a332cec361 100644 --- a/lib/sqlalchemy/schema.py +++ b/lib/sqlalchemy/schema.py @@ -908,6 +908,7 @@ class Column(SchemaItem, expression.ColumnClause): server_default=self.server_default, onupdate=self.onupdate, server_onupdate=self.server_onupdate, + info=self.info, *args ) if hasattr(self, '_table_events'): diff --git a/test/engine/test_metadata.py b/test/engine/test_metadata.py index 528d56244f..b2250c808f 100644 --- a/test/engine/test_metadata.py +++ b/test/engine/test_metadata.py @@ -52,10 +52,11 @@ class MetaDataTest(TestBase, ComparesTables): Column(Integer(), ForeignKey('bat.blah')), Column('bar', Integer(), ForeignKey('bat.blah'), primary_key=True, key='bar'), + Column('bar', Integer(), info={'foo':'bar'}), ]: c2 = col.copy() for attr in ('name', 'type', 'nullable', - 'primary_key', 'key', 'unique'): + 'primary_key', 'key', 'unique', 'info'): eq_(getattr(col, attr), getattr(c2, attr)) eq_(len(col.foreign_keys), len(c2.foreign_keys)) if col.default: