Атрибут search-on-clear поля <search-buttons> был перенесен в элемент <filters> таблицы под именем fetch-on-clear.
Атрибут search-on-change фильтра таблицы был переименован в fetch-on-change.
Атрибут icon был удален из виджетов.
Атрибут position был переименован в icon-position в элементе <output-text>.
Атрибут position поменял свое значение в ячейке <icon>.
Теперь это позиция иконки относительно текста (было наоборот: позиция текста относительно иконки).
Прекращена поддержка схемы menu-2.0.
Атрибуты icon, label, visible, enabled, datasource, model были удалены из <action>.
Произошли изменения в механизме сериализации\десериализации дат.
Раньше была возможность преобразовать любую строку указанного формата к дате в формате ISO 8601.
Для этого использовались настройки n2o.engine.rest.dateformat.deserialize и n2o.engine.rest.dateformat.serialize.
Но у этого механизма было несколько проблем.
Одна из самых очевидных, что для любого значения типа String
будет произведена попытка приведения к одному из указанных в настройке форматах.
Вторая проблема - абсолютно все строки подходящие под формат будут приведены к датам.
Во избежании этого ранее была введена настройка n2o.engine.rest.dateformat.exclusion-keys,
где можно перечислить список игнорируемых полей.
По итогу мы решили полностью отказаться от этого механизма и удалить все вышеназванные настройки.
Это значит, что все даты в n2o будут храниться в виде строк (любого формата!).
Соответственно в маппинги и нормализации они будут попадать будучи типом String.
Для того, чтобы поменять тип значения, можно указать атрибут domain="localdate" или domain="localdatetime".
После этого значение будет преобразовано в тип java.time.LocalDate или java.time.LocalDateTime соответственно.
Стоит напомнить, что атрибут domain временно не поддерживается во входящих полях query.xml.
Добавлена boolean настройка n2o.access.filtering_for_unique.
При значении true во все запросы с size=1 будут добавлены фильтры <object-filters> из access схемы,
чего не происходило ранее. По умолчанию значением настройки является false.