Найти в Дзене
Platformeco

Улучшения работы с Temporal и git в Cloud Manager, новая система логирования в Cloud Studio, обновленния в сателлитах и коннекторах

NEW При использовании shared flow в workflow можно указать для него retry options и timeout. Исправления и обновления:
— изменение фона при наведении курсора на область, связанную с Sequence политикой; — исправлено сохранение eslint ошибок по кастомным правилам в файл дефиниции;
— устранено попадание отладочного контекста в YAML-файл дефиниции;
— исправлено отображение репозитория переменных для workflows; — исправлено изменение (merge, replace) общих моделей данных из диалогов model mismatch indicator;
— устранена ошибка обновления eslint для кастомных правил уровня flow при сохранении логической единицы;
— исправлено появление ошибки подключения дебаггера при перезапуске сервера;
— удалён фильтр дата-моделей по тегам, так как теги не поддерживаются для дата-моделей;
— исправлено сохранение timeout и retry в неправильные разделы узлов, их значения не учитывались;
— исправлена валидация политик типа branches: предупреждение о незаполненном поле condition больше не отображается для ветк
Оглавление

Studio Web

4.5.4 — 4.6.1

NEW

При использовании shared flow в workflow можно указать для него retry options и timeout.

-2

Исправления и обновления:
— изменение фона при наведении курсора на область, связанную с Sequence политикой;

-3

— исправлено сохранение eslint ошибок по кастомным правилам в файл дефиниции;
— устранено попадание отладочного контекста в YAML-файл дефиниции;
— исправлено отображение репозитория переменных для workflows;

-4

— исправлено изменение (merge, replace) общих моделей данных из диалогов model mismatch indicator;
— устранена ошибка обновления eslint для кастомных правил уровня flow при сохранении логической единицы;
— исправлено появление ошибки подключения дебаггера при перезапуске сервера;
— удалён фильтр дата-моделей по тегам, так как теги не поддерживаются для дата-моделей;
— исправлено сохранение
timeout и retry в неправильные разделы узлов, их значения не учитывались;
— исправлена валидация политик типа branches: предупреждение о незаполненном поле condition больше не отображается для ветки otherwise в политике switch;
— исправлено отображение output переменной на графе для loop политик;
— устранена ошибка обновления входного контекста дефиниции в репозитории переменных после изменения документации;
— добавлена ошибка отображения названия для fx workflow node, если поле пустое;

-5

— устранено падение сервера при внесении изменений в конфигурацию;
— исправлено подключение отладчика после перезагрузки сервера;
— исправлено отсутствие автогенерированной модели при добавлении блока foreach

-6
Предупреждения:
1. До последнего релиза в версии 4.6 настройки секций
timeout и retry сохранялись в неправильных разделах узлов, и их значения не учитывались. Старые значения не переносятся автоматически и должны быть пересохранены или удалены вручную;
2. В редакторе
output для forEach могли отображаться части conditional схем. Это некорректное поведение было устранено. Conditional схемы временно не будут отображаться в репозитории переменных до полной поддержки.
-7

Cloud Studio 4.9.4

Исправления. Скрипт Saver, сохраняющий backup сессии теперь работает корректно: исправлено регулярное выражение для исключения директорий, исправлена проблема падения скрипта с ошибкой при большом количестве файлов в канале.

-8

Core

3.36.1 — 3.51.1

NEW

— Полностью стандартизированы логи.

-9

— Перенесены зависимости @temporalio в раздел peerDependencies. Это изменение позволило уменьшить размер папки node_modules на ~200 МБ, что особенно полезно для пользователей, которые не используют функционал workflow, так как они не будут сталкиваться с лимитом ephemeral-storage при создании сессий в облачной студии.

Теперь зависимости Temporal не устанавливаются автоматически при установке Core. Для успешной работы workflow пользователи должны отдельно установить необходимые зависимости в своём канале. Актуальный список зависимостей можно найти в файле
package.json, на данный момент это:

  • ″@temporalio/activity″: ″~1.10.1″
  • ″@temporalio/client″: ″~1.10.1″
  • ″@temporalio/interceptors-opentelemetry″: ″~1.10.1″
  • ″@temporalio/testing″: ″~1.10.1″
  • ″@temporalio/worker″: ″~1.10.1″
  • ″@temporalio/workflow″: ″~1.10.1″
-10

— Добавлена возможность поддержка TLS для workflow и возможность запуска блоков Workflow в Try it.

-11

Исправления и обновления:
— снижено потребление памяти для Shared Flow с большим количеством вложенности (Shared flow вложенных в другие shared flow);
— обновлены зависимости temporalio;
— обновлены SDK и Channel Loader до последних версий;
— теперь, если в канале включена валидация workflow, и пропущен обязательный
output, Core не стартует из-за ошибки валидации;
— ошибки теперь отображаются на уровне
warn;
— добавлены
spanId и traceId в логи;
— теперь можно отключить
pretty print в логах;
— добавлена документация по логированию;
— обновлены версии channel-loader и SDK.

-12

Devportal

Front 1.0.1

Исправления:
— починен diff service, который ранее не работал;
— починен graph service, теперь его можно конфигурировать через переменные окружения (envs);
— убраны лишние запросы на пермиссии.

Graph 1.0.0 — 1.1.0

NEW

Обновили сервис Graph в Devportal до актуального состояния:
— По умолчанию отображается граф для значений фильтров
Implementation = Kong и Environment = prod. Если окружение prod отсутствует, будет выбрано первое доступное окружение, полученное с бэкенда.
— При нажатии на узел продукта открывается карточка с информацией о выбранном продукте. Количество отображаемых интеграций учитывает фильтры и соответствует количеству интеграций, показанных на подсвеченных стрелках.

-13

Исправления:

— исправлена проблема со скроллом;
— удален хардкод env’ов, теперь они могут быть настроены через конфигурацию.

Diff Service v1.0.0

Восстановлена старая логика сравнения diff’ов, которая была затронута в ходе рефакторинга.

-14
-15

Control plane

Общие изменения:
— добавлена возможность отключить сценарий регистрации;
— внедрена настройка автоматического создания и управления членством в командах на основе данных о группах пользователей, передаваемых в claims от OIDC-провайдера;
— замена Posthog на OpenFeature для управления ✅
feature flags.

API Server 0.39.0

NEW

— Создание маппинга claims на команды.
— Исполнение team mappers.
— Настройка сценария регистрации в зависимости от значения ✅
feature flag.
— Замена Posthog на OpenFeature для ✅
feature flags.

Исправления: удаление задеплоенного окружения происходит только после деаллокации инфраструктуры.

Infra Manager 0.7.0

NEW

— Отправка события о статусе деаллокации при удалении окружения в API сервер.
— Использование git reference в заголовке источника роллаута.

Исправления:
— деаллокация ресурсов при удалении окружения;
— обновление Docker и Helm репозиториев;
— rollout workflow больше не ожидает перезапуска kubevela приложения.

Web UI 0.27.0

NEW

— Убрана возможность менять названия приложений и окружений.
— Замена Posthog на OpenFeature для работы с ✅
feature flags.
— В настройки SSO добавлен блок для автоматического сопоставления команд.
— Обновлены версии Plugin-SDK и UI-Components.
— Добавлено модальное окно подтверждения удаления окружения.

-16

— Введен флаг ✅register-usecase, который закрывает доступ к странице регистрации.
— В таблице команд отображается индикация автоматически созданных команд, для которых запрещены ручные изменения участников.

-17

Исправления и обновления:
— после удаления сопоставления ролей не очищалось поле «Условие»;
— ошибочно отображалась успешная нотификация об успешном добавлении пользователя в команду, даже если ни один пользователь не был добавлен;

Для работы с OpenFeatures нужно внести изменения в переменные окружения в 
helm confi
— удалить секцию, относящуюся к PostHog;
— добавить настройки feature flags для OpenFeature (подробнее можно прочитать в документации).

Web Plugins v2.5.0

NEW

Обновлены версии Plugin-SDK и UI-Components

-18
-19

Workflow

Policies v1.2.1

Исправления и улучшения:
— удален белый фон у иконки Start Workflow в политике;
— внесены некоторые изменения в репозиторий для улучшения опыта разработки.

Nodes 2.2.1 — 4.0.0

NEW

— Перенесли зависимости temporalio в раздел peerDependencies.
— Добавлен флаг ✅
Terminate On Error для узлов fx.

-20

Важно: для корректной работы требуется версия @platformeco/channel-loader@≥7.5.3 (это @platformeco/core@≥3.50.2 и @platformeco/studio@>4.6.3).

Исправления и обновления:
— зафиксировали версию библиотеки Temporal, чтобы обеспечить корректную работу с ядром;
— исправлена ошибка
No registered signal handler for signal при работе с сигналами;
— добавлено предупреждение в релиз-ноутс версий v2.2.1 и v2.2.2 о проблеме с сигналами;
— обновлены минимальные версии;
— исправлено отображение ноды и иконки deepCopy и подкорректирована иконка ноды compensation;

Руководство по миграции: убедитесь, что используете соответствующие версии.

-21
-22

Channel-loader

5.6.8 — 7.5.7

NEW

— Добавлен конвертер дата-моделей для блока forEach, чтобы он работал по стандартному алгоритму.
— Теперь при включенной настройке
validateWorkflows узлы в workflow валидируются целиком, а не только блок params.
— Добавлен линтер для workflows.
— Добавлены настройки TLS в конфиг
workflows.connection

Изменения и обновления:
— исправлена ошибка, из-за которой ошибки валидации сохранялись в YAML-файлах дефиниций и конфигов;
— обновлена настройка
ecmaVersion в дефолтном конфиге ESLint-а;
— исправлено исчезновение workflow, если в shared flow добавлен
required атрибут для какого-либо свойства;
— исправлена проблема с сохранением, если какая-то дефиниция имеет некорректное наличие
execute в блоке sharedFlow;
— добавлена информация о линтере в документацию channel-loader;
— логгер в тулах теперь запускается в синхронном режиме, чтобы успевать отображать логи в процессе выполнения;
— исправлена проблема с отображением схемы для
output в репозитории переменных для workflow;
— обновлен SDK;
— удалено логирование об отсутствии конвертеров у политик, у которых их нет;
— исправлена проблема, из-за которой дефиниция в определенном состоянии удалялась после сохранения;
— добавлено удаление ошибок из блоков workflow fx;
— добавлена запись
module.export в файл workflow блока fx, при этом при чтении эта запись обрезается;
— исправлена ошибка Parsing Error, возникающая в линтере студии, если включена поддержка пользовательских конфигов без подключения конфигурации platformeco eslint;
— обновлена версия ESLint для линтинга файлов до 9 версии;
— добавлена поддержка новых flat eslint конфигов в каналах для всех пользователей.

-23

Cloud Manager

11.10.0 — 11.11.0

NEW

Добавлены:
— ссылка на Temporal UI в таблице сессий;
— кнопка на Ungit в список сессий

Изменения:
— теперь для проверки количества сессий используется email, что позволило восстановить корректную работу лимитов по сессиям;
— добавлена возможность добавления git-токена без срока действия;

-24

— temporal UI теперь автоматически открывается в новой вкладке при клике на иконку в таблице сессий;
— исправлено положение плейсхолдера с сообщением о том, что сессия не использовалась долгое время и будет удалена

-25
-26

Tool

1C Integration Tool 1.0.1 — 1.1.1

NEW

— Добавлена возможность фильтрации коллекций для создания shared flow.
— Добавлена возможность обновлять существующие shared flow и конфигурации, если они уже были сгенерированы.
— Изменен механизм генерации Primary Key для shared flow.

Исправления и обновления:
— удален
format: template из свойств в настройках;
— добавлены логи для повышения читаемости процесса;
— исправлен прогресс-бар для процесса;
— обновлена документация по новым функциям

Руководство по миграции: добавлено руководство по миграции в файл MIGRATION.md

Plugin Manager Tool 1.0.1

Исправления и обновления:
— изменен импорт констант из пакета
fs с промисов на обычный импорт (что влияло на совместимость с версиями Node. js)
— обновлены движки в файле
package.json

-27

SQL Loader 1.2.0

NEW

Добавлена возможность указать schemaName в настройках

-28
-29

ESLint Config & Plugin

1.4.1 — 1.6.1

NEW

— Добавлено новое правило do-not-use-body-with-no-content-status, которое запрещает заполнять body в политике setResponse, если выставлен статус 1xx, 204 или 304.
— Правило добавлено с уровнем
error.
— Добавлено новое правило
avoid-recursive-workflows.

Исправления и обновления:
— исправлена ошибка
uuid is not defined в версиях channel-loader 7.1.1 и 5.6.7;
— добавлена обработка всех веток для правила «platformeco/max-branch-blocks»;
— политики
kafka-infinite-retry и use-kafka-dlq теперь работают только для политик Kafka;
— исправлено некорректное срабатывание правила
duplicate-superagent-host в студии;
— правило
avoid-recursive-workflows теперь выставлено на уровень предупреждения (warn)

-30

Shared Configs 5.0.0

Важные изменения:
— Обновлен ESLint до версии 9.
— Обновлен Prettier до версии 3.
— Обновлен Stylelint до версии 16.

Улучшения:
— Переписаны postinstall-скрипты без использования пакета
glob.
— Удален пакет
glob из зависимостей.
— Обновлен ESLint конфиг до новой версии с flat-конфигурацией.

-31

SDK

v3.6.0— 3.9.2

NEW

— Удалена схема output из манифестов.
— Добавлены:

  • уровень логирования trace для рендеринга props;
  • типы для линтера workflow;
  • раздел TLS в тип конфига.

Исправления и обновления:
— исправлено отсутствие типов для channel-loader;
— удален
additionalProperties: false из схемы узлов fx;
— Добавлен тип
uuid в ajv

-32
-33

Array Policy 2.1.3

NEW

— Теперь при выборе режима Code Block добавляется пустая функция по умолчанию, которая служит подсказкой о том, в каком виде ожидается ввод (для политик map и find).
— Обновлена библиотека lodash до безопасной версии.

-34
-35
-36

JSON To XML Policy v1.0.3

Обновлена библиотека xml2js до версии 0.6.2

-37
-38

OpenFeature Connector v1.0.0

NEW

— На данный момент поддерживает двух провайдеров:

  • задание флагов через переменные окружения (env);
  • использование go feature flag

— Методы коннектора: init, shutdown, send
— Политика получения флагов: ✅
Get Flag Policy

-39
-40
-41

SMTP Connector 1.4.2

Исправлена ошибка валидации при передаче контекстной переменной в поле email

-42
-43
-44

S3 Connector

3.0.0 — 3.0.1

NEW

Обновлен AWS SDK (клиент для подключения к S3) до 3 версии.

Важные изменения:
— параметр
region стал обязательным для указания в настройках коннектора;
— удалено поле
signatureVersion из настроек коннектора, так как этот параметр считается устаревшим и не используется в 3 версии AWS SDK;
— добавлен отсутствующий тег
operation.name, из-за которого не происходил переход от метрик к трейсам;
— исправлена проблема с валидацией значения поля
content, переданного в методах putObject и upload. При включенной валидации в Core, при передаче поля как Buffer, возникала ошибка валидации.

Руководство по миграциии:
Для корректной работы коннектора необходимо заполнить поле
region в настройках в зависимости от региона бакета. Пример для Яндекса: ru-central.

-45
-46
-47

Postgres Connector 2.3.0

NEW

Добавлена возможность передачи NULL при отсутствии значения параметра в Postgres политиках: для параметров запроса добавлен флаг ✅Ignore indefinite values. Если флаг установлен в true и значение параметра равно undefined или null, параметр передается в базу как системный NULL

-48
-49
-50

IOredis Connector

2.13.0 — 2.14.0

NEW

— Добавлен параметр Timeout в настройки коннектора.
— Добавлена возможность передавать значение
timeout через контекстную переменную для политик Redis.

Обновления:
Теперь приоритет поля
timeout следующий:

  1. Значение в пользовательском интерфейсе (UI) политики.
  2. Значение в контекстной переменной политики.
  3. Значение в настройках коннектора.
-51
-52
-53

Fastify Connector

4.0.1 — 4.3.0

NEW

Добавлено:
— отображение ошибок на уровне
warn;
— подсказка для поля
body в политике SetResponse с пояснением о статус-кодах;
— предупреждение, если ответ не должен содержать тело запроса;
— эндпоинт
/srv/readiness, который возвращает код 200 и переключается на 503 при получении сигналов SIGTERM или SIGINT;
— описание политики
SetResponse ссылкой на коды HTTP-статусов

-54

Исправления и обновления:
— убран
Content-Type для методов GET и HEAD;
— улучшена работа с другими методами:

  • Content-Type теперь необязателен для метода DELETE в запросах.
  • Content-Type теперь необязателен для методов PUT, PATCH, DELETE и HEAD в ответах.

— перемещен раздел bodySchema перед responsesSchema, чтобы сгруппировать все настройки запросов вместе;
— изменено значение по умолчанию для
underPressureOptions.sampleInterval в соответствии с дефолтным значением в Node.js. Старое значение работало некорректно;
— закреплена версия пакета
@fastify/under-pressure из-за существующего бага в последней версии;
— заменен
ts-node на tsx для разработки и тестирования;
— эндпоинт
/srv/healthcheck теперь регистрируется как отдельный эндпоинт.

-55
-56

Superagent Connector

5.6.0 — 5.6.1

Исправления и обновления:
— добавлено предупреждение в случае, если ответ не должен содержать тело запроса;
— обновлён
fast-xml-parser до версии 4.5.0

-57
-58

Kafka Connector v5.6.0

Исправления и обновления:
— добавлено отображение ошибок на уровне
warn;
— обновления: теперь ошибки отображаются на уровне
warn

-59
-60

JDBC Connector

4.8.0 — 4.12.3

NEW

— Добавлена поддержка типа ARRAY в rows и meta.
— Улучшена работа с ARRAY в результате вызова процедур.
— Добавлена возможность передачи
query timeout через контекстную переменную для JDBC политик.
— Добавлена возможность передачи NULL, если значение параметра отсутствует, для JDBC политик: добавлен флаг ✅
Ignore indefinite values. Если флаг установлен в true и значение параметра равно undefined или null, параметр передается в базу как системный NULL

-61

Исправления и обновления:
— добавлен параметр
Query Timeout в настройки коннектора с приоритетом:

  • Политика
  • Коннектор
  • По умолчанию — 5 секунд.
-62

— добавлена поддержка STRUCT в meta, rows, и улучшена поддержка в outputs;
— поддержка
STRUCT в rows доступна в двух форматах вывода — массивом или массивом объектов;
— добавлена информация о зависимости на сателлит в README. md
— обновлена таблица совместимости версий JDBC коннектора, сателлита и Core;
— приоритет поля
timeout теперь следующий:

  • поле в пользовательском интерфейсе (UI);
  • значение в контекстной переменной;
  • значение в настройках коннектора;
  • значение по умолчанию в JDBC коннекторе.

— исправлено поведение, вызывавшее ошибку валидации при использовании REF_CURSOR в политиках JDBCQuery и JDBCCallProcedure;
— обновлены зависимости
grpc-js и semver;
— исправлен баг, из-за которого при включенной валидации политик, политика JDBCTransaction завершалась с ошибкой;
— исправлено некорректное отображение названия JDBC коннектора в мониторинге и трейсинге, если название задавалось через контекстную переменную

-63

JDBC Satellite

4.8.0 — 4.10.1

NEW

— Добавлена поддержка драйвера FirebirdSQL JDBC.
— Улучшена работа с ARRAY в результате вызова процедур.
— Добавлена поддержка типа ARRAY в rows и meta.

-64
ВАЖНО Драйвер некорректно работает с query timeout, поэтому для FirebirdSQL он отключен

Исправления и обновления:
— добавлена поддержка
STRUCT в meta — теперь возвращается информация о полях этого типа;
— добавлена поддержка
STRUCT в rows — теперь структуры могут возвращаться в результатах запросов (можно выбрать в Result Columns или отобразить автоматически, если массив не заполнен);
— улучшена поддержка
STRUCT в результате выполнения процедур в параметрах Statement Input Parameter — OUT Direction (ранее можно было использовать только плоские структуры);
— добавлена переменная окружения
JDBC_SATELLITE_LOG_LEVEL для настройки уровня логирования (по умолчанию debug);
— улучшена обработка ошибок и решена проблема с засорением лога сообщением
call already closed v4.9.0;
— исправлена ошибка при работе с параметром
REF_CURSOR в типе output statement;
— добавлено предупреждение о проблеме в релиз-ноутсы версий 4.8.0—4.10.0.

-65

Tech Debt Management CP Module

1.0.2— 1.3.0

NEW

Добавлен обработчик для обновления версий компонентов

Исправления и обновления:
— исправлена проблема с загрузкой переменных окружения, из-за которой запросы на бэкэнд модуля управления техническим долгом не отправлялись;
— в CI добавлен этап валидации OpenAPI схем.

-66

Scheduler Executor 2.8.0

Добавлен трейсинг с пропагацией контекста для вызываемых дефиниций, которые запускаются шедулером. Настройка трейсинга доступна через новые переменные окружения:
1.
OTEL_PROPAGATORS — список пропагаторов, разделенный запятыми.
Поддерживаемые значения:
tracecontext, baggage, b3, jaeger.
Значение по умолчанию:
tracecontext, baggage
Все значения должны быть уникальными (дедуплицированы).
2.
OTEL_PROPAGATORS_JAEGER_CUSTOMTRACEHEADER — настройка customTraceHeader для Jaeger Propagator.
3.
OTEL_JAEGER_CUSTOMBAGGAGEHEADERPREFIX — настройка customBaggageHeaderPrefix для Jaeger Propagator.
4.
OTEL_PROPAGATORS_B3_INJECTENCODING — настройка injectEncoding для B3 Propagator.

-67
-68

Deployment Module Frontend 2.2.0

NEW

Изменено поведение кнопки развертывания в модальном окне: теперь кнопка будет отключена, если развертывание выполняется в выбранной среде или в среде, указанной в ключе REACT_APP_JOBS_TO_ENV_FILTER_CONFIGУлучшения: снижено количество технического долга для улучшения опыта разработки

-69

Блог Platformeco