Zapret | Дорожная карта
2.32K subscribers
28 photos
24 files
2.94K links
Дорожная карта обновлений.

Узнайте что я буду редактировать в Запрет для обхода блокировок Дискорда и Ютуба в первую очередь

И ужаснуться моим техническим непонятным запискам без контекста.
Download Telegram
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Hosts: страница прокручивается целиком, как все страницы — сводка уезжает вверх вместе с плитками, отдельной прокрутки у плиток больше нет

👤 Автор: loop-uh
📅 Дата: 29.09.2026 23:30:57 MSK
🔗 SHA: d081e88

📊 Статистика:
➕ Добавлено: 22 строк
➖ Удалено: 22 строк
📝 Всего изменений: 44

📁 Изменено файлов: 2

✏️ src/hosts/ui/page.py
✏️ tests/test_hosts_page_draft.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 DNS переписан на чистом WinAPI: только настоящие адаптеры, виртуалки и VPN не трогаются; добавлены AstraCat и GeoHide

👤 Автор: loop-uh
📅 Дата: 29.09.2026 23:43:52 MSK
🔗 SHA: 28292ab

📊 Статистика:
➕ Добавлено: 1506 строк
➖ Удалено: 2844 строк
📝 Всего изменений: 4350

📁 Изменено файлов: 41

🆕 src/dns/adapters.py
🆕 src/dns/winapi.py
🆕 tests/test_dns_adapters.py
🆕 tests/test_dns_runtime.py
🆕 tests/test_dns_winapi.py
🗑️ src/dns/dns_core.py
🗑️ src/dns/dns_force.py
🗑️ src/dns/dns_worker.py
🗑️ src/main/post_startup_dns.py
🗑️ src/main/post_startup_dns_workers.py
🗑️ tests/test_dns_adapter_filtering.py
🗑️ tests/test_dns_core_winapi.py
🗑️ tests/test_dns_page_data_cache.py
🗑️ tests/test_dns_provider_catalog.py
✏️ src/app/feature_facades/dns.py
✏️ src/app/ui_texts.py
✏️ src/dns/__init__.py
✏️ src/dns/address_migration.py
✏️ src/dns/commands.py
✏️ src/dns/dns_providers.py
... и ещё 21 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Hosts: DNS-профиль выбирается одним щелчком по иконке провайдера прямо на плитке (подсказка с полным именем, легенда под заголовком группы); плитки рисуются один раз и берутся из кэша, щелчок больше не прокручивает страницу

👤 Автор: loop-uh
📅 Дата: 30.09.2026 00:19:47 MSK
🔗 SHA: fde7c22

📊 Статистика:
➕ Добавлено: 479 строк
➖ Удалено: 185 строк
📝 Всего изменений: 664

📁 Изменено файлов: 4

✏️ src/hosts/ui/page.py
✏️ src/hosts/ui/services_tiles.py
✏️ tests/test_hosts_page_draft.py
🆕 src/hosts/ui/profile_icons.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Hosts: смена профиля оживает — иконка делает оборот и светится цветом провайдера, при выключении крутится назад, во время записи вращается и пульсирует, у тумблера кружок едет со вспышкой; анимируется только изменившаяся плитка

👤 Автор: loop-uh
📅 Дата: 30.09.2026 00:25:39 MSK
🔗 SHA: 5388654

📊 Статистика:
➕ Добавлено: 198 строк
➖ Удалено: 9 строк
📝 Всего изменений: 207

📁 Изменено файлов: 2

✏️ src/hosts/ui/services_tiles.py
✏️ tests/test_hosts_page_draft.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Настройка DNS: смена сервера с вращением и свечением

👤 Автор: loop-uh
📅 Дата: 30.09.2026 00:26:02 MSK
🔗 SHA: 9b67f89

📊 Статистика:
➕ Добавлено: 419 строк
➖ Удалено: 39 строк
📝 Всего изменений: 458

📁 Изменено файлов: 4

✏️ src/dns/ui/now_panel.py
✏️ src/dns/ui/provider_grid.py
✏️ tests/test_dns_page.py
✏️ tests/test_dns_provider_grid.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Появление есть у каждой страницы: у hosts плитки снова выплывают при каждом открытии — своим входом через общий модуль (готовые картинки, без эффекта на всю сетку); выключить появление больше нельзя — проверка архитектуры и тест на все страницы реестра

👤 Автор: loop-uh
📅 Дата: 30.09.2026 00:33:07 MSK
🔗 SHA: d158399

📊 Статистика:
➕ Добавлено: 260 строк
➖ Удалено: 13 строк
📝 Всего изменений: 273

📁 Изменено файлов: 6

🆕 tests/test_page_float_in_contract.py
✏️ src/app/architecture_checks.py
✏️ src/hosts/ui/page.py
✏️ src/hosts/ui/services_tiles.py
✏️ src/ui/widgets/stagger_float_in.py
✏️ tests/test_hosts_page_draft.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Hosts: при переключении иконка сервиса покачивается и светится — цветом сервиса при включении, серым при выключении

👤 Автор: loop-uh
📅 Дата: 30.09.2026 00:34:51 MSK
🔗 SHA: 5105051

📊 Статистика:
➕ Добавлено: 51 строк
➖ Удалено: 1 строк
📝 Всего изменений: 52

📁 Изменено файлов: 2

✏️ src/hosts/ui/services_tiles.py
✏️ tests/test_hosts_page_draft.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пресеты: файл пишется безопасно (временный файл + подмена с повторами на Windows, «только чтение» не обходится), cp1251 читается без порчи и «Старт» на нём не падает, правки редактора не теряются при закрытии окна, комментарии профиля переживают правку текстом, пропавший с диска активный пресет не подменяет работающий, --debug=@logs\ тоже переносится, папки пресетов пишутся под блокировкой

👤 Автор: loop-uh
📅 Дата: 30.09.2026 01:48:06 MSK
🔗 SHA: ce1158f

📊 Статистика:
➕ Добавлено: 503 строк
➖ Удалено: 36 строк
📝 Всего изменений: 539

📁 Изменено файлов: 19

🆕 tests/test_atomic_text.py
✏️ src/core/runtime/preset_runtime_coordinator.py
✏️ src/presets/commands.py
✏️ src/presets/file_store.py
✏️ src/presets/folders.py
✏️ src/presets/mode_coordinator.py
✏️ src/presets/preset_contract.py
✏️ src/presets/preset_file_ops.py
✏️ src/presets/remote_sync.py
✏️ src/presets/ui/common/preset_subpage_base.py
✏️ src/profile/serializer.py
✏️ src/ui/page_deps/presets.py
✏️ src/utils/atomic_text.py
✏️ src/winws_runtime/flow/start_preparation.py
✏️ src/winws_runtime/runtime/preset_launch_service.py
✏️ tests/test_preset_import_validation.py
✏️ tests/test_preset_runtime_coordinator.py
✏️ tests/test_preset_subpage_ui_guards.py
✏️ tests/test_profile_raw_editor.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Обновление: одно большое окно для любого пути — изменения всех пропущенных версий, «Что нового», кнопки «Обновить / Позже / Пропустить версию / Открыть в браузере / Telegram», загрузка прямо в окне: логотип бежит и покачивается по переливающейся полосе, шутки как в BlockCheck; «Скрыть» не останавливает загрузку; «Что нового» один раз после обновления и кнопкой в «О программе»; маленький вопрос при запуске и карточка с обрезанным текстом убраны

👤 Автор: loop-uh
📅 Дата: 30.09.2026 01:51:43 MSK
🔗 SHA: 5dab135

📊 Статистика:
➕ Добавлено: 3258 строк
➖ Удалено: 1059 строк
📝 Всего изменений: 4317

📁 Изменено файлов: 44

🆕 src/ui/widgets/fun/runway.py
🆕 src/updater/release/history.py
🆕 src/updater/ui/fun_texts.py
🆕 src/updater/ui/update_dialog.py
🆕 src/updater/ui/update_flow.py
🆕 src/updater/whats_new.py
🆕 tests/test_forgejo_release_history.py
🆕 tests/test_post_startup_host_whats_new.py
🆕 tests/test_update_dialog.py
🆕 tests/test_whats_new.py
🗑️ src/updater/ui/changelog_card.py
🗑️ tests/test_post_startup_host_accessibility.py
🗑️ tests/test_updater_changelog_accessibility.py
✏️ src/app/feature_facades/updater.py
✏️ src/app/ui_texts.py
✏️ src/core/runtime/update_check_coordinator.py
✏️ src/main/post_startup_host.py
✏️ src/main/post_startup_update.py
✏️ src/settings/normalize.py
✏️ src/settings/schema.py
... и ещё 24 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Окно обновления не всплывает само по себе, пока программа в трее или свёрнута: ждёт, пока окно откроют (до 20 минут, потом обновление остаётся на карточке «Подробнее»); «Что нового» тоже ждёт до 20 минут; повтор открытия идёт таймером страницы и не падает, если страницу уже закрыли

👤 Автор: loop-uh
📅 Дата: 30.09.2026 01:53:35 MSK
🔗 SHA: 8feb850

📊 Статистика:
➕ Добавлено: 50 строк
➖ Удалено: 9 строк
📝 Всего изменений: 59

📁 Изменено файлов: 4

✏️ src/main/post_startup_update.py
✏️ src/updater/ui/page.py
✏️ tests/test_update_check_coordinator.py
✏️ tests/test_updater_servers_page_assembly.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Профили: отложенные стратегия, переключатель и настройки пишутся в профиль, открытый при щелчке (а не в тот, что открыт к моменту записи), записи разных профилей не замещают друг друга, быстрые щелчки по стратегиям не теряют последний выбор, ждущие записи сохраняются при закрытии окна; смена пресета или стратегии во время запуска DPI применяется после старта; перемещение профилей больше не дописывает «--new=TCP 443» и не сдвигает их ключи; тот же профиль, открытый заново после правки пресета, показывает файл; переименование своего профиля сохраняет его папку и оценки

👤 Автор: loop-uh
📅 Дата: 30.09.2026 02:06:39 MSK
🔗 SHA: 3cdda6e

📊 Статистика:
➕ Добавлено: 871 строк
➖ Удалено: 66 строк
📝 Всего изменений: 937

📁 Изменено файлов: 17

✏️ src/profile/serializer.py
✏️ src/profile/service.py
✏️ src/profile/ui/profile_setup_page.py
✏️ src/profile/ui/profile_setup_save_controllers.py
✏️ src/profile/ui/profile_strategy_controller.py
✏️ src/ui/page_composition.py
✏️ src/ui/page_deps/presets.py
✏️ src/winws_runtime/flow/apply_policy.py
✏️ src/winws_runtime/flow/preset_switch_policy.py
✏️ src/winws_runtime/runtime/restart_flow.py
✏️ tests/test_preset_runtime_coordinator.py
✏️ tests/test_profile_raw_editor.py
✏️ tests/test_profile_setup_ui_guards.py
✏️ tests/test_profile_setup_write_serialization.py
✏️ tests/test_user_profiles.py
✏️ tests/test_winws1_profile_boundaries.py
🆕 tests/test_profile_setup_write_identity.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пресеты и профили: убран неиспользуемый код (~560 строк: модули public.py, диалог имени пресета zapret2, мёртвые функции в preset_text_ops, profile.folders, привязках к источнику, фасаде запуска и страницах), переключение пресета больше не ждёт лишние 0,5 с — быстрые щелчки склеивает один debounce в switch pipeline

👤 Автор: loop-uh
📅 Дата: 30.09.2026 02:11:03 MSK
🔗 SHA: 53bea21

📊 Статистика:
➕ Добавлено: 20 строк
➖ Удалено: 816 строк
📝 Всего изменений: 836

📁 Изменено файлов: 21

🗑️ src/presets/public.py
🗑️ src/presets/ui/zapret2/preset_dialogs.py
🗑️ src/profile/public.py
🗑️ tests/test_zapret2_preset_dialog_accessibility.py
✏️ src/app/feature_facades/runtime.py
✏️ src/app/feature_facades/runtime_parts.py
✏️ src/core/runtime/preset_runtime_coordinator.py
✏️ src/presets/preset_text_ops.py
✏️ src/presets/raw_preset_editor_workflow.py
✏️ src/presets/remote_bindings.py
✏️ src/presets/selection_service.py
✏️ src/presets/ui/common/preset_subpage_base.py
✏️ src/presets/ui/common/user_presets_page.py
✏️ src/presets/ui/control/control_runtime.py
✏️ src/profile/folders.py
✏️ src/settings/store.py
✏️ tests/test_preset_runtime_coordinator.py
✏️ tests/test_profile_folder_actions.py
✏️ tests/test_profile_list_payload.py
✏️ tests/test_remote_preset_bindings.py
... и ещё 1 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пресеты и профили — доработки после самопроверки: один битый байт больше не переводит UTF-8 файл в cp1251, запуск winws, описание в списке и привязанный файл читаются по общему правилу кодировки; комментарий над первым профилем больше не даёт ложную «ошибку сохранения»; папки пресетов и профилей пишутся под одним замком; при закрытии синхронная запись пропускается, если зависшую запись пришлось прервать; результат для ранее открытого профиля не переключает страницу обратно и обновляет строку в списке, ожидающая стратегия другого профиля не отбрасывает результат, переключатель чужого профиля идёт в очередь, записи при закрытии идут в порядке щелчков; при чужом владельце быстрые щелчки по пресетам снова склеиваются; «DPI не запущен» больше не пишется WARNING на каждый щелчок; убраны осиротевшие строки диалога имени пресета

👤 Автор: loop-uh
📅 Дата: 30.09.2026 02:26:03 MSK
🔗 SHA: dd110d9

📊 Статистика:
➕ Добавлено: 410 строк
➖ Удалено: 114 строк
📝 Всего изменений: 524

📁 Изменено файлов: 24

🆕 src/folders/state_lock.py
✏️ src/app/feature_facades/presets.py
✏️ src/app/ui_texts.py
✏️ src/lists/file_manager.py
✏️ src/presets/folders.py
✏️ src/presets/list_metadata.py
✏️ src/presets/ui/common/preset_subpage_base.py
✏️ src/profile/folders.py
✏️ src/profile/service.py
✏️ src/profile/ui/profile_setup_page.py
✏️ src/profile/ui/profile_setup_save_controllers.py
✏️ src/profile/ui/profile_strategy_controller.py
✏️ src/ui/one_shot_worker_runtime.py
✏️ src/utils/atomic_text.py
✏️ src/winws_runtime/flow/preset_switch_policy.py
✏️ src/winws_runtime/runners/zapret1_runner.py
✏️ src/winws_runtime/runners/zapret2_runner.py
✏️ src/winws_runtime/runtime/restart_flow.py
✏️ tests/test_atomic_text.py
✏️ tests/test_preset_runtime_coordinator.py
... и ещё 4 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Обновление без пустого экрана: пока старая версия закрывается, ставится и открывается новая, на месте окна обновления стоит окно-продолжение (отдельный PowerShell, переживает замену Zapret.exe) — этапы с галочками, логотип бежит по переливающейся полосе, шутки; гаснет, когда новая версия открылась, при неудаче или отмене уходит сразу; своя полоска установщика скрыта (/VERYSILENT, ошибки по-прежнему видны); в «Что нового» и окне обновления заголовок стоит вровень с логотипом

👤 Автор: loop-uh
📅 Дата: 30.09.2026 13:29:25 MSK
🔗 SHA: b400f4c

📊 Статистика:
➕ Добавлено: 1512 строк
➖ Удалено: 18 строк
📝 Всего изменений: 1530

📁 Изменено файлов: 24

🆕 src/updater/install/splash.py
🆕 src/updater/install/splash_script.py
🆕 src/updater/ui/restart_splash_spec.py
🆕 tests/test_restart_splash.py
🆕 tests/test_restart_splash_windows.py
✏️ src/app/feature_facades/updater.py
✏️ src/app/ui_texts.py
✏️ src/main/post_startup_update.py
✏️ src/ui/widgets/fun/mascot.py
✏️ src/updater/commands.py
✏️ src/updater/download/flow.py
✏️ src/updater/download/service.py
✏️ src/updater/install/launcher.py
✏️ src/updater/install/paths.py
✏️ src/updater/public.py
✏️ src/updater/ui/fun_texts.py
✏️ src/updater/ui/page.py
✏️ src/updater/ui/update_dialog.py
✏️ tests/test_build_resource_layout.py
✏️ tests/test_post_startup_update_contract.py
... и ещё 4 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Настройка DNS: вместо короткой дуги — комета, которая всегда замыкает круг

👤 Автор: loop-uh
📅 Дата: 30.09.2026 13:39:50 MSK
🔗 SHA: feb1a36

📊 Статистика:
➕ Добавлено: 226 строк
➖ Удалено: 91 строк
📝 Всего изменений: 317

📁 Изменено файлов: 4

✏️ src/dns/ui/now_panel.py
✏️ src/dns/ui/provider_grid.py
✏️ tests/test_dns_page.py
✏️ tests/test_dns_provider_grid.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Тест каталога hosts: версия 2026.09.30.1, ни у одного сервиса нет запасного глобуса

👤 Автор: loop-uh
📅 Дата: 30.09.2026 13:40:48 MSK
🔗 SHA: b8a1ca5

📊 Статистика:
➕ Добавлено: 6 строк
➖ Удалено: 1 строк
📝 Всего изменений: 7

📁 Изменено файлов: 1

✏️ tests/test_hosts_catalog_sqlite.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 О программе: высота вкладок — по открытой вкладке, под «Zapret KVN» больше нет пустоты высотой со «Справку»

👤 Автор: loop-uh
📅 Дата: 30.09.2026 13:46:38 MSK
🔗 SHA: 704e68e

📊 Статистика:
➕ Добавлено: 53 строк
➖ Удалено: 4 строк
📝 Всего изменений: 57

📁 Изменено файлов: 3

✏️ src/ui/pages/about_page_kvn_build.py
✏️ src/ui/pages/about_page_tabs_build.py
🆕 tests/test_about_tabs_height.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пресеты: автосинк не затирает правку, сделанную во время загрузки, и не возвращает отвязанную привязку или выключенное автообновление; пропавший выбранный пресет подменяется пресетом по умолчанию только для запуска — выбор не затирается и вернётся вместе с файлом; чтение выбора больше ничего не пишет в настройки; один заблокированный файл или папка *.txt не роняют список пресетов; упавшая проверка пресета не останавливает работающий DPI; действия над профилями не уходят в другой пресет после переключения; воркеры списка профилей и фильтра стратегий больше не роняют программу при пересоздании виджета

👤 Автор: loop-uh
📅 Дата: 30.09.2026 13:49:29 MSK
🔗 SHA: ae70251

📊 Статистика:
➕ Добавлено: 365 строк
➖ Удалено: 28 строк
📝 Всего изменений: 393

📁 Изменено файлов: 12

🆕 tests/test_preset_data_safety_guards.py
✏️ src/presets/file_store.py
✏️ src/presets/remote_sync.py
✏️ src/presets/remote_sync_workers.py
✏️ src/presets/selection_service.py
✏️ src/profile/ui/preset_setup_page.py
✏️ src/profile/ui/preset_write_queue.py
✏️ src/profile/ui/profile_strategy_list_widget.py
✏️ src/profile/ui/profiles_list.py
✏️ src/winws_runtime/runtime/preset_launch_service.py
✏️ tests/test_preset_selection_defaults.py
✏️ tests/test_remote_preset_sync.py

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пуск и стоп Zapret отовсюду (#78): точка в «Статусе работы» стала выключателем (значок питания, подсветка при наведении, Enter/Пробел), секция из двух кнопок убрана — «Закрыть программу» тихой кнопкой в той же карточке; в заголовке окна рядом с PREMIUM метка «● Работает / Остановлен», видна в любом разделе и тоже переключает; трей переделан: шапка с режимом, состоянием и пресетом, первым пунктом «Запустить/Остановить Zapret», «Перезапустить», подменю пресетов с отметкой активного и быстрым переключением, меню собирается заново при каждом открытии; на иконке трея цветная точка (зелёная — работает, жёлтая — запуск/остановка), в подсказке режим и пресет, уведомления о запуске и остановке, когда окно скрыто; вся логика пуска в одном пульте ui/launch_control.py

👤 Автор: loop-uh
📅 Дата: 30.09.2026 14:07:07 MSK
🔗 SHA: de730e5

📊 Статистика:
➕ Добавлено: 2988 строк
➖ Удалено: 1238 строк
📝 Всего изменений: 4226

📁 Изменено файлов: 36

🆕 src/ui/launch_control.py
🆕 src/ui/launch_title_badge.py
🆕 src/ui/widgets/tray_status_header.py
🆕 tests/test_launch_control.py
🆕 tests/test_launch_title_badge.py
✏️ src/app/feature_assembly.py
✏️ src/app/feature_facades/tray.py
✏️ src/app/ui_texts.py
✏️ src/main/tray_window_port.py
✏️ src/main/window_page_deps_setup.py
✏️ src/presets/ui/control/control_page_runtime_shared.py
✏️ src/presets/ui/control/control_page_shared.py
✏️ src/presets/ui/control/control_runtime.py
✏️ src/presets/ui/control/shared_builders.py
✏️ src/presets/ui/control/zapret1/build.py
✏️ src/presets/ui/control/zapret1/page.py
✏️ src/presets/ui/control/zapret1/runtime_helpers.py
✏️ src/presets/ui/control/zapret2/build.py
✏️ src/presets/ui/control/zapret2/page.py
✏️ src/presets/ui/control/zapret2/page_runtime.py
... и ещё 16 файлов

🔗 Открыть в Forgejo
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в zapretdiscordyoutube/zapret

📝 Пресеты и профили — точность: проверка запуска не считает флаги в комментариях, строки делятся только по переводу строки (как у парсера); при смене стратегии сохраняется действующий (последний) --payload; новый пользовательский profile не делит файлы списков с переименованным, битая запись не роняет шаблоны; кэш профиля учитывает имя и файлы списков; «v1.5» ищется как v1.5.txt, имя возвращается как на диске; занятое имя при создании/копии/переименовании/импорте становится «X (2)» и в файле, и в списке; импорт ZIP переписывает ссылки в строке с несколькими опциями и отвергает имена CON, a.txt:поток и т.п.; смена стратегии не сбрасывает папку и порядок профиля; результат и ошибка импорта показываются всегда, повторный импорт по ссылке не теряет источник, папка сворачивается сразу; шаги перемещения папок не схлопываются; устаревший план фильтра стратегий не затирает строки; сбои обновления меты пишутся в лог. Доработки волны 1: запасной пресет нельзя удалить, щелчок по нему закрепляет выбор, действия над профилями не принимаются, пока список показывает прежний пресет, результат сканирования с заблокированным файлом не кэшируется

👤 Автор: loop-uh
📅 Дата: 30.09.2026 14:08:38 MSK
🔗 SHA: 2982ebd

📊 Статистика:
➕ Добавлено: 862 строк
➖ Удалено: 150 строк
📝 Всего изменений: 1012

📁 Изменено файлов: 25

🆕 tests/test_presets_profiles_accuracy.py
✏️ src/app/feature_facades/presets.py
✏️ src/lists/core/layered_files.py
✏️ src/presets/file_service.py
✏️ src/presets/file_store.py
✏️ src/presets/portable_archive.py
✏️ src/presets/preset_file_ops.py
✏️ src/presets/preset_text_ops.py
✏️ src/presets/selection_service.py
✏️ src/presets/ui/common/user_presets_page.py
✏️ src/profile/derived_cache.py
✏️ src/profile/launch_validation.py
✏️ src/profile/serializer.py
✏️ src/profile/service.py
✏️ src/profile/ui/preset_write_queue.py
✏️ src/profile/ui/profile_folder_controller.py
✏️ src/profile/ui/profile_list_view.py
✏️ src/profile/ui/profile_strategy_list_widget.py
✏️ src/profile/user_profiles/service.py
✏️ src/ui/presets_menu/view.py
... и ещё 5 файлов

🔗 Открыть в Forgejo