Release 0.2.0
Complete OpenAPI 3.0/3.1 generation, diagnostics, lifecycle safety, enum and naming mappings, bilingual documentation, examples, and pub.dev release validation.
This commit is contained in:
+79
-4
@@ -1,5 +1,80 @@
|
||||
## 0.1.0
|
||||
# Changelog
|
||||
|
||||
- 初始化 `koi_swagger_parser`。
|
||||
- 支持 OpenAPI 3.1/FastAPI 常见结构解析、Koi 风格 Retrofit API 生成、Freezed 模型生成。
|
||||
- 支持兼容读取旧版 `generator_config.yaml`。
|
||||
All notable changes to this package are documented in this file.
|
||||
|
||||
[English](CHANGELOG.md) | [Chinese (Simplified)](doc/zh-CN/CHANGELOG.md)
|
||||
|
||||
## 0.2.0 - 2026-07-31
|
||||
|
||||
### Breaking changes
|
||||
|
||||
- The primary library no longer exports parser IR implementation types such as
|
||||
`DartType`, `ModelSpec`, `ApiOperation`, `GeneratedFile`, and
|
||||
`GeneratedBundle`. Use `KoiSwaggerParser` and its documented
|
||||
`GenerationResult` instead.
|
||||
- `KoiSwaggerConfigLoader` is no longer exported. Use
|
||||
`KoiSwaggerConfig.load()` to load configuration programmatically.
|
||||
|
||||
### Added
|
||||
|
||||
- Structured configuration, OpenAPI, filtering, and lifecycle diagnostics;
|
||||
errors no longer silently produce known-invalid code.
|
||||
- Local, relative, file, and HTTP(S) `$ref` resolution with caching, cycle
|
||||
detection, dependency tracking, external component bundling, and
|
||||
deterministic multi-source conflict handling.
|
||||
- `enum_mappings`, legacy `enum_key_mappings`, common `x-enum` extensions,
|
||||
descriptions, and optional unknown enum fallback.
|
||||
- Model, property, parameter, operation, schema, type, and import mappings with
|
||||
collision validation.
|
||||
- OpenAPI path, query, header, and cookie parameter serialization, including
|
||||
supported matrix, label, form, simple, space-delimited, pipe-delimited,
|
||||
deep-object, explode, and `allowReserved` combinations.
|
||||
- JSON, text, multipart, form-urlencoded, and binary uploads; byte and stream
|
||||
downloads.
|
||||
- Multiple successful responses, 204, `2XX`, `default`, error models, response
|
||||
headers, and `HttpResponse<T>` mode.
|
||||
- Required, nullable, and absent-value semantics; read-only/write-only
|
||||
projections; root `properties` plus `additionalProperties` round trips.
|
||||
- `allOf`, discriminator unions, and supported primitive, container, and object
|
||||
`oneOf`/`anyOf` unions.
|
||||
- Server variables, security schemes, and operation OR/AND security metadata.
|
||||
- Exact, glob, and regular-expression filters for tags, paths, operations, and
|
||||
models.
|
||||
- A locked manifest, spec/config/content SHA-256 hashes, unchanged generation
|
||||
skipping, safe stale cleanup, atomic writes, and dry-run change plans.
|
||||
- Built-in build_runner build/watch integration, reviewed golden output,
|
||||
OpenAPI 3.0/3.1 fixtures, and temporary generated-package verification.
|
||||
- English canonical documentation with a complete Simplified Chinese mirror,
|
||||
a configuration reference, compatibility matrix, diagnostics reference, and
|
||||
migration guide.
|
||||
|
||||
### Changed
|
||||
|
||||
- `GenerationResult.writtenFiles` now contains only files actually written;
|
||||
`generatedFiles` contains the complete target set. Dry runs use
|
||||
`wouldWriteFiles` and `wouldDeleteFiles`.
|
||||
- When a configuration file is passed explicitly and neither
|
||||
`workingDirectory` nor `--cwd` is set, its directory becomes the host project
|
||||
working directory.
|
||||
- A `default` response is no longer treated as successful. XML, Protobuf, and
|
||||
other response media types without a safe decoder now produce diagnostics.
|
||||
- `dart fix` and `dart format` operate only on primary generated files changed
|
||||
by the current run.
|
||||
- All non-test Dart declarations now satisfy `public_member_api_docs` without
|
||||
file-level exclusions, including internal IR and lifecycle types.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Made `formatting.run_dart_fix` and `output.extract_version_from_url`
|
||||
effective.
|
||||
- Avoided Dio/Retrofit `Headers` import conflicts, missing Freezed custom
|
||||
`toJson` methods, and parameter, field, and method mapping collisions.
|
||||
- Synchronized the generator version recorded in lifecycle manifests with the
|
||||
package's `0.2.0` version.
|
||||
|
||||
## 0.1.0 - 2026-06-02
|
||||
|
||||
- Initial release of `koi_swagger_parser`.
|
||||
- Added common OpenAPI 3.1/FastAPI parsing, Koi-style Retrofit API generation,
|
||||
and Freezed model generation.
|
||||
- Added compatibility loading for legacy `generator_config.yaml` files.
|
||||
|
||||
Reference in New Issue
Block a user