From: Robin Schoonover Date: Wed, 1 Jan 2014 01:37:13 +0000 (-0700) Subject: Don't barf on Session(info=...) from sessionmaker(info=None) X-Git-Tag: rel_0_9_1~11^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f188e28aea3ba2f268888037a141f89fca66e627;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Don't barf on Session(info=...) from sessionmaker(info=None) --- diff --git a/lib/sqlalchemy/orm/session.py b/lib/sqlalchemy/orm/session.py index 0c3bc5cbe4..d6fc5baea1 100644 --- a/lib/sqlalchemy/orm/session.py +++ b/lib/sqlalchemy/orm/session.py @@ -2291,7 +2291,8 @@ class sessionmaker(_SessionClassMethods): kw['autoflush'] = autoflush kw['autocommit'] = autocommit kw['expire_on_commit'] = expire_on_commit - kw['info'] = info + if info is not None: + kw['info'] = info self.kw = kw # make our own subclass of the given class, so that # events can be associated with it specifically. diff --git a/test/orm/test_session.py b/test/orm/test_session.py index 34b0c7effa..4eb498ee90 100644 --- a/test/orm/test_session.py +++ b/test/orm/test_session.py @@ -412,6 +412,10 @@ class SessionStateTest(_fixtures.FixtureTest): s3 = maker() eq_(s3.info, {"global": True, "s1": 5}) + maker2 = sessionmaker() + s4 = maker2(info={'s4': 8}) + eq_(s4.info, {'s4': 8}) + @testing.requires.independent_connections @engines.close_open_connections def test_autoflush(self):