Skip to content

Commit 4b3abbb

Browse files
committed
feat(backend): override create_schema_differ() to supply SQLServerSchemaDiffer
The core migrated schema-diff resolution to the dependency-inversion hook SQLDialectBase.create_schema_differ() and no longer imports concrete backend differs. Override the hook so SQL Server keeps its ordinal-position-aware column comparison in migration snapshot diffs. - Implement SQLServerDialect.create_schema_differ() returning SQLServerSchemaDiffer - Add changelog fragment
1 parent 77e3f00 commit 4b3abbb

2 files changed

Lines changed: 9 additions & 0 deletions

File tree

‎changelog.d/53.added.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Added `SQLServerDialect.create_schema_differ()` returning `SQLServerSchemaDiffer` so the dialect exposes its ordinal-position-aware schema comparison through the core's new dependency-inversion hook (`SQLDialectBase.create_schema_differ()`), keeping migration snapshot diffs correct now that the core no longer imports concrete backend differs.

‎src/rhosocial/activerecord/backend/impl/sqlserver/dialect.py‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,14 @@ def get_server_version(self) -> Tuple[int, int, int]:
371371
"""Return the SQL Server version this dialect is configured for."""
372372
return self.version
373373

374+
def create_schema_differ(self):
375+
"""Return the SQL Server schema differ (ordinal-position aware)."""
376+
from rhosocial.activerecord.backend.impl.sqlserver.schema.differ import (
377+
SQLServerSchemaDiffer,
378+
)
379+
380+
return SQLServerSchemaDiffer()
381+
374382
def format_date_trunc_expression(self, expr: "Any") -> Tuple[str, Tuple]:
375383
source_sql, source_params = expr.source.to_sql()
376384
field = expr.field.value.upper()

0 commit comments

Comments
 (0)