Add ``supports_schema = True`` to DefaultDialect and modify
requirements.py to use that attribute so third-party dialects
can explicitly indicate that they do *not* support schemas by
specifying ``supports_schema = False`` in their Dialect class.
Change-Id: Idffee82f6668a15ac7148f2a407a17de785d1fb7
# not cx_oracle.
execute_sequence_format = tuple
+ supports_schemas = True
supports_views = True
supports_sequences = False
sequences_optional = False
import sys
from . import exclusions
+from . import only_on
from .. import util
from ..pool import QueuePool
"""Target database must support external schemas, and have one
named 'test_schema'."""
- return exclusions.closed()
+ return only_on(lambda config: config.db.dialect.supports_schemas)
@property
def cross_schema_fk_reflection(self):
"""Target database must support external schemas, and have one
named 'test_schema'."""
- return skip_if(["firebird"], "no schema support")
+ return exclusions.open()
@property
def cross_schema_fk_reflection(self):