Releases: rollun-lc/rollun-openapi
10.0.1
Merge branch 'v9' into laminas
php v8 and laminas
10.0.0 fixed custom actions
Change invalid enum message
8.4.0 feat: change invalid enum value message
9.1.0
For test before merge to master
Revert two last releases
Для того чтобы решить проблему, которую пытались решить в последних двух релизах нужен мажорный релиз. В рамках 8 версии будем считать что это фича а не баг.
Fix nullable property for query data
Так как в query параметрах нельзя задать nullable свойство, а в DTO объектах все query параметры, которые не пришли в запросе по умолчанию null. То для query data нужно делать валидацию по required свойству. Если required=true, то параметр может быть null, а если false то не может.
paths:
"/orders":
get:
tags:
- Orders
summary: "Get list of orders"
parameters:
- name: rql
in: query
nullable: true // ошибка, nullable свойства нету у параметров
required: false
schema:
type: string
example: 'and(eq(supplierCode,Autodist),eq(status,Ordered))'
Fix nullable property depends on required property
Исправлена ошибка что валидация поля на null у сгенерированных DTO зависела от того присутствует поле в секции required или нет. Вместо того чтобы напрямую зависеть от свойства nullable схемы.
Пример неправильной работы:
Схема в манифесте
CreationTaskInfo:
type: object
required:
- id
- stage
- status
properties:
id:
type: string
description: Server generated unique id
example: '12345'
nullable: true
Сгенерированое DTO (ошибка в том что нету nullable="true"
):
class CreationTaskInfo
{
/**
* Client generated unique id
* @DTA\Data(field="id")
* @DTA\Validator(name="Type", options={"type":"string"})
* @var string
*/
public $id;
Исправлено issue: #3
9.0.9
Fixed default configuration
8.2.3
add validator for case when additionalProperties = true
9.0.8
custom server methods