summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Scherfke <stefan.scherfke@energymeteo.de>2020-05-10 21:42:12 +0200
committerClaudiu Popa <pcmanticore@gmail.com>2020-05-12 08:44:48 +0200
commite53bfcb602114179bc3b0d4e1db7a5d155152d25 (patch)
treed381fe70c37b00eb032f27f9951acb7e732ef56c
parent681336416aeea229d6bfdf32f70e781049c92065 (diff)
downloadastroid-git-e53bfcb602114179bc3b0d4e1db7a5d155152d25.tar.gz
Add brain for sqlalchemy.orm.session
-rw-r--r--ChangeLog2
-rw-r--r--astroid/brain/brain_sqlalchemy.py31
2 files changed, 33 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 0214e36b..63edff03 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,8 @@ What's New in astroid 2.5.0?
============================
Release Date: TBA
+* Added a brain for ``sqlalchemy.orm.session``
+
What's New in astroid 2.4.1?
============================
diff --git a/astroid/brain/brain_sqlalchemy.py b/astroid/brain/brain_sqlalchemy.py
new file mode 100644
index 00000000..9597c8d0
--- /dev/null
+++ b/astroid/brain/brain_sqlalchemy.py
@@ -0,0 +1,31 @@
+import astroid
+
+
+def _session_transform():
+ return astroid.parse('''
+ from sqlalchemy.orm.session import Session
+
+ class sessionmaker:
+ def __init__(
+ self,
+ bind=None,
+ class_=Session,
+ autoflush=True,
+ autocommit=False,
+ expire_on_commit=True,
+ info=None,
+ **kw
+ ):
+ return
+
+ def __call__(self, **local_kw):
+ return Session()
+
+ def configure(self, **new_kw):
+ return
+
+ return Session()
+ ''')
+
+
+astroid.register_module_extender(astroid.MANAGER, 'sqlalchemy.orm.session', _session_transform)