v5.0.0
Tracks the NSchema.Core 5.0 rearchitecture (requires NSchema.Core 5.0.0-alpha.1).
Changed
SqlServerSqlDialectreplaces the SQL generator. The provider now plugs into Core'sSqlDialectseam, rendering one migration action at a time. Features SQL Server cannot express (schema renames, materialized views, exclusion constraints, in-place identity/computed-column changes,BEFORE/row-level/WHEN/function-style triggers, enums, domains, composite types, extensions) now surface as error diagnostics on the plan instead of throwingNotSupportedException.SqlServerDatabaseIntrospectorreplaces the schema provider. It implements Core'sIDatabaseIntrospector, reading the live database into the newNSchema.Modelschema model scoped by aPlanningScope.UseSqlServer(...)replacesUseSqlServerSchema(...), andUseSqlServerDialect()replacesUseSqlServerGenerator(). Same overloads and registrations under the new Core seams.- The plugin is configured by a
DATABASEstatement.SqlServerPluginimplementsINSchemaDatabasePlugin:Configuretakes the core's typedPluginSettingsand returns aResultwhose diagnostics carry any configuration errors. Environment overrides are the engine'sNSCHEMA_DATABASE_<SETTING>now; the provider reads no environment variables of its own.
Added
newasks for the connection details. The plugin declares server, database, authentication and username as scaffolding questions and composes the answers into theconnection_stringit writes. The password is deliberately not asked for — it belongs inNSCHEMA_DATABASE_PASSWORD.- Supports change-event scripts (
SCRIPT '<name>' RUN ON <event> <path>): the script's SQL is executed verbatim at its planned position in the migration.