Skip to content

SchemaKit API design: a declaration the database would reject does not compile #61

Open

Description

@CaffeinatedCoder

Goal

Decided 2026-10-19 by the maintainer: SchemaKit gets an entirely new public API. It is not the 5.x API under new ids.

The rule is the one the CodoMetis.ValueRanges range types follow: a declaration PostgreSQL or SQL Server would reject must not compile. The design makes full use of what .NET 11 and C# 15 offer for that, closed hierarchies first of all.

The first SchemaKit preview carries this API. No preview ships the old API under the new ids (#38).

The design must answer

Done when

Activity

  1. added this to the 11.0.0 milestone on Oct 19, 2026
  2. added
    enhancementNew feature or request
    package/coreAffects EFCore.ComplexIndexes
    package/postgresqlAffects EFCore.ComplexIndexes.PostgreSQL
    package/sqlserverAffects EFCore.ComplexIndexes.SqlServer
    area/indexesComplex-property, composite, unique and filtered indexes
    area/constraintsTemporal (WITHOUT OVERLAPS, PERIOD) and exclusion constraints
    area/migrationsThe differs, snapshot format, EnsureCreated and design-time wiring
    on Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/constraintsTemporal (WITHOUT OVERLAPS, PERIOD) and exclusion constraintsarea/indexesComplex-property, composite, unique and filtered indexesarea/migrationsThe differs, snapshot format, EnsureCreated and design-time wiringenhancementNew feature or requestpackage/coreAffects EFCore.ComplexIndexespackage/postgresqlAffects EFCore.ComplexIndexes.PostgreSQLpackage/sqlserverAffects EFCore.ComplexIndexes.SqlServer

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions