doc-generate/CHANGELOG.md

2.5 KiB

Changelog

All notable changes to this project will be documented in this file.

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

[1.1.0] - 2025-09-30

Added

  • OpenAPI 3.0 Support - Generate both Swagger 2.0 and OpenAPI 3.0 specifications
  • New --spec-version (-s) flag to choose between swagger2.0 and openapi3.0
  • Automatic conversion from Swagger 2.0 to OpenAPI 3.0 format
  • Support for OpenAPI 3.0 features:
    • Server objects with complete URLs (instead of host/basePath)
    • Components/schemas (instead of definitions)
    • Components/securitySchemes (instead of securityDefinitions)
    • RequestBody separated from parameters
  • Integration with github.com/getkin/kin-openapi library for OpenAPI 3.0

Changed

  • Updated CLI help text to reflect dual specification support
  • Enhanced Makefile examples to generate both Swagger 2.0 and OpenAPI 3.0
  • Version bumped to 1.1.0

[1.0.0] - 2025-09-30

Added

  • Initial release as standalone tool
  • Extracted from go-zero project and made independent
  • Support for converting go-zero .api files to Swagger 2.0 specification
  • JSON and YAML output formats
  • Command-line interface using cobra
  • Support for all go-zero API features:
    • Info properties (title, description, version, host, basePath, etc.)
    • Type definitions (structs, arrays, maps, pointers)
    • Tag-based parameter handling (json, form, path, header)
    • Validation options (range, enum, default, example, optional)
    • Security definitions
    • Code-msg wrapper for responses
    • Definition references
  • Internal utility functions to replace go-zero dependencies
  • Comprehensive documentation
  • Example API files
  • Makefile for easy building
  • MIT License

Changed

  • Module name from github.com/zeromicro/go-zero to go-doc
  • Removed dependency on go-zero/tools/goctl/internal/version
  • Removed dependency on go-zero/tools/goctl/util/*
  • Removed dependency on google.golang.org/grpc/metadata
  • Project structure reorganized to follow Go best practices
    • cmd/go-doc/ for main entry point
    • internal/swagger/ for core logic
    • internal/util/ for utilities

Removed

  • Dependency on go-zero runtime components
  • Go-zero specific version information

Attribution

This project was originally part of the go-zero project's swagger generation plugin. We are grateful to the go-zero team for their excellent work.