]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Deprecate the databases packages
authorFederico Caselli <cfederico87@gmail.com>
Fri, 28 Feb 2020 18:26:03 +0000 (19:26 +0100)
committerFederico Caselli <cfederico87@gmail.com>
Fri, 28 Feb 2020 19:21:10 +0000 (20:21 +0100)
The databases package is an old alias to the dialect package, and its usage
is now deprecated

Change-Id: I5343a2d270ed5a8c654b9fe13dff40cdf54649ed

lib/sqlalchemy/databases/__init__.py
lib/sqlalchemy/testing/engines.py
test/dialect/mssql/test_query.py
test/dialect/mssql/test_reflection.py
test/dialect/mssql/test_types.py
test/dialect/postgresql/test_reflection.py
test/dialect/test_firebird.py
test/dialect/test_sybase.py
test/test_deprecations.py [new file with mode: 0644]

index 77191819bb4d3c7ccddfbfc6dc273a1681113801..3e636871b6e88651c549f140c7e6ba0e1e78f717 100644 (file)
@@ -16,7 +16,7 @@ from ..dialects.oracle import base as oracle
 from ..dialects.postgresql import base as postgresql
 from ..dialects.sqlite import base as sqlite
 from ..dialects.sybase import base as sybase
-
+from ..util import warn_deprecated_20
 
 postgres = postgresql
 
@@ -30,3 +30,9 @@ __all__ = (
     "oracle",
     "sybase",
 )
+
+
+warn_deprecated_20(
+    "The `database` package is deprecated and will be removed in v2.0 "
+    "of sqlalchemy. Use the `dialects` package instead."
+)
index 4f413915a5dfa65e07952c7706ef9a0991b51cc5..76112b3a27c7dc7f1c366ba3408f7244fcca8839 100644 (file)
@@ -158,7 +158,7 @@ def close_open_connections(fn, *args, **kw):
 
 
 def all_dialects(exclude=None):
-    import sqlalchemy.databases as d
+    import sqlalchemy.dialects as d
 
     for name in d.__all__:
         # TEMPORARY
@@ -167,7 +167,7 @@ def all_dialects(exclude=None):
         mod = getattr(d, name, None)
         if not mod:
             mod = getattr(
-                __import__("sqlalchemy.databases.%s" % name).databases, name
+                __import__("sqlalchemy.dialects.%s" % name).databases, name
             )
         yield mod.dialect()
 
index aa08502223cfb5de11d3b4dce59e57b38f302d76..fc3352d4ef2d724c888ad222d23eb0ba9c6deb1d 100644 (file)
@@ -16,7 +16,7 @@ from sqlalchemy import String
 from sqlalchemy import Table
 from sqlalchemy import testing
 from sqlalchemy import util
-from sqlalchemy.databases import mssql
+from sqlalchemy.dialects.mssql import base as mssql
 from sqlalchemy.sql import column
 from sqlalchemy.sql import table
 from sqlalchemy.testing import AssertsCompiledSQL
index 120092e668cd3df4d8be43697f0841399d9cb607..352bc637ee4c43d3937bf3bf46109736bddb9349 100644 (file)
@@ -13,7 +13,7 @@ from sqlalchemy import Table
 from sqlalchemy import testing
 from sqlalchemy import types
 from sqlalchemy import util
-from sqlalchemy.databases import mssql
+from sqlalchemy.dialects import mssql
 from sqlalchemy.dialects.mssql import base
 from sqlalchemy.dialects.mssql.information_schema import CoerceUnicode
 from sqlalchemy.dialects.mssql.information_schema import tables
index c95ac6e6d9ef23baa72a836ceeb1e4369a42263c..ba7ed4667f153afd1c6c6d12322b1a08605dc760 100644 (file)
@@ -32,7 +32,7 @@ from sqlalchemy import types
 from sqlalchemy import Unicode
 from sqlalchemy import UnicodeText
 from sqlalchemy import util
-from sqlalchemy.databases import mssql
+from sqlalchemy.dialects.mssql import base as mssql
 from sqlalchemy.dialects.mssql import ROWVERSION
 from sqlalchemy.dialects.mssql import TIMESTAMP
 from sqlalchemy.dialects.mssql.base import _MSDate
index 830a54eef0dad1759a972b3e9fd6b553b07f3a44..6c0ba5fcee99f6fca7935cc93dc0ac6789d29b90 100644 (file)
@@ -397,10 +397,10 @@ class DomainReflectionTest(fixtures.TestBase, AssertsExecutionResults):
         ), "Expected reflected column to be nullable."
 
     def test_unknown_types(self):
-        from sqlalchemy.databases import postgresql
+        from sqlalchemy.dialects.postgresql import base
 
-        ischema_names = postgresql.PGDialect.ischema_names
-        postgresql.PGDialect.ischema_names = {}
+        ischema_names = base.PGDialect.ischema_names
+        base.PGDialect.ischema_names = {}
         try:
             m2 = MetaData(testing.db)
             assert_raises(exc.SAWarning, Table, "testtable", m2, autoload=True)
@@ -412,7 +412,7 @@ class DomainReflectionTest(fixtures.TestBase, AssertsExecutionResults):
                 assert t3.c.answer.type.__class__ == sa.types.NullType
 
         finally:
-            postgresql.PGDialect.ischema_names = ischema_names
+            base.PGDialect.ischema_names = ischema_names
 
 
 class ReflectionTest(fixtures.TestBase):
index ad146bc77eb5ac28953c4f48e097116d6354cfa0..1b72da1bc62fc65885447554103fe19c069f9db0 100644 (file)
@@ -17,7 +17,7 @@ from sqlalchemy import types as sqltypes
 from sqlalchemy import Unicode
 from sqlalchemy import update
 from sqlalchemy import VARCHAR
-from sqlalchemy.databases import firebird
+from sqlalchemy.dialects.firebird import base as firebird
 from sqlalchemy.exc import ProgrammingError
 from sqlalchemy.sql import column
 from sqlalchemy.sql import table
index 38786ab4be3eb4c40f22731eed312f8858bdeba6..b49c8cfb369a02eba4fa0d9cfc7f120e073cb345 100644 (file)
@@ -1,7 +1,7 @@
 from sqlalchemy import extract
 from sqlalchemy import select
 from sqlalchemy import sql
-from sqlalchemy.databases import sybase
+from sqlalchemy.dialects import sybase
 from sqlalchemy.testing import assert_raises_message
 from sqlalchemy.testing import AssertsCompiledSQL
 from sqlalchemy.testing import fixtures
diff --git a/test/test_deprecations.py b/test/test_deprecations.py
new file mode 100644 (file)
index 0000000..a70eea1
--- /dev/null
@@ -0,0 +1,12 @@
+from sqlalchemy.testing import expect_deprecated_20, fixtures
+from sqlalchemy.util.compat import import_
+
+
+class DeprecationWarningsTest(fixtures.TestBase):
+    __backend__ = False
+
+    def test_deprecate_databases(self):
+        with expect_deprecated_20(
+            "The `database` package is deprecated and will be removed in v2.0 "
+        ):
+            import_('sqlalchemy.databases')