Skip to content

v5.1.2

Latest

Choose a tag to compare

@SergeSavel SergeSavel released this 23 Aug 14:54
· 18 commits to main since this release

Изменения в версии 5.1.2

По сравнению с версией 5.1.1.

Исправления

Приём сообщений с пустым телом. Значение или ключ нулевой длины (пустое тело без флага null) больше не приводят к ошибке разбора. Обработаны все форматы сериализации:

Сердес Результат при пустом теле
Строка ""
ДвоичныеДанные пустые двоичные данные
Uuid Неопределено
СтруктураJson, СоответствиеJson, Xml Неопределено
Игнорировать Неопределено, тело не пропускается лишний раз

Принцип: если у формата есть корректное представление пустого тела, возвращается пустое значение этого типа; если нет — возвращается Неопределено, значение не подменяется выдуманным.

В версии 5.1.1 такие сообщения обрабатывались частично: пустое тело в форматах Uuid, JSON и XML приводило к исключению при разборе, а не к возврату значения.

Совместимость

Изменений в метаданных нет, миграция не требуется.

Изменилось поведение приёма для сердесов Uuid, СтруктураJson, СоответствиеJson и Xml: при пустом теле сообщения приёмная процедура теперь получает Неопределено вместо исключения. Если прикладной код рассчитывал на прерывание обмена в этом случае, проверку нужно добавить явно.