Skip to main content
Version: Next

Changelog

All notable changes to Pedantigo are documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


[1.1.2] - 2026-01-06

Changed

What's Changed


[1.1.1] - 2026-01-05

Changed

What's Changed


[1.1.0] - 2025-12-27

Changed

What's Changed


[1.0.0] - 2025-12-21

Changed

What's Changed


[0.1.2] - 2025-12-20

Changed


[0.1.1] - 2025-12-20

Changed


[0.1.0] - 2024-12-18

Initial release of Pedantigo - Pydantic-inspired validation for Go.

Added

Core Validation

  • Struct tag-based validation with pedantigo:"..." tags
  • 100+ built-in validation constraints
  • Detailed error messages with field paths
  • Support for nested structs and slices
  • Unmarshal[T]() - Parse JSON and validate in one call
  • NewModel[T]() - Create validated instances from JSON, maps, or structs
  • Validate[T]() - Validate existing struct instances
  • Schema[T]() - Get cached JSON Schema
  • SchemaJSON[T]() - Get JSON Schema as bytes
  • Marshal[T]() - Validate and marshal to JSON
  • Dict[T]() - Convert struct to map

Validator API (Advanced)

  • Validator[T] struct for custom configurations
  • ValidatorOptions for strict mode, extra fields handling
  • ExtraFieldsMode: Ignore, Forbid, or Allow extra JSON fields

JSON Schema Generation

  • Automatic generation from struct definitions
  • 240x speedup with caching (via SchemaRegistry)
  • OpenAPI 3.0 compatible output

Streaming Validation

  • StreamParser for partial JSON validation
  • Real-time validation of LLM streaming responses
  • Progress callbacks for incremental updates

Discriminated Unions

  • Union[A, B, C] type for type-safe unions
  • Automatic discriminator detection
  • JSON Schema oneOf support

Field Types

  • Secret[T] - Masks sensitive values in logs/JSON
  • Pointer support for optional fields
  • Custom type support via Validatable interface