2025-09-30 08:16:44 +00:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
2025-09-30 08:52:30 +00:00
|
|
|
## [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
|
|
|
|
|
2025-09-30 08:16:44 +00:00
|
|
|
## [1.0.0] - 2025-09-30
|
|
|
|
|
|
|
|
### Added
|
|
|
|
- Initial release as standalone tool
|
|
|
|
- Extracted from go-zero project and made independent
|
2025-09-30 08:52:30 +00:00
|
|
|
- Support for converting go-zero `.api` files to Swagger 2.0 specification
|
2025-09-30 08:16:44 +00:00
|
|
|
- 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](https://github.com/zeromicro/go-zero)
|
|
|
|
project's swagger generation plugin. We are grateful to the go-zero team for their
|
|
|
|
excellent work.
|
|
|
|
|