Repository navigation
Releases: Tchk-zz/cat-zapret
Release list
Zapret GUI 1.9.7
Исправляющий релиз самообновления и полное обновление публичной документации проекта.
Исправлено
- Убран запуск установщика через
cmd /c startс ручным добавлением кавычек.
Windows повторно экранировала их и искала несуществующий файл во временной папке. - Проверенный установщик теперь запускается напрямую как отдельный процесс: путь
передаётся одним необрамлённым элементом argv, а экранирование выполняет Windows. - Добавлены regression-тесты для обычного временного пути и пути с пробелами,
а также проверка detached-флагов Windows.
Обновлено
- Release-зависимости обновлены до
cryptography 50.0.1иPyInstaller 6.22.3;
актуальныеPyQt6 6.11.0,requests 2.34.2иpywin32 312сохранены. - GitHub Actions переведены на актуальные Node 24-совместимые версии
checkout,setup-pythonиupload-artifact. - README, политика безопасности, руководство участника, release checklist,
лицензии, шаблоны Issues и остальные GitHub-материалы полностью освежены. - В репозитории оставлены только полезные исходники и документация; локальные
кэши и старые результаты сборок удалены без затрагивания пользовательских данных.
Важно при обновлении с 1.9.5/1.9.6
- В этих версиях находится старый повреждённый механизм запуска. Если кнопка
обновления показывает ошибку поиска временного EXE, один раз скачайте и запустите
установщик 1.9.7 вручную со страницы Releases. Начиная с 1.9.7 последующие
обновления снова устанавливаются из приложения.
Проверка целостности
SHA-256 ZapretGUI-Setup.exe:
e5e1ea53d6ccfdfb2367661598b4adf1fa2bea4dc4d526cb4647a8fbe9f5f25b
Проверить скачанный файл (PowerShell):
Get-FileHash .\ZapretGUI-Setup.exe -Algorithm SHA256Zapret GUI 1.9.6
Исправляющий релиз после 1.9.5: полное обновление Zapret снова доставляет все
upstream-файлы, а функциональные иконки главного экрана отображаются во всех темах.
Установка поверх 1.9.5 безопасна; пользовательские настройки и списки сохраняются.
Исправлено
- Восстановлены иконки карточек «Автоподбор» и «Тест обхода» в светлой и
фиолетовой темах; логика функциональных иконок больше не связана с декоративным
отображением маскота. - Обновление Zapret теперь объединяет проверенный release asset с исходным
архивом тега и синхронизируетlists, HOSTS, IPSet, скрытую.service, BAT-
стратегии,service.bat, бинарники и новые upstream-файлы. - Все
lists/*-user.txt,config.json, пользовательские стратегии и состояние
игрового фильтра сохраняются. Манифест управляемых файлов удаляет только
действительно устаревшие upstream-файлы и не трогает неизвестные локальные. - Применение обновления сделано транзакционным: ошибка любого обязательного файла
откатывает уже записанные изменения; неполный релиз больше не отмечается как
установленный. - Build-fetch теперь переносит скрытую
.service, строго проверяет полный состав
bundle и пишет version/SHA-маркеры без BOM. - Обновление Telegram-прокси валидирует ограничения ZIP, устанавливает полный
staged package атомарно, добавляет новые и удаляет исчезнувшие upstream-модули.
Проверки
- Полный набор из 245 тестов, pyflakes, compileall, проверка уязвимостей и
визуальный offline-аудит интерфейса выполнены успешно.
Установка
- Требуется Windows 10/11 x64 и запуск с правами администратора для WinDivert.
- WinDivert и
winws.exeмогут вызывать ложные срабатывания антивируса. - Используемый upstream-проект: https://github.com/Flowseal/zapret-discord-youtube
Проверка целостности
SHA-256 ZapretGUI-Setup.exe:
879f83caa60c6ffea69c267de05ef17831e6a356d744d2f8357652d6a8164a61
Проверить скачанный файл (PowerShell):
Get-FileHash .\ZapretGUI-Setup.exe -Algorithm SHA256Zapret GUI 1.9.5
Релиз полного аудита безопасности, обновлений и интерфейса. Установка поверх
1.9.4 безопасна; пользовательские настройки и списки сохраняются.
Безопасность и надёжность
- Обновление Zapret теперь ограничивает размеры архива и распаковки, блокирует
ZIP-bomb, symlink и encrypted entries, проверяет полный набор ядра до записи,
а при ошибке восстанавливает изменённые файлы из резервной копии. - Обновление Telegram-прокси устанавливает только полный проверенный набор
модулей через staging и атомарную замену с rollback; исходники компилируются до
установки, а строгая проверка TLS принудительно сохраняется. - WebSocket-движок корректно собирает fragmented messages и отклоняет frame или
message больше 16 МиБ. - Самообновление приложения проверяет размер установщика по metadata,
Content-Length и фактически полученным байтам, не допуская переполнения диска
или запуска усечённого файла. cryptographyобновлена до 50.0.0, закрывающей CVE-2026-69247; в CI добавлена
бесплатная проверка прямых runtime-зависимостей через OSV.
Обновления и сборка
- Build-fetch Zapret всегда получает последний полный upstream bundle, сверяет
опубликованный SHA-256 и заменяет vendor-каталог только после полной проверки. - Release-сборка использует закреплённые версии зависимостей; GitHub Actions
проверяет Python 3.10 и 3.14, lint, тесты и OSV перед публикацией. - Исправлены предупреждения Inno Setup для архитектуры и удаления задания
автозапуска.
Интерфейс
- Исправлен белый текст на белых карточках «Автоподбор» и «Тест обхода» в светлой
теме; добавлен regression-тест и offline renderer всех вкладок.
Проверка целостности
SHA-256 ZapretGUI-Setup.exe:
9b199630b4aff8d4e5d554dc2ae91f578a1e87d6e698d1bac906934ee35499e0
Проверить скачанный файл (PowerShell):
Get-FileHash .\ZapretGUI-Setup.exe -Algorithm SHA256Zapret GUI 1.9.3
Релиз целиком про надёжность: исправлены шесть багов, из-за которых тихо ломались
автообновление, автозапуск и запуск движка. Функциональных изменений и новых
возможностей нет, обновление безопасно ставить поверх 1.9.2.
Исправлено
- Обновление приложения больше не молчит на путях с пробелами.
Скачанный установщик запускался черезstartбез кавычек, и если%TEMP%
содержал пробел (типично для имени пользователя из двух слов), обновление
просто не ставилось без внятной ошибки. Путь теперь квотируется, а команда
идёт черезcmd /c start ""(start— встроенная команда оболочки, отдельного
start.exeв Windows не существует). - Сравнение версий понимает предрелизы.
1.9.3-rc1больше не считается равным
1.9.3: теперьalpha < beta < rc < релиз, а билд-метаданные (+build.5) не
влияют на старшинство. Раньше пользователь с rc-сборкой не видел выход финальной
версии и оставался на тестовой навсегда. - Автозапуск не запускает программу два раза. При включённом автозапуске
одновременно могли жить и задание планировщика, и ключ в реестреRun: вторая
копия проигрывала гонку за WinDivert и падала — выглядело как случайный краш
после входа в систему. После успешного создания задания старый ключRun
удаляется. - Автозапуск не дублирует запись при откате. Если
schtasksотказал (нет прав),
включался резервный путь через реестр, но функция продолжала работать дальше и
могла перетереть свой же результат. Теперь откат завершает работу сразу. - Ошибки службы читаемы по-русски. Вывод
sc.exeиschtasks.exeдекодировался
как UTF-8, и в интерфейсе вместо «Отказано в доступе» показывалась кракозябра.
Добавлено чтение в OEM-кодировке (cp866), как уже было сделано для логов winws. - Предупреждение о конфликте со службой реально ждёт остановки. Пауза перед
повторным запуском была пустышкой (таймер без действия), из-за чего движок
иногда стартовал до того, как служба отпустила WinDivert. - Ошибка запуска больше не тянет за собой Telegram-прокси. Если движок не
запустился, программа показывала ошибку, но всё равно поднимала прокси и не
обновляла статус — интерфейс врал, что всё работает.
Внутренние изменения
- Добавлено 8 регрессионных тестов на всё вышеперечисленное: всего 221 тест,
pyflakes чистый. - Удалён мёртвый
tools/repo.py(самодельный git на dulwich) — в проекте
используется настоящий git. - Починены ссылки на несуществующий
tests/test_core_logic.pyв CI,check_lint.py
и GUI-тестах; вRELEASE_CHECKLIST.mdобновлены пути к окружению разработки.
Проверка целостности
SHA-256 ZapretGUI-Setup.exe:
845ef0032326f87cb2cffe2d1cb52fcc21d9085377e0d3192635edbacf403f2c
Проверить скачанный файл (PowerShell):
Get-FileHash .\ZapretGUI-Setup.exe -Algorithm SHA256v1.9.2
1.9.2
- Исправлен баг светлой темы: на главном экране в карточках Telegram Proxy и Zapret (заголовки, статус, сервер/порт/секрет, стратегия) и в панели автоподбора текст был белым на белом фоне и становился невидимым. Теперь цвет текста подстраивается под тему.
- Версия увеличена для проверки автоматического тихого обновления из приложения.
Cat Zapret v1.9.1 — Рефакторинг интерфейса и исправления
✨ Что нового в версии 1.9.1
⚠️ Примечание: работа над унификацией тем продолжается. Светлые темы (Снег, Песок) и остальные небольшие визуальные правки будут доделаны в следующей версии.
🛠️ Рефакторинг и архитектура
- Разбивка
main_window.pyна отдельные миксины:auto_select_flow.py,editor_flow.py,update_flow.py— файл сократился с ~2225 до ~1264 строк. - Единый макет главного экрана — убран дублирующий тёмный вариант
_arrange_home_classic; теперь один_arrange_home()работает для всех тем. - Ленивая загрузка кадров кота-маскота и сжатие ассетов (
home_cat.png, фоны тем) — запуск приложения стал быстрее, потребление памяти снизилось.
🐛 Исправления
- Окошки (карточки) на главном экране теперь видны во всех темах. Раньше подложки под блоками «Telegram Proxy», «Zapret» и кнопками «Автоподбор» / «Тест обхода» рисовались только в тёмной теме — в остальных текст «висел» прямо на фоне без рамки и фона. Теперь карточка рисуется везде, цвет берётся из палитры темы.
- Обновление потоков обновления — исправлены ситуации, в которых Worker-потоки могли завершиться без уведомления UI.
- Логирование в
tg_proxy.py— 15 ранее молчаливыхexcept-блоков теперь пишут диагностику в лог (%LOCALAPPDATA%\ZapretGUI\logs\zapret-gui.log), что упрощает отладку проблем с Telegram-прокси.
🎨 Интерфейс
- Темы теперь используют единый макет главного экрана (раньше некоторые элементы отображались только в тёмной теме).
- Карточки на главном экране адаптированы под каждую тему: тёмная — без изменений, остальные — с правильным цветом фона и рамки.
- Тень под карточками обновляется при переключении темы.
- Фоновые изображения тем оптимизированы (меньше размер, быстрее загрузка).
✅ Тесты
- Все 222 теста проходят без ошибок.
- Добавлены 13 новых тестов для модуля автоподбора стратегии (
tests/test_auto_select_flow.py). - Линтер (
pyflakes) чистый по всем 65 файлам.
📋 Планы на следующую версию
- Полная унификация тем: маскот, панель автоподбора и настройки должны выглядеть одинаково во всех темах
- Доработка светлых тем (Снег, Песок) — адаптация цвета текста и элементов под светлый фон
- Добавление i18n для оставшихся хардкодных строк
- Иконки SVG, единый стиль попапов
🔄 Автообновление (добавлено после релиза)
- Установщик в этом релизе обновлён: добавлено тихое автообновление — установка новой версии из приложения теперь проходит полностью в фоне (без окон), приложение само перезапускается и показывает окно со списком изменений.
- Номер версии не менялся, обновлён только сам установщик.
Cat Zapret v1.9.0
Что изменилось
Версия про надёжность и порядок внутри. Снаружи программа выглядит и
работает так же, как 1.8.4 — новых кнопок нет.
Журнал работы. Программа теперь ведёт файл журнала:
%LOCALAPPDATA%\ZapretGUI\logs\zapret-gui.log (до ~512 КБ, хранятся ещё
2 предыдущих файла). Если что-то не сработало, причину видно в журнале, а не
приходится угадывать. При удалении программы журнал удаляется вместе с
настройками.
Сбои больше не проходят молча. В журнал попадают: ошибки запуска и работы
движка обхода, проблемы с сохранением и чтением настроек, неудачная проверка
обновлений, сбои обновления стратегий (в том числе если не записалась метка
версии или не пересобрался список стратегий), проблемы со списками сайтов и с
настройками Telegram-прокси.
Исправлено:
- программа больше не предлагает одно и то же обновление по кругу, если не
смогла определить свою версию; - если отменить скачивание обновления, недокачанный файл удаляется, а не
остаётся мусором на диске.
Проверки качества: тестов стало 202 вместо 121. Добавлены тесты на
обновление программы, автозапуск, службу Windows, запуск движка и журнал.
Автопроверка на GitHub переведена на Python 3.14.
Порядок в коде: самые большие файлы разделены на части по смыслу,
удалена неиспользуемая зависимость psutil, обновлён чек-лист выпуска.
Установка
Скачайте ZapretGUI-Setup.exe и запустите. Нужны Windows 10/11 (64-бит) и
права администратора — без них не работает драйвер перехвата трафика
WinDivert.
Уже установленная версия 1.8.4 обновится сама кнопкой «Обновить приложение».
Контрольная сумма установщика
SHA-256 ZapretGUI-Setup.exe:
bf3772f51bb8e8127593eae625e7d8070af6229833df6f7ce7ab21e6d318dc0a
Антивирусы
Возможны ложные срабатывания на WinDivert и winws.exe: это обычная
реакция на драйвер перехвата сетевого трафика, а не вирус.
Основано на
Cat Zapret v1.8.4
Что нового
- Иконки разделов в верхней панели: Главная, Настройки, Стратегия, Игры и сервисы, Telegram.
- Линии иконок ложатся строго на пиксельную сетку — без замыленности.
- Иконки подстраиваются под тему: тёмная, светлая, фиолетовая.
- Верхняя панель стала компактнее и не выезжает за рамки экрана.
SHA-256 установщика: 1e78df374f602933f7a503ee0ece4580d1ccc456765c4b8cbf53cd9db057a1cd
Cat Zapret v1.8.3
Исправлено обновление из приложения: установщик больше не завершался вместе с закрываемым ZapretGUI.exe, из-за чего установка обрывалась и оставалась старая версия.
Cat Zapret v1.8.2
Что нового
- Светлая тема сделана с нуля: больше нет белого текста на белом фоне.
- Установщик больше не закрывает программу до того, как вы подтвердили установку.
- При удалении программы настройки удаляются только с вашего согласия (и из правильной папки).
- Кнопка «Обновить приложение» честно сообщает, если проверка не удалась, а не молчит.
- Установщик без контрольной суммы SHA-256 больше не запускается.
- Исправлен артефакт свечения у полосы автопоиска на экранах Full HD.