summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2020-10-16 12:03:11 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2020-10-16 19:15:58 -0400
commit5162f2bc5fc0ac239f26a76fc9f0c2c2472adf60 (patch)
tree1ca6d556c17a8cfade13210ba13f1663040bfbb7 /lib/sqlalchemy/sql
parent41d3e16773e84692b6625ccb67da204b5362d9c3 (diff)
downloadsqlalchemy-5162f2bc5fc0ac239f26a76fc9f0c2c2472adf60.tar.gz
Add deprecation for base Executable.bind
These attributes will be removed in SQLAlchemy 2.0. Also alters the deprecation message to qualify the type of object correctly. this in turn requires changes in the warnings filter and deprecation tests. Change-Id: I5779d9813e88f42e5db0c7b5e3ffff1d1535c203
Diffstat (limited to 'lib/sqlalchemy/sql')
-rw-r--r--lib/sqlalchemy/sql/base.py4
-rw-r--r--lib/sqlalchemy/sql/selectable.py23
2 files changed, 27 insertions, 0 deletions
diff --git a/lib/sqlalchemy/sql/base.py b/lib/sqlalchemy/sql/base.py
index ba1107eac..4175fe89a 100644
--- a/lib/sqlalchemy/sql/base.py
+++ b/lib/sqlalchemy/sql/base.py
@@ -904,6 +904,10 @@ class Executable(Generative):
return self.execute(*multiparams, **params).scalar()
@property
+ @util.deprecated_20(
+ ":attr:`.Executable.bind`",
+ alternative="Bound metadata is being removed as of SQLAlchemy 2.0.",
+ )
def bind(self):
"""Returns the :class:`_engine.Engine` or :class:`_engine.Connection`
to
diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py
index eebf3b96e..0e88a8999 100644
--- a/lib/sqlalchemy/sql/selectable.py
+++ b/lib/sqlalchemy/sql/selectable.py
@@ -1221,7 +1221,14 @@ class Join(roles.DMLTableRole, FromClause):
).select_from(self)
@property
+ @util.deprecated_20(
+ ":attr:`.Executable.bind`",
+ alternative="Bound metadata is being removed as of SQLAlchemy 2.0.",
+ )
def bind(self):
+ """Return the bound engine associated with either the left or right
+ side of this :class:`_sql.Join`."""
+
return self.left.bind or self.right.bind
@util.preload_module("sqlalchemy.sql.util")
@@ -3487,7 +3494,15 @@ class CompoundSelect(HasCompileState, GenerativeSelect):
return self.selects[0].selected_columns
@property
+ @util.deprecated_20(
+ ":attr:`.Executable.bind`",
+ alternative="Bound metadata is being removed as of SQLAlchemy 2.0.",
+ )
def bind(self):
+ """Returns the :class:`_engine.Engine` or :class:`_engine.Connection`
+ to which this :class:`.Executable` is bound, or None if none found.
+
+ """
if self._bind:
return self._bind
for s in self.selects:
@@ -5348,7 +5363,15 @@ class Select(
return CompoundSelect._create_intersect_all(self, other, **kwargs)
@property
+ @util.deprecated_20(
+ ":attr:`.Executable.bind`",
+ alternative="Bound metadata is being removed as of SQLAlchemy 2.0.",
+ )
def bind(self):
+ """Returns the :class:`_engine.Engine` or :class:`_engine.Connection`
+ to which this :class:`.Executable` is bound, or None if none found.
+
+ """
if self._bind:
return self._bind