Changelog

View Source

All notable changes to this project will be documented in this file.

The format follows Keep a Changelog, and this project uses Semantic Versioning.

Unreleased

1.0.0 - 2026-06-12

Added

  • Added complete Telegram Bot API method coverage for Bot API 10.1, published on June 11, 2026. Nadia now wraps all 180 official Bot API methods, with 0 missing and 0 extra remote methods in the release inventory.
  • Added Bot API 10.1 rich-message wrappers for sendRichMessage and sendRichMessageDraft, plus rich_message request encoding for editMessageText.
  • Added Bot API 10.1 join-request query wrappers for answerChatJoinRequestQuery and sendChatJoinRequestWebApp.
  • Added focused Bot API 10.1 parser/model support for User.supports_join_request_queries, Message.rich_message, ChatJoinRequest.query_id, and PollMedia.link.
  • Added Telegram poll response structs and parser coverage for Message.poll, update-level poll and poll_answer updates, poll option service messages, and stopPoll results.
  • Added Telegram reaction response structs and parser coverage for message_reaction and message_reaction_count updates.
  • Added Telegram chat boost response structs and parser coverage for chat_boost, removed_chat_boost, Message.boost_added, and getUserChatBoosts results.
  • Added Telegram paid media response structs and parser coverage for Message.paid_media, purchased_paid_media updates, and sendPaidMedia results.
  • Added Telegram managed bot response structs and parser coverage for Message.managed_bot_created, managed_bot updates, and getManagedBotAccessSettings results.
  • Added Telegram business and guest-query response structs and parser coverage for business_connection, deleted_business_messages, business chat profile fields, and answerGuestQuery results.
  • Added Bot API wrappers for guest queries, business connections, managed bot token/access settings, user chat boosts, and user personal chat messages.
  • Added Bot API wrappers for business account read/delete, profile, gift settings, and Stars transfer maintenance.
  • Added Bot API wrappers for business gift conversion, upgrade, and transfer maintenance.
  • Added Bot API gift getter wrappers plus gift and owned-gift response structs/parser coverage.
  • Added Bot API story wrappers plus %Nadia.Model.Story{} response parser coverage.
  • Added Bot API Star balance getter wrappers and %Nadia.Model.StarAmount{} parser/model support.
  • Added Bot API getStarTransactions wrapper plus Star transaction response structs/parser coverage.
  • Added Bot API invoice wrappers for sending invoices and creating invoice links.
  • Added Bot API wrappers for payment acknowledgement and Telegram Stars payment/subscription maintenance.
  • Added Bot API wrappers for bulk message deletion and message reaction maintenance.
  • Added Bot API wrappers for chat administration, membership restrictions, join-request moderation, chat metadata, pinned-message, and chat sticker-set maintenance.
  • Added Bot API setChatPhoto wrapper with direct chat photo upload support.
  • Added Bot API wrappers for bot lifecycle and public bot settings maintenance, including commands, descriptions, menu button, default administrator rights, and user emoji status updates.
  • Added Bot API wrappers and response structs for object-returning bot settings getters, including commands, profile names/descriptions, menu buttons, and default administrator rights.
  • Added Bot API wrappers and response structs for bot profile photos and Mini App prepared inline messages and keyboard buttons.
  • Added Bot API organization verification wrappers for users and chats.
  • Added Bot API outgoing gift wrappers for gifts and Premium subscriptions.
  • Added Bot API forum topic wrappers, %Nadia.Model.ForumTopic{}, and parser coverage for createForumTopic and getForumTopicIconStickers results.
  • Added Bot API wrappers for modern sticker set and custom emoji sticker maintenance, including getCustomEmojiStickers parser coverage.
  • Added Bot API invite-link and user profile audio wrappers, plus %Nadia.Model.ChatInviteLink{} and %Nadia.Model.UserProfileAudios{} parser/model support.
  • Added Bot API copy/forward wrappers for copyMessage, copyMessages, and forwardMessages, plus %Nadia.Model.MessageId{} parser/model support.
  • Added Bot API send wrappers for sendVideoNote, sendLivePhoto, sendMediaGroup, sendPaidMedia, sendPoll, sendDice, and sendMessageDraft.
  • Added Bot API sendChecklist wrapper plus checklist model/parser support for Message.checklist.
  • Added Bot API updating-message wrappers for editing media, live locations, checklists, stopping polls, and approving or declining suggested posts.
  • Added Bot API wrappers and parser/model support for Web App query answers, games, game high scores, and Passport data errors.

Changed

  • Prepared Nadia 1.0.0 as the first stable release after the transport, explicit-client, parser-safety, and complete Bot API method-coverage refresh.
  • Upgraded Req to 0.6.1 for Nadia's default HTTP transport.
  • Expanded Telegram response parsing for selected modern Update, Message, User, MessageEntity, and PhotoSize fields, including fixture-backed getUpdates coverage with string-key JSON decoding and no atom creation for unknown response fields.
  • Preserved explicit false Telegram Bot API and Telegraph API request parameters while continuing to omit nil parameters.
  • Replaced obsolete Telegram Bot API method wrappers kick_chat_member and get_chat_members_count with current ban_chat_member and get_chat_member_count wrappers.
  • Added option-support arities for existing Bot API wrappers forward_message, send_chat_action, delete_webhook, get_chat_administrators, unban_chat_member, and unpin_chat_message.

0.9.0 - 2026-06-05

Added

  • Added %Nadia.Client{} for explicit bot configuration, including default and named application-config constructors.
  • Added token-redacted inspect output for %Nadia.Client{}.
  • Added client-aware public Telegram wrapper arities, such as Nadia.send_message(client, chat_id, text, options), while preserving legacy single-bot arities.
  • Added client-aware Nadia.API.request/4, Nadia.API.request?/4, and Nadia.API.build_file_url/2.
  • Added a Nadia-owned HTTP boundary with normalized request/response structs and configurable HTTP adapters.
  • Added default-off :telegram_live smoke tests for two explicit bot clients.

Changed

  • Raised the minimum supported Elixir version to 1.20 and aligned CI/release workflows with Elixir 1.20 on current Erlang/OTP releases.
  • Promoted Req to Nadia's production HTTP transport for both Telegram Bot API and Telegraph API requests.
  • Decode Telegram Bot API and Telegraph API responses without creating atoms from remote JSON keys; unknown response fields remain ignored until Nadia explicitly models them.
  • Replaced Bot API and Telegraph cassette coverage with deterministic offline request/response tests.
  • Normalized Telegraph transport errors and malformed JSON responses into Nadia.Graph.Model.Error.

Removed

  • Removed HTTPoison, hackney, ExVCR, and hackney-specific SOCKS proxy configuration.

0.8.0 - 2026-06-02

Changed

  • Raised the minimum supported Elixir version to 1.15.
  • Refreshed runtime dependencies for modern Elixir and Erlang/OTP releases: httpoison 2.3, jason 1.4, and the current compatible Hackney dependency graph.
  • Updated CI to verify formatting, compilation with warnings as errors, tests, and documentation generation on modern Elixir/OTP versions.

Removed

  • Removed the legacy inch_ex documentation check in favor of ExDoc generation with warnings treated as errors.