Skip to content

Releases: CandyCrimsie/aiomax2

aiomax2 v0.1.0

Choose a tag to compare

@CandyCrimsie CandyCrimsie released this 07 Oct 06:14

aiomax2 v0.1.0

First stable release of aiomax2 — an asynchronous Python framework for the MAX Bot API.

This release was audited against:

  • MAX OpenAPI 0.0.33
  • official MAX Go SDK v2.4.3
  • current MAX API documentation

Highlights

  • Typed async MAX Bot API client
  • Dispatcher and nested Routers
  • Command and magic filters
  • Middleware and FSM
  • Long Polling and Webhook support
  • FastAPI integration
  • InlineKeyboardBuilder with all current MAX button types
  • HTML and MAX Markdown
  • Image, video, audio and file uploads
  • Messages, comments, chats, members, admins and subscriptions
  • Typed update models for all 19 current OpenAPI update types
  • Rate limiting and retry handling
  • Secure TLS configuration
  • Strict mypy typing
  • Python 3.12 and 3.13 support

The implementation has been conformance-audited against the official MAX
OpenAPI and Go SDK. Removed and legacy MAX API methods are intentionally not
exposed.

aiomax2 0.1.0a3

aiomax2 0.1.0a3 Pre-release
Pre-release

Choose a tag to compare

@CandyCrimsie CandyCrimsie released this 06 Oct 13:18

aiomax2 0.1.0a3

Третий alpha-релиз aiomax2 — асинхронного Python-фреймворка для MAX Bot API.

Этот релиз в основном посвящён сверке с актуальным MAX API, исправлению найденных расхождений, расширению тестового покрытия и подготовке фреймворка к реальному использованию через Long Polling и Webhook.

Основные изменения

  • исправлена обработка get_admins() в соответствии с фактическим ответом MAX API;
  • исправлена сериализация comment requests: неподдерживаемый notify больше не отправляется в MAX;
  • Webhook теперь корректно возвращает 400 для malformed JSON и невалидных update payload;
  • исключения фоновых polling handlers больше не приводят к Task exception was never retrieved;
  • edit_my_commands(None) корректно очищает список команд;
  • добавлена обработка всех 19 актуальных MAX update types;
  • улучшена forward compatibility для неизвестных будущих update types;
  • расширены integration и conformance tests для Dispatcher, Webhook и Bot API;
  • улучшена документация handlers, filters, magic filters, commands и callbacks;
  • добавлен подробный live smoke-test harness;
  • дополнительно проверены TLS, uploads, callbacks, keyboards, formatting и работа с attachments.

Live testing

Перед релизом на настоящем MAX были проверены основные сценарии:

  • Long Polling;
  • Webhook через FastAPI/Uvicorn;
  • отправка, reply, редактирование и удаление сообщений;
  • callback-кнопки и CallbackQuery;
  • FSM;
  • загрузка attachments.

Работа бота во всех сценариях групп и каналов пока не проходила полный live regression и будет дополнительно проверяться в следующих alpha-релизах.

Установка

pip install --pre aiomax2

Конкретно эту версию:

pip install aiomax2==0.1.0a3

Статус

0.1.0a3 остаётся alpha-релизом.

Public API уже пригоден для экспериментов и разработки реальных MAX-ботов, но до стабильного 0.1.0 возможны изменения API и поведения отдельных компонентов.

Полная документация:

https://candycrimsie.github.io/aiomax2/

Исходный код:

https://github.com/CandyCrimsie/aiomax2

aiomax2 0.1.0a2

aiomax2 0.1.0a2 Pre-release
Pre-release

Choose a tag to compare

@CandyCrimsie CandyCrimsie released this 06 Oct 09:00

aiomax2 0.1.0a2

Вторая alpha-версия aiomax2.

Основные изменения

  • добавлена полноценная поддержка Webhook через FastAPI
  • добавлен InlineKeyboardBuilder и reply_markup
  • поддержаны все актуальные типы inline-кнопок MAX
  • добавлены HTML и MAX Markdown через TextFormat
  • улучшена обработка callback answers
  • добавлен answer_callback_result() для диагностики ответов MAX
  • добавлен bounded retry для attachment.not.ready
  • усилены rate limits для повторных attachment-запросов
  • улучшена TLS-безопасность
  • добавлены ca_file и explicit verify_ssl=False
  • добавлен InsecureTLSWarning
  • добавлена документация по сертификатам Минцифры
  • исправлена validation open_app payload
  • обновлена и расширена русскоязычная документация
  • добавлены новые live-tested examples

Проверено

  • Python 3.12
  • Python 3.13
  • Long Polling
  • Webhook
  • message send/reply/edit/delete
  • callback buttons
  • inline keyboard builder
  • FSM
  • image/file uploads
  • contacts
  • stickers
  • clipboard button
  • HTML formatting
  • Markdown formatting
  • MAX API subscriptions
  • TLS custom CA / secure transport

Известная особенность MAX

notification в callback answer принимается MAX API с success=true, однако
на текущих Web, Android и iOS клиентах отдельное notification-only уведомление
может визуально не отображаться.

aiomax2 0.1.0a1

aiomax2 0.1.0a1 Pre-release
Pre-release

Choose a tag to compare

@CandyCrimsie CandyCrimsie released this 06 Oct 05:30

aiomax2 0.1.0a1

Первый alpha-релиз aiomax2 — асинхронного Python-фреймворка для MAX Bot API.

Добавлено

  • асинхронный клиент MAX Bot API на aiohttp;
  • Bot, Dispatcher и вложенные Router;
  • типизированные модели MAX API на Pydantic 2;
  • обработка актуальных типов updates;
  • Command, CommandObject и magic filter F;
  • middleware и context injection;
  • FSM с MemoryStorage;
  • shortcuts для сообщений и callback;
  • Long Polling для разработки и тестирования;
  • Webhook и FastAPI integration;
  • загрузка изображений, видео, аудио и файлов;
  • TLS verification и поддержка дополнительного CA bundle;
  • обработка 429, retries и базовый rate limiting;
  • unit и mock-server integration tests;
  • CI и базовая документация.

Это alpha-версия. Публичный API может изменяться до стабильного релиза.