Skip to content

Core

Version 5.2.0

Added

  • Type references resolve against the database. A plan now verifies that every type the project references will exist once it applies.
  • The type vocabulary is part of the provider contract. An introspector can capture the types the engine and its extensions provide (NativeType) and record which extension provides an object (ProvidedBy).
  • Extensions now include their types. A plan that drops an extension now blocks when data still depends on its types.
  • Types are a category. TypeObject is the common base of everything a type reference can resolve to: EnumType, DomainType, CompositeType, and now NativeType.

Changed

  • IsImplicit and ProvidedBy live on every database element. An implicit object, like a container-only schema, or a native type, is never created, dropped, managed, or imported, whatever its kind.

Fixed

  • Schema-qualified engine types no longer block planning. A reference like pg_catalog.tsvector on an imported column previously demanded a declaration nobody could write.