From f188e28aea3ba2f268888037a141f89fca66e627 Mon Sep 17 00:00:00 2001 From: Robin Schoonover Date: Tue, 31 Dec 2013 18:37:13 -0700 Subject: [PATCH] Don't barf on Session(info=...) from sessionmaker(info=None) --- lib/sqlalchemy/orm/session.py | 3 ++- test/orm/test_session.py | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) 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): -- 2.47.3