--- /dev/null
+.. change::
+ :tags: change, firebird
+ :tickets: 5278
+
+ Adjusted dialect loading for ``firebird://`` URIs so the external
+ sqlalchemy-firebird dialect will be used if it has been installed,
+ otherwise fall back to the (now deprecated) internal Firebird dialect.
)
dialect = translated
try:
- module = __import__("sqlalchemy.dialects.%s" % (dialect,)).dialects
+ if dialect == "firebird":
+ try:
+ module = __import__("sqlalchemy_firebird")
+ dialect = "dialect"
+ except:
+ module = __import__("sqlalchemy.dialects.firebird").dialects
+ else:
+ module = __import__("sqlalchemy.dialects.%s" % (dialect,)).dialects
except ImportError:
return None