Holkas
GitHub · релизы

Что нового

v0.1.4

14 сентября 2026

Holkas v0.1.4 открывает работу с Oracle. В прошлых выпусках подключение к Oracle можно было создать, но список объектов приходил пустым — переносить было нечего. Теперь Oracle — полноценный источник и приёмник наравне с PostgreSQL.

Oracle как источник и приёмник

  • Подключение к Oracle создаётся как обычно, на странице подключений. После обновления каталога в нём появляются объекты базы.
  • Семь типов уровня БД, которые раньше числились неподдерживаемыми, теперь переносятся: функция, процедура, представление, таблица, синоним, последовательность, пакет. Таблица едет вместе с колонками, ограничениями, индексами, триггерами и правами.
  • Логика Паруса читается и применяется на Oracle: классы со всей семьёй (действия, методы, методы вызова, ограничения, связи, представления), домены, сообщения, стереотипы, пиктограммы, приложения, пользовательские процедуры и пользовательские отчёты.
  • Перенос между платформами: логика Паруса ездит между Oracle и PostgreSQL в обе стороны. Объекты уровня БД между платформами не переносятся намеренно — таблица Oracle остаётся таблицей Oracle, и превращать её в таблицу PostgreSQL Holkas не станет.

Прогон больше не останавливается на первом отказе

Раньше одна отказавшая команда обрывала применение целиком: набор из сотен объектов, где приёмник отказал в трёх, не переносился вовсе.

Теперь отказ останавливает только свой объект. Команда получает исход «не удалось» с причиной, остаток команд того же объекта помечается «пропущено» (они опирались на несостоявшуюся), а остальные объекты переносятся до конца. Причина каждого отказа видна в карточке команды и в журнале операции; операция в целом честно завершается неуспехом.

План показывает больше

  • Несколько блоков кода в одной команде. У пакета Oracle два текста — спецификация и тело. Раньше команда могла показать только один, поэтому не показывала ни одного. Теперь блоки идут друг за другом, каждый со своим заголовком; блок появляется только у изменившегося текста, чтобы правка не тонула в неизменившемся.
  • Причина отказа видна прямо в команде плана, рядом с её исходом.
  • Порядок значений домена и порядок действий класса стали отдельными командами плана — их видно и можно исключить, как любую другую.

Каталог объектов перестал скрывать типы

Список типов слева и числа рядом с ними строились по первой странице каталога. На большой базе страница обрывается в середине одного типа, и всё, что идёт дальше, пропадало из интерфейса вместе со своими объектами — вплоть до того, что пользовательские отчёты, пользовательские процедуры, пиктограммы и сообщения не показывались вовсе, а у процедур стояло заниженное число.

Теперь типы и счётчики берутся по всему каталогу, а объекты выбранного типа запрашиваются отдельно. Если у типа объектов больше, чем помещается на страницу, об этом сказано в заголовке списка.

Исправленные ошибки

  • Меню приложения. Раньше строка меню заводилась при создании приложения всегда и не убиралась никогда, а тело меню при изменении молча не записывалось. Теперь меню переносится во всех трёх случаях: снимается, если в источнике его нет; заводится, если строки в приёмнике нет; записывается, если есть у обоих. Снятие меню видно в плане до подтверждения.
  • Визуальные формы класса. Классы, у которых несколько форм с одинаковым именем, роняли построение плана целиком. Форма различается не только именем, но и тем, чем она открывается, — такие классы теперь переносятся.
  • Текст запроса представления класса при изменении уходил в чужой аргумент процедуры: присланный запрос терялся, а имевшийся затирался.
  • Пиктограмма пользовательской процедуры переносилась номером записи, а не кодом, из-за чего в приёмнике могла оказаться чужой.
  • Класс без таблицы раздела — законный случай, но чтение такого класса падало. Исправлено.
  • Значения доменов шире целого числа (например, двенадцатизначные коды) роняли чтение домена переполнением.
  • Порядок применения внутри коллекции. Удаления теперь идут раньше изменений, а изменения — раньше создания. Прежде создание упиралось в место, которое ещё не освободил уходящий или переезжающий элемент.

Обновление

Схема служебной базы Holkas в этом выпуске не меняется, новых обязательных параметров конфигурации нет.

Перед обновлением рекомендуем остановить Holkas и сохранить резервную копию каталога данных. Windows-версию лучше распаковать в новый каталог приложения и подключить к существующему каталогу данных.

Для работы с Oracle отдельной установки клиента не требуется — драйвер входит в поставку.

Дистрибутивы

К релизу приложены:

  • Holkas Web для Windows x64;
  • Holkas CLI для Windows x64;
  • файл SHA256SUMS для проверки архивов.

Docker-образ опубликован как belousov2501/holkas:0.1.4 и belousov2501/holkas:latest.

Обратная связь

Сообщить об ошибке, задать вопрос или предложить улучшение можно через GitHub Issues.

Обращения и вложения видны всем. Не публикуйте пароли, токены, строки подключения и конфиденциальные данные из баз; перед отправкой журнала операции обязательно проверьте его содержимое.

Образ Docker: belousov2501/holkas:0.1.4

Страница релиза v0.1.4 на GitHub