[v1.7.0] - 2026-09-16
Добавлено
- Турбо-режим пакетного применения изменений (
--fast/--batch):- Флаги
--fastи--batch(синонимы) для командmlm sync,mlm append,mlm remove. - Упаковка изменений в пакеты (по умолчанию по 250 записей, настраивается через
--batch-size) и атомарное выполнение через RouterOS скрипты (POST /rest/executeс прозрачным fallback на/rest/system/script). - Увеличение скорости применения многотысячных списков в десятки раз (обработка списков в 8 000+ записей за секунды вместо десятков минут).
- Защита от сбоев отдельных записей: каждая команда в скрипте оборачивается в
:do { ... } on-error={}. - Автоматический fallback: при непредвиденной ошибке выполнения скрипта на роутере утилита плавно переключается на стандартный параллельный режим REST API.
- Флаги
- Мгновенная очистка списков
mlm purgeчерез RouterOS скрипты:mlm purgeтеперь удаляет все записи списка одной RouterOS командой/ip firewall address-list remove [find where list="..."]за доли секунды (~0.1–0.2 с).- Сохранён автоматический fallback на параллельное удаление отдельных записей, если у пользователя API нет прав на выполнение скриптов.
- Интеллектуальный перехват Ctrl+C (SIGINT) и предложение авто-отката (Rollback):
- Корректная обработка сигнала прерывания во время
mlm sync: вывод понятного предупреждения⚠ Синхронизация списка прервана пользователем (Ctrl+C)и завершение с кодом130. - Отключён избыточный вывод длинного блока
Usageпри возникновении ошибок или прерывании процесса (SilenceUsage: true). - Аккуратная очистка строки прогресс-бара при прерывании без артефактов в терминале.
- Интерактивное предложение мгновенного отката к предварительно созданному автоматическому снимку:
Откатить изменения списка к снимку? [Y/n]. - Если исходный список на роутере был пуст, откат выполняется мгновенно одной скриптовой командой очистки за 0.1 секунды.
- Если откат отклонён пользователем, выводится готовая команда для ручного отката в любое удобное время (
mlm rollback -l <list> --id <snapID>).
- Корректная обработка сигнала прерывания во время
Full Changelog: v1.6.1...v1.7.0