Skip to content

IBStart 0.7.5

Choose a tag to compare

@github-actions github-actions released this 31 Aug 07:32
· 28 commits to main since this release

0.7.5 — 2026-08-31

Улучшено

  • В разделе «Недавние» рядом с базой теперь отображается относительное время последнего запуска; подписи обновляются раз в минуту.

Документация

  • Справочники синхронизированы с текущими «Недавними»: зафиксирован лимит в 20 уникальных баз, источник относительного времени и отсутствие сортировки по last_launches; архитектурное описание дополнено правилами восстановления выделения и покрытием этих сценариев тестами.

Исправлено

  • При обновлении дерева и F5 выбранная база сохраняет виртуальную ветку «Недавние» или «Избранное»; если она исчезла только из этой ветки, выделяется та же база в обычном каталоге, а не соседняя запись.
  • При поиске автоматически раскрываются родительские группы найденных баз; после очистки поиска восстанавливается состояние групп до начала поиска.
  • Парсер строк Connect сохраняет исходные фрагменты, поддерживает ; внутри кавычек, doubled/escaped quotes и повторяющиеся ключи; безопасное редактирование отклоняет незакрытые кавычки вместо молчаливой замены кавычек на апострофы.
  • Каталог ibases.v8i после чтения проверяется на пустые имена, дубли секций и ключей, повторяющиеся идентификаторы, отсутствующих родителей и циклическую иерархию. Неоднозначные записи остаются видимыми по стабильному индексу секции, но операции изменения, перемещения, удаления и сохранения блокируются до исправления файла.
  • Для ID= введён единый fallback на имя базы: одинаковый стабильный идентификатор теперь используется каталогом, тегами, историей, избранным, кэшем и ярлыками. Пустой ID даёт предупреждение, а дублирующийся идентификатор блокирует неоднозначные операции.
  • Документация сортировки приведена к текущему интерфейсу: описаны только команды сортировки прямых потомков корня или выбранной группы по имени; обещания глобального и локального профилей, а также сортировки по времени запуска удалены.
  • Построитель запуска получил typed ConnectionSpec и реестр конфликтов: смешение File/Srvr/Ref/WS, повторные reserved-параметры, raw-режимы, /Proxy с /NoProxy, невалидный или повторный /AppArch и альтернативное /URL теперь блокируют запуск с понятным предупреждением.
  • Очистка кэша при работающем клиенте 1С теперь явно предупреждает о возможной неполной очистке, не завершает процесс и продолжает обработку остальных разрешённых каталогов; итог сообщает о возможном влиянии процесса. Добавлены регрессионные проверки активного процесса и продолжения после ошибки каталога.
  • Очистка кэша корректно работает, когда системный корень %APPDATA% или %LOCALAPPDATA% представлен Windows через junction/alias; reparse point внутри разрешённого пути по-прежнему отклоняется.
  • Протокол сохранения ibases.v8i больше не использует файловый handle цели,
    который приходилось закрывать перед MoveFileExW: именованный mutex IBStart
    удерживается до commit, а атомарная замена выполняется отдельной операцией.
    Добавлены тесты, которые меняют файл и запускают конкурирующее сохранение
    непосредственно на границе commit. Защита распространяется на writers, использующих этот
    протокол; произвольные внешние программы могут не участвовать в mutex, и
    короткое окно TOCTOU для них явно считается остаточным ограничением Windows.