Commit Graph

  • 974c236489 docs: актуализировать README.md под pyproject.toml main deadzilla 2026-07-22 22:42:44 +05:00
  • 34f280e814 chore: закрыть задачу test_fetch_weather_http_error_no_fallback deadzilla 2026-07-22 22:39:11 +05:00
  • 0c404c8837 chore: удалить артефакт nul и обновить ISSUES.md deadzilla 2026-07-22 22:37:28 +05:00
  • 78106e7b4c fix: добавить обработку ошибок в commands/morning.py deadzilla 2026-07-22 22:36:55 +05:00
  • 0f944eafe7 refactor: убрать дублирование в TextHelpCommand.send_bot_help() deadzilla 2026-07-22 22:32:50 +05:00
  • 4f2e3ec05b fix: заменить list comprehension на generator в stats.py deadzilla 2026-07-22 22:29:38 +05:00
  • 8b59ddb0c9 fix: добавить add_done_callback в Scheduler._task deadzilla 2026-07-22 22:28:13 +05:00
  • 81a99aaeab feat: добавить pyproject.toml deadzilla 2026-07-22 22:25:43 +05:00
  • 089a77ce17 Реорганизация ISSUES.md: открытые задачи сверху, завершенные снизу, убраны дубли deadzilla 2026-07-22 22:14:25 +05:00
  • 311cfa7513 fix: добавить WEATHER_CITY в docker-compose, убрать conftest.py из Docker deadzilla 2026-07-22 22:10:37 +05:00
  • 5e01cc6d8f refactor: вынести дублирующую логику RSS в _format_feed_section() deadzilla 2026-07-22 22:07:17 +05:00
  • ecff77ef66 feat: вынести город в WEATHER_CITY env-переменную deadzilla 2026-07-22 22:04:54 +05:00
  • 1a6b7043ad fix: применить ruff format к 7 файлам deadzilla 2026-07-22 21:58:55 +05:00
  • 0f3ec2f9bc docs: add WEATHER_CACHE_TTL to config table deadzilla 2026-07-21 09:46:20 +05:00
  • 4b20645430 fix: align docker-compose env vars with Yandex Weather API deadzilla 2026-07-21 09:44:03 +05:00
  • f7df0f4900 feat(weather): кэширование погоды с TTL 1 час deadzilla 2026-07-21 00:08:09 +05:00
  • b8b1801f23 fix(weather): исправлены баги в погодном функционале deadzilla 2026-07-20 23:56:07 +05:00
  • 517bb4b9fa docs: update README to reflect current project state deadzilla 2026-07-20 23:38:57 +05:00
  • 48e64c2bc8 Replace wttr.in/Open-Meteo with Yandex Weather API deadzilla 2026-07-20 23:31:11 +05:00
  • ee04f67506 заменён AGENTS.md на глобальный шаблон Global Instructions deadzilla 2026-07-20 21:58:17 +05:00
  • cc618af445 добавлены открытые задачи в ISSUES.md по результатам код-ревью deadzilla 2026-07-20 21:55:38 +05:00
  • 0d98d31e61 ISSUES.md: задача Dockerfile+tests отмечена как отклонена (Docker — production) deadzilla 2026-07-14 22:54:47 +05:00
  • 60e7faca5f Откат: тесты и pytest удалены из Dockerfile (Docker — production-окружение) deadzilla 2026-07-14 22:53:57 +05:00
  • f45beef888 ISSUES.md: отмечены все 5 задач низкого приоритета как выполненные deadzilla 2026-07-14 22:51:10 +05:00
  • cd014b171f rate_limiter: добавлен комментарий, поясняющий дизайн глобальных синглтонов и factory-функций deadzilla 2026-07-14 22:50:45 +05:00
  • d85f28f042 Удалены избыточные проверки ctx в on_command_error (ctx всегда передан discord.py) deadzilla 2026-07-14 22:48:30 +05:00
  • bb9e50fb05 Убраны приватные атрибуты с объекта discord.py Bot: START_TIME вынесен на уровень модуля, _scheduler удалён (не использовался) deadzilla 2026-07-14 22:46:57 +05:00
  • 5a65be97d9 Dockerfile: добавлено копирование tests/ и установка pytest для отладки в контейнере deadzilla 2026-07-14 22:43:19 +05:00
  • 29313530f3 Удалены избыточные @pytest.mark.asyncio (asyncio_mode = auto в pytest.ini) deadzilla 2026-07-14 22:41:10 +05:00
  • 003bd0552f Отмечены все 4 задачи среднего уровня как выполненные в ISSUES.md deadzilla 2026-07-14 22:27:59 +05:00
  • 3888c3cd01 fetch_cat() передаёт x-api-key при наличии CAT_API_KEY в окружении deadzilla 2026-07-14 22:27:30 +05:00
  • 0d5d8dbe7b Удалён лишний __init__ в Pg; API_URL_WEATHER используется напрямую deadzilla 2026-07-14 22:23:38 +05:00
  • bb9f291623 Scheduler.__init__ больше не создаёт task синхронно; start() стал async-методом deadzilla 2026-07-14 22:20:45 +05:00
  • 66b16e95f4 Вынесен импорт fromstring из fetch_rss на уровень модуля deadzilla 2026-07-14 22:15:14 +05:00
  • d4b457f94e docs: помечены закрытые критические задачи в ISSUES.md deadzilla 2026-07-14 22:04:38 +05:00
  • 3bea7abaea fix: translate_weather() проверяет точное совпадение перед substring deadzilla 2026-07-14 22:03:18 +05:00
  • 0c6e10a482 fix: setup_logging() вызывается до первого logger.info() deadzilla 2026-07-14 22:03:13 +05:00
  • 9b04bc0c93 fix: setup_logging() больше не создаёт дублирующиеся handlers deadzilla 2026-07-14 22:03:08 +05:00
  • 250452ad60 Добавлены открытые задачи после кодревью (12 issue) deadzilla 2026-07-12 23:39:56 +05:00
  • 90547df975 docs: обновлён ISSUES.md — все задачи (средний + низкий) перенесены в исправленные deadzilla 2026-07-12 00:18:43 +05:00
  • 1ab3205333 fix: format_articles(None) возвращает graceful fallback вместо TypeError deadzilla 2026-07-12 00:11:54 +05:00
  • f825be866b chore: удалена закомментированная устаревшая строка теста pressure_to_mmhg(0) deadzilla 2026-07-12 00:09:21 +05:00
  • fb42a90bec fix: requirements.txt использует ~= (compatible release) вместо >= для предсказуемости версий deadzilla 2026-07-12 00:08:49 +05:00
  • 3982d26c95 fix: Dockerfile копирует conftest.py для запуска тестов в контейнере deadzilla 2026-07-12 00:08:29 +05:00
  • 5eb4184d63 refactor: RateLimiter принимает _time_func для детерминированных тестов без зависимости от реального времени deadzilla 2026-07-12 00:08:13 +05:00
  • 3a2c388adf refactor: вынесен monkey-patch asyncio.iscoroutinefunction в utils/compat.py deadzilla 2026-07-12 00:05:46 +05:00
  • 88ed1a6aa1 docs: обновлён ISSUES.md — 5 задач среднего приоритета перенесены в исправленные deadzilla 2026-07-12 00:04:10 +05:00
  • 6b0a6cd8a6 refactor: pressure_to_mmhg заменяет Any на float | int | str | None deadzilla 2026-07-12 00:03:39 +05:00
  • d94b9c16ab fix: translate_weather обрезает пробелы перед проверкой на пустоту deadzilla 2026-07-12 00:02:13 +05:00
  • efee713301 fix: TextHelpCommand показывает standalone-команды (без cog) если они не hidden deadzilla 2026-07-11 23:59:41 +05:00
  • 49cb1a430b perf: wmo_to_russian использует модульную константу _WMO_MAPPING вместо создания dict при каждом вызове deadzilla 2026-07-11 23:56:54 +05:00
  • b22b02d65e fix: _parse_date валидирует формат даты через regex вместо возврата мусора deadzilla 2026-07-11 23:55:18 +05:00
  • e957446063 docs: обновлён ISSUES.md — 3 задачи высокого приоритета перенесены в исправленные deadzilla 2026-07-11 23:50:40 +05:00
  • 048b9a3a91 fix: format_weather_data_for_console заменяет None на эм-дэш вместо вывода 'None' в текст deadzilla 2026-07-11 23:50:05 +05:00
  • bc37362959 fix: !nw использует asyncio.gather() для параллельной загрузки RSS вместо последовательной deadzilla 2026-07-11 23:47:00 +05:00
  • 27eaa677fd fix: fallback morning-дайджеста перебирает каналы целевого сервера вместо всех серверов deadzilla 2026-07-11 23:45:25 +05:00
  • e2289e5092 docs: обновлён ISSUES.md — 3 критические задачи перенесены в исправленные deadzilla 2026-07-11 23:31:27 +05:00
  • c5c6a51cd2 fix: добавлено закрытие requests.Session при graceful shutdown бота deadzilla 2026-07-11 23:30:55 +05:00
  • 1fa6deaf67 fix: отсортирован _WEATHER_MAPPING по убыванию длины ключей для корректного substring-matching deadzilla 2026-07-11 23:27:17 +05:00
  • b5cbeecb61 docs: заменён format_weather_for_embed на format_weather_for_message в README deadzilla 2026-07-11 23:23:19 +05:00
  • cef53197b1 feat: !morning — заменить embed на plain text, кот отдельным сообщением deadzilla 2026-07-09 13:28:39 +05:00
  • 2197a0052d Обновлён README.md: добавлены truncate_message, truncate_embed_text, truncate_embed_field в документацию utils/news.py и тесты deadzilla 2026-07-09 13:15:03 +05:00
  • bc843abc63 Добавлены тесты для Cat, News, Morning когов, TextHelpCommand и truncate-функций (282 теста, все проходят) deadzilla 2026-07-09 13:07:09 +05:00
  • f417a9abbc Актуализация README.md: убрал несуществующие !hp/help.py/test_help_discord, добавил test_integration, conftest, .gitignore, .pre-commit-config.yaml, обновил зависимости и счётчик тестов (154 → 161) deadzilla 2026-07-09 12:53:48 +05:00
  • 7cef202c8f refactor(news): Embed → plain text для команды !nw deadzilla 2026-07-09 12:32:15 +05:00
  • 8d346943da Замена embed-вывода !help на простой текст deadzilla 2026-07-09 10:17:33 +05:00
  • d0a4f45e68 feat: удалить команду !hp вместе с тестами deadzilla 2026-07-09 09:35:49 +05:00
  • 48ed9aa07b fix: !hp теперь показывает правильные описания команд deadzilla 2026-07-09 09:18:48 +05:00
  • a8e9be09c7 Добавлен tzdata и установлен часовой пояс Asia/Yekaterinburg для корректной работы планировщика deadzilla 2026-07-09 00:14:49 +05:00
  • b98c696498 Исправлена версия defusedxml: 7.0.0 -> 0.7.0 (версии 7.0.0 не существует) deadzilla 2026-07-09 00:07:01 +05:00
  • 7ade3147cf форматирование: применён ruff format ко всем файлам проекта (21 файл) deadzilla 2026-07-08 00:44:22 +05:00
  • d20957ac5f исправлено: добавлены noqa: E402 для импортов после monkey-patch в bot.py deadzilla 2026-07-08 00:40:37 +05:00
  • 4b61909ebc исправлено: убраны неиспользуемые импорты и переменные из tests/test_morning_runner.py deadzilla 2026-07-08 00:40:08 +05:00
  • 4e816d5998 исправлено: перемещён import contextlib в начало файла deadzilla 2026-07-08 00:39:43 +05:00
  • b21237b042 исправлено: убран неиспользуемый import requests из tests/test_integration.py deadzilla 2026-07-08 00:39:27 +05:00
  • 0fa467d40e исправлено: переименована неоднозначная переменная l в line deadzilla 2026-07-08 00:39:12 +05:00
  • a1b72ecbcf исправлено: убрана неиспользуемая переменная mock_fallback в test_fetch_open_meteo_ssl_error deadzilla 2026-07-08 00:38:59 +05:00
  • 00ec2eac0e исправлено: убран неиспользуемый import pytest из tests/test_fetch_rss.py deadzilla 2026-07-08 00:38:16 +05:00
  • ab0039661a исправлено: убраны неиспользуемые импорты json и pytest из tests/test_fetch_cat.py deadzilla 2026-07-08 00:37:35 +05:00
  • 5a2ff483a1 исправлено: убраны неиспользуемые импорты pytest и patch из tests/test_commands_status.py deadzilla 2026-07-08 00:37:16 +05:00
  • cd25d63f5b исправлено: убран неиспользуемый import pytest из tests/test_commands_stats.py deadzilla 2026-07-08 00:37:04 +05:00
  • be0aa5211a исправлено: убран неиспользуемый import discord из commands/morning.py deadzilla 2026-07-08 00:36:50 +05:00
  • 02b6b10ea3 исправлено: убран неиспользуемый import discord из commands/help.py deadzilla 2026-07-08 00:36:41 +05:00
  • dda5753f8c Обновление ISSUES.md: все задачи закрыты deadzilla 2026-07-08 00:28:09 +05:00
  • a063abcd17 Добавлены интеграционные тесты: загрузка когов, команды !cat и !stats, утилиты (9 тестов, итого 239) deadzilla 2026-07-08 00:27:56 +05:00
  • a5ea2086cd Исправление: добавил pre-commit хуки (ruff + ruff-format) deadzilla 2026-07-08 00:17:01 +05:00
  • a9a2d40e5c Обновление ISSUES.md: отмечен исправленный LOW-приоритет deadzilla 2026-07-08 00:15:47 +05:00
  • a8d2bdb579 Исправление: вынес import из тел функций тестов наверх модулей (35 вхождений) deadzilla 2026-07-08 00:15:34 +05:00
  • beae42fdc8 Исправление: добавил -> None ко всем 140 test-функциям deadzilla 2026-07-08 00:10:27 +05:00
  • ea40400a65 Обновление ISSUES.md: все MEDIUM задачи исправлены deadzilla 2026-07-08 00:08:02 +05:00
  • ff2b9bb8d7 Исправление: factory-функции для RateLimiter (make_cat_limiter, make_weather_limiter и т.д.) deadzilla 2026-07-08 00:07:55 +05:00
  • 77c5f5a3a6 Исправление: graceful shutdown через on_shutdown + context manager (SIGTERM на Docker/K8s) deadzilla 2026-07-08 00:05:47 +05:00
  • f6f5b96563 Исправление: убрал пустой __init__ из Morning cog deadzilla 2026-07-07 23:33:51 +05:00
  • 41102a9d3d Исправление: убрал утечку корутин Scheduler в тестах — mock _start_scheduler вместо create_task deadzilla 2026-07-07 23:32:46 +05:00
  • faad12a0a6 Исправление: monkey-patch asyncio.iscoroutinefunction для устранения 53 deprecation warnings deadzilla 2026-07-07 23:20:26 +05:00
  • 65e01f0091 Исправление: добавил type hints ко всем 20 production-функциям deadzilla 2026-07-07 23:17:25 +05:00
  • 613dea55cf docs: обновил ISSUES.md — отметил исправленные HIGH-проблемы deadzilla 2026-07-07 23:12:08 +05:00
  • 57d7792755 Исправление: перенос import time из __init__ на уровень модуля deadzilla 2026-07-07 23:11:38 +05:00
  • aa40f2b7ff Исправление: замена f-string на %-формат в logger.error deadzilla 2026-07-07 23:10:21 +05:00
  • ec0cee6c68 Исправление: удаление эмодзи из сообщений и логов morning_runner deadzilla 2026-07-07 23:08:58 +05:00