Skip to content

ibcmd-rs v0.2.0

Choose a tag to compare

@Untru Untru released this 28 Sep 09:15
· 992 commits to master since this release

Выгрузка и загрузка конфигураций 1С между XML и базой на SQL Server — теперь быстрее штатного ibcmd и с загрузкой в пустую базу. Как запускать — в README.

Главное

  • Выгрузка через модель метаданных — по умолчанию. На БСП и ERP УХ, платформы 8.3.27 и 8.5, все файлы XML совпадают со штатной выгрузкой той же базы.
  • Выгрузка быстрее штатной. ERP УХ, около 140 тысяч файлов: 3,5–4,5 мин против 6–7 мин у ibcmd 8.3.27, 3–4 мин против 5,5–7 мин у ibcmd 8.5. БСП: 12 с против 17 с.
  • Загрузка в пустую базу: mssql-stage-source-objects --base-free собирает все строки конфигурации из одного XML. Проверено на БСП и ERP УХ, 8.3.27 и 8.5: пустая база, наша загрузка, штатный config apply, штатная выгрузка — совпадают все файлы, кроме ConfigDumpInfo.xml.
  • Скорость:
    • табличные макеты — в ~10 раз меньше CPU;
    • формы — в ~4 раза меньше;
    • этап индексов выгрузки — в ~3 раза меньше;
    • запись файлов вынесена в отдельные потоки, аллокатор mimalloc;
    • загрузка в пустую базу быстрее в 2–5 раз, ERP УХ — около минуты.
  • 8.5: строка version теперь перечисляет возможности платформы, которые использует конфигурация (цвета палитры). Раньше config apply отказывался: «требуется более новая версия платформы».

Файлы

  • ibcmd-rs.exe — исполняемый файл для Windows x64.
  • ibcmd-rs-0.2.0-x86_64-pc-windows-msvc.zip — exe, README, матрица совместимости и SBOM; рядом .sha256.
  • ibcmd-rs-0.2.0-x86_64-pc-windows-msvc.sbom.cdx.json — состав зависимостей (CycloneDX).

Проверка

  • 3 421 тест, 0 падений.
  • Выгрузка из SQL и из сохранённых строк на четырёх корпусах совпадает со штатной.
  • Загрузка в пустую базу проверена на четырёх корпусах в настоящих базах.
  • Упаковка scripts/package_release.py, аудит scripts/audit_release.py: в бинарнике нет вызовов платформы 1С.

Ограничения

  • Только Microsoft SQL Server. Создание базы и config apply выполняет штатная платформа.
  • Проверено на БСП и ERP УХ (8.3.27.2214 и 8.5.1.1150).
  • При загрузке ERP УХ в пустую базу в ConfigDumpInfo.xml нет 145 пустых служебных записей (справка и предопределённые без содержимого).
  • Этот релиз собран вручную, теми же шагами, что и конвейер release.yml. CI в репозитории сейчас красный: форматирование кода и новые проверки clippy.