Files
virtuality/updates/versions.json
T

242 строки
14 KiB
JSON

{
"versions": [
{
"version": "0.7.7",
"date": "2026-05-07",
"title": "Импорт дисковых образов из архивов",
"summary": "Менеджер дисков теперь принимает .zip, .tar.gz и .tgz архивы, безопасно распаковывает их и импортирует найденные .img/.raw/.qcow2 образы.",
"features": [
"Добавлена поддержка загрузки .zip, .tar.gz и .tgz в разделе Диски",
"Архивы распаковываются безопасно без абсолютных путей и ../",
"Из архивов импортируются только .img, .raw и .qcow2 файлы",
".img и .raw после распаковки автоматически конвертируются в qcow2",
"Установщик подключает patch_disk_images.py и patch_disk_archives.py",
"Интерфейс загрузки дисков обновлён под архивы",
"Версия обновлена до 0.7.7"
]
},
{
"version": "0.7.6",
"date": "2026-05-07",
"title": "Фильтры типов загружаемых файлов",
"summary": "В интерфейсе разделены установочные ISO и готовые дисковые образы: ISO принимает только .iso, Диски принимают только .img, .raw и .qcow2.",
"features": [
"В ISO-менеджере input file ограничен только .iso",
"В менеджере дисков input file ограничен .img, .raw и .qcow2",
"Добавлена клиентская проверка расширений перед загрузкой ISO",
"Добавлена клиентская проверка расширений перед загрузкой готовых дисков",
"Подсказки интерфейса теперь явно разделяют установочные образы и образы установленных систем",
"Версия обновлена до 0.7.6"
]
},
{
"version": "0.7.5",
"date": "2026-05-07",
"title": "Сохранение авторизации после обновления",
"summary": "Session secret теперь хранится постоянно в /var/lib/virtuality/config/session_secret, поэтому обновления больше не должны сбрасывать авторизацию в панели.",
"features": [
"Установщик больше не генерирует новый session secret при каждом запуске",
"Секрет сессий хранится в /var/lib/virtuality/config/session_secret",
"Файл session_secret создаётся один раз с правами 600",
"После обновления cookie остаются валидными, если secret уже был создан",
"Версия обновлена до 0.7.5"
]
},
{
"version": "0.7.4",
"date": "2026-05-07",
"title": "Диагностика пустых DHCP leases",
"summary": "Блок DHCP leases теперь показывает структурированную таблицу lease-ов или понятную причину, почему список пуст.",
"features": [
"Добавлен разбор virsh net-dhcp-leases в структурированные строки",
"Пустой список DHCP leases теперь сопровождается диагностической подсказкой",
"На странице сети добавлены команды проверки DHCP и интерфейсов VM",
"Установщик подключает patch_dhcp_leases_empty.py",
"Версия обновлена до 0.7.4"
]
},
{
"version": "0.7.3",
"date": "2026-05-07",
"title": "Совместимость загрузки файлов",
"summary": "Загрузки ISO и дисковых образов переведены на временный каталог Virtuality вместо системного /tmp, а имена файлов стали обрабатываться мягче.",
"features": [
"Добавлен /var/lib/virtuality/tmp как временный каталог загрузок",
"systemd service получает TMPDIR, TEMP и TMP внутри каталога Virtuality",
"Установщик создаёт временный каталог с правами 1777",
"Добавлен patch_upload_compat.py для мягкой нормализации имён файлов",
"Ошибки загрузки теперь подсказывают проверить права и свободное место",
"Версия обновлена до 0.7.3"
]
},
{
"version": "0.7.2",
"date": "2026-05-07",
"title": "Надёжная синхронизация автообновлений",
"summary": "Автообновление больше не использует git pull --ff-only, а синхронизирует серверные исходники через fetch, reset --hard и clean.",
"features": [
"git pull --ff-only заменён на git reset --hard origin/main",
"Перед сбросом локальные изменения пишутся в update.log",
"Добавлен git clean -fd для удаления мусорных файлов в source",
"Автообновление стало устойчивее к локальным изменениям в /opt/virtuality/source",
"Версия обновлена до 0.7.2"
]
},
{
"version": "0.7.1",
"date": "2026-05-07",
"title": "Фикс записи XML NAT-сети",
"summary": "XML-файл libvirt NAT-сети перенесён из /tmp в /var/lib/virtuality/network, чтобы убрать Permission denied на системах с жёсткими правами /tmp.",
"features": [
"NAT XML теперь хранится в /var/lib/virtuality/network/virtuality-nat.xml",
"Запись XML выполняется атомарно через временный файл в каталоге Virtuality",
"virsh net-define использует стабильный путь вместо /tmp/virtuality-nat.xml",
"Версия обновлена до 0.7.1"
]
},
{
"version": "0.7.0",
"date": "2026-05-07",
"title": "Автоустановка обновлений каждые 15 минут",
"summary": "Добавлен systemd timer, который каждые 15 минут проверяет GitHub и автоматически устанавливает обновление при появлении новых коммитов.",
"features": [
"Добавлен scripts/auto_update_check.sh для фоновой проверки GitHub",
"Установщик создаёт virtuality-auto-update.service",
"Установщик создаёт virtuality-auto-update.timer с интервалом 15 минут",
"Автообновление использует lock-файл и не запускает параллельные установки",
"Лог пишется в /var/log/virtuality/update.log",
"Версия обновлена до 0.7.0"
]
},
{
"version": "0.6.5",
"date": "2026-05-07",
"title": "Безопасные ошибки NAT-сети",
"summary": "Страница сети больше не падает Internal Server Error при сбоях создания или починки NAT, а показывает понятную ошибку в интерфейсе.",
"features": [
"Добавлен безопасный обработчик ошибок для /network/nat/setup",
"Страница /network защищена от падения при ошибках чтения сетевого состояния",
"Ошибки NAT теперь отображаются в красном блоке вместо белого 500",
"Версия обновлена до 0.6.5"
]
},
{
"version": "0.6.4",
"date": "2026-05-07",
"title": "Проверка RAM для ARM64 эмуляции",
"summary": "Перед запуском ARM64 VM на x86-хосте Virtuality проверяет доступную память и заранее показывает понятную ошибку, если RAM недостаточно.",
"features": [
"Добавлена проверка MemAvailable перед ARM64-эмуляцией на x86",
"Ошибка нехватки памяти теперь показывается до запуска QEMU",
"Сообщение подсказывает рекомендуемый объём RAM для VM",
"Версия обновлена до 0.6.4"
]
},
{
"version": "0.6.3",
"date": "2026-05-07",
"title": "Автоматический мониторинг обновлений",
"summary": "Кнопка ручной проверки обновлений убрана, страница обновлений сама запускает проверку GitHub при открытии и дальше по расписанию.",
"features": [
"Убрана кнопка Проверить сейчас в Update Center",
"Проверка обновлений запускается автоматически при открытии /update",
"Повторная проверка выполняется каждые 5 минут",
"Версия обновлена до 0.6.3"
]
},
{
"version": "0.6.2",
"date": "2026-05-07",
"title": "ARM64 зависимости для x86-хостов",
"summary": "Исправлена установка ARM64 QEMU-зависимостей на x86/VPS, чтобы импорт готовых ARM64 дисков не падал из-за отсутствующего qemu-system-aarch64.",
"features": [
"На x86-хостах устанавливаются qemu-system-arm и qemu-efi-aarch64",
"Добавлена проверка наличия qemu-system-aarch64 после установки пакетов",
"cloud-image-utils добавлен в x86-профиль зависимостей",
"Версия обновлена до 0.6.2"
]
},
{
"version": "0.6.1",
"date": "2026-05-07",
"title": "ARM64 через QEMU XML",
"summary": "Добавлен отдельный XML-путь запуска ARM64 готовых дисков на x86-хостах через qemu-system-aarch64.",
"features": [
"ARM64 .img/.qcow2 на x86 создаётся через прямой libvirt XML",
"Для ARM64 на x86 используется qemu-system-aarch64 и CPU cortex-a57",
"ARM64 ISO на x86 блокируется понятной ошибкой — используем готовый диск",
"Версия обновлена до 0.6.1"
]
},
{
"version": "0.6.0",
"date": "2026-05-07",
"title": "Архитектуры VM и дисковые образы",
"summary": "Добавлены выбор архитектуры VM, загрузка .img/.raw/.qcow2, прогресс конвертации и уведомления об обновлениях.",
"features": [
"Добавлен выбор архитектуры VM",
"Добавлена загрузка локальных дисковых образов",
"Добавлен второй прогресс конвертации .img/.raw в qcow2",
"Добавлены уведомления об обновлениях на дашборде"
]
},
{
"version": "0.5.0",
"date": "2026-05-07",
"title": "GitHub Update Center",
"summary": "Автообновление Virtuality напрямую из GitHub.",
"features": [
"Добавлена страница /update",
"Добавлен список пропущенных версий и функций",
"Добавлен исполнитель обновлений",
"Добавлен VERSION-файл проекта"
]
},
{
"version": "0.4.0",
"date": "2026-05-07",
"title": "ISO upload progress and NAT ranges",
"summary": "Улучшены загрузка ISO и сетевой блок.",
"features": [
"Добавлен прогресс загрузки ISO",
"Добавлены диапазоны портов",
"Добавлена диагностика правил проброса"
]
},
{
"version": "0.3.0",
"date": "2026-05-06",
"title": "VPS NAT Router",
"summary": "Добавлена NAT-сеть virtuality-nat для VPS.",
"features": [
"Добавлена virtuality-nat / virbr100",
"Добавлен DNAT/MASQUERADE",
"Добавлены UFW и iptables fallback"
]
},
{
"version": "0.2.0",
"date": "2026-05-06",
"title": "noVNC console and VM operations",
"summary": "Добавлена web-консоль VM и журнал операций.",
"features": [
"Добавлена noVNC-консоль VM",
"Добавлен журнал операций",
"Добавлен live log virt-install"
]
},
{
"version": "0.1.0",
"date": "2026-05-06",
"title": "Initial Virtuality panel",
"summary": "Базовая web-панель Virtuality.",
"features": [
"Авторизация через Linux-пользователя",
"Дашборд хоста",
"Создание VM",
"ISO-менеджер"
]
}
]
}