Repository navigation
Releases: teloxide-fork/teloxide
Release list
v0.18.0
Changed
MessageFilterExt::filter_reply_to_messagenow insertsteloxide::dispatching::ReplyToMessageinto the dependency map instead of a bareMessage, so it no longer overrides the originalMessage(#751) [BC]
Added
- Added support for Telegram Bot API 10.3
- Rich-message buttons and blocks, ephemeral message parameters, generation updates, reply markup, permissions, and community/gift fields
Update::filter_stopped_message_generationand its dispatcher allowed-update hintreceiver_user_id/callback_query_idsend-method parameters were replaced byephemeral_message_parameters[BC]- See its changelog for more information
- Added support for Telegram Bot API 10.2 [BC]
- Rich-message input, ephemeral messages, communities, and subscription updates
- See its changelog for more information
- Added support for Telegram Bot API 10.1 [BC]
- Added support for Telegram Bot API 10.0
- Added support for Telegram Bot API 9.6
- Added support for Telegram Bot API 9.5
- Support for TBA 9.4, see its changelog for more information
- Support for TBA 9.3, see its changelog for more information [BC]
MessageToEditHasNoTextvariant toApiError(#1426)ParticipantIdInvalidandChatAdminRequiredvariants toApiError(#1349)- Support for TBA 9.2 (#1403)
- Add
filter_suggested_post_approved,filter_suggested_post_approval_failed,filter_suggested_post_declined,filter_suggested_post_paid,filter_suggested_post_refundedfilters to theMessageFilterExttrait ChatFullInfoPublicKind::Supergroupis now of typeBox<ChatFullInfoPublicSupergroup>instead ofChatFullInfoPublicSupergroup[BC]
- Add
Fixed
-
Make sure
postgres-storage-rustlsfeature actually enables rustls-based postgres storage (#1400) -
Escape
@mentions inmarkdown::user_mention_or_link(#1411) -
Add local TBA file downloading support in
crate::net::download(#1173) -
Added schema and rust types checking (#1396) [BC]
delete_chat_photomethod now returnsTrue, notStringupload_sticker_filemethod now returnsFileinstead ofFileMetaphoto_size,photo_widthandphoto_heightparameters ofcreate_invoice_linkmethod now are of typeu32, notStringget_game_high_scoresmethod now returnsVec<GameHighScore>, notTrueBusinessMessagesDeletedstruct now has correct deserialization ofmessage_idsfieldaccent_color_idfield ofChatFullInfostruct now is of typeu8, notOption<u8>EncryptedPassportElementandEncryptedPassportElementKindstructs now deserialize correctlyphotofield ofPaidMediaPhotostruct now is of typeVec<PhotoSize>, notPhotoSizepremium_animationfield ofStickerKind::Regularenum variant is now of typeOption<File>, notOption<FileMeta>usersfield ofVideoChatParticipantsInvitedstruct now is of typeVec<User>, notOption<Vec<User>>
-
Don't ignore argument separator in CommandEnum and both separators in Command (#1462)
- Now it's possible to specify
separatorin each command variant - Usage of
command_separatorin a command variant now leads to a compile time error instead of silent ignoring - Now usage of
separatorwithoutparse_with = "split"both in the command enum and in the command variant gives a compile time error
- Now it's possible to specify
Changed
- MSRV (Minimal Supported Rust Version) was bumped from
1.85to1.88[BC] - Some dependencies were bumped:
derive_moreto2.0.1,deadpool-redisto0.22.0(#1408)
macros-v0.11.0
Fixed
- Don't ignore argument separator in CommandEnum and both separators in Command (#1462)
- Now it's possible to specify
separatorin each command variant - Usage of
command_separatorin a command variant now leads to a compile time error instead of silent ignoring - Now usage of
separatorwithoutparse_with = "split"both in the command enum and in the command variant gives a compile time error
- Now it's possible to specify
core-v0.14.0
Added
- Support for TBA 10.3
- Rich-message buttons, expandable quotations, document blocks, and compact tables
EphemeralMessageParameters, message-generation-stopped updates andAllowedUpdate::StoppedMessageGeneration, reply-markup fields, welcome-message permissions, and community/gift fields- Send-method
receiver_user_id/callback_query_idparameters were replaced byephemeral_message_parameters[BC] edit_ephemeral_message_text'stextparameter is now optional (an alternative to the newrich_messageparameter) [BC]EditEphemeralMessageTextno longer derivesPartialEq/Eq/Hash, since itsrich_message: InputRichMessageparameter can carry structured content [BC]
- Support for TBA 10.2
- Rich-message input:
InputRichBlocktype tree,InputRichMessageMedia,InputMediaVoiceNote, andInputRichMessage::blocks/mediafields - Ephemeral messages:
receiver_user_id/callback_query_idsend parameters,edit_ephemeral_message_text/_media/_caption/_reply_markupanddelete_ephemeral_messagemethods,BotCommand::is_ephemeral,Message::receiver_user/ephemeral_message_id, andReplyParameters::ephemeral_message_id - Communities:
Community,CommunityChatAdded,CommunityChatRemoved, andChatFullInfo::community - Subscriptions:
BotSubscriptionUpdatedandUpdate'ssubscriptionvariant ReplyParameters::message_idis now optional (an alternative to the newephemeral_message_idfield) [BC]EditMessageText,EditMessageTextInline,SendRichMessage, andSendRichMessageDraftno longer derivePartialEq/Eq/Hash, since theirrich_message: InputRichMessageparameter can now carry structuredblocks/mediacontent [BC]InputRichMessageandInputMessageContentRichMessageno longer deriveEq/Hash(both still derivePartialEq), for the same reason [BC]
- Rich-message input:
- Support for TBA 10.1
- Join request queries:
User::supports_join_request_queries,ChatFullInfo::guard_bot,ChatJoinRequest::query_id,answer_chat_join_request_queryandsend_chat_join_request_web_appmethods - Polls:
LinkandInputMediaLinkstructs, andlinkfield toPollMediastruct - Rich messages:
RichText/RichBlocktype trees,RichMessagestruct,InputRichMessagestruct,send_rich_messageandsend_rich_message_draftmethods, andMessage::rich_message()accessor textparameter ofedit_message_text/edit_message_text_inlineis now optional (an alternative to the newrich_messageparameter) [BC]
- Join request queries:
- Support for TBA 10.0
- Guest mode: guest message updates and
answer_guest_query - Message-reaction management and the
can_react_to_messagespermission - Poll media, members-only polls, country restrictions, and explanation media
- Live photos in messages and supported media inputs, plus
send_live_photo - Managed-bot access settings and their associated methods
get_user_personal_chat_messagesfor retrieving personal-chat messages
- Guest mode: guest message updates and
- Support for TBA 9.6
- Managed bots:
get_managed_bot_token,replace_managed_bot_token,save_prepared_keyboard_button,KeyboardButtonRequestManagedBot,ManagedBotCreated,ManagedBotUpdated, andUser::can_manage_bots Poll::correct_option_idwas replaced withPoll::correct_option_ids(Vec<u8>) [BC]SendPoll::correct_option_idwas replaced withSendPoll::correct_option_ids[BC]- Poll revoting, shuffled and addable options, delayed results, descriptions, persistent poll option metadata, persistent poll answer IDs, and poll-option reply parameters
Message::reply_to_poll_option_id,MessageKind::PollOptionAdded,MessageKind::PollOptionDeleted,MessageKind::ManagedBotCreated, andUpdateKind::ManagedBot
- Managed bots:
set_chat_member_tagmethodMessageEntityKind::DateTimevariantsender_tagfield toMessagetagfield toChatMemberKind::MemberandChatMemberKind::Restrictedcan_edit_tagfield toChatMemberKind::RestrictedEDIT_TAGflag (andcan_edit_tag()accessor) toChatPermissionscan_manage_tagsfield toChatAdministratorRightsandChatMemberKind::Administratorcan_manage_tagsparameter topromote_chat_member- Support for TBA 9.4
- Add
allows_users_to_create_topicsfield toUserstruct - Add
icon_custom_emoji_idandstylefields toKeyboardButtonandInlineKeyboardButtonstructs - Add
ButtonStyleenum - Add
ChatOwnerLeftstruct, andchat_owner_leftfield toMessagestruct - Add
ChatOwnerChangedstruct, andchat_owner_changedfield toMessagestruct - Add
set_my_profile_photoandremove_my_profile_photomethods - Add
VideoQualitystruct, andqualitiesfield toVideostruct - Add
first_profile_audiofield toChatFullInfostruct - Add
UserProfileAudiosstruct, andget_user_profile_audiosmethod - Add
rarityfield toUniqueGiftModelstruct - Add
is_burnedfield toUniqueGiftstruct
- Add
- Support for TBA 9.3
- Add
has_topics_enabledfield toUserstruct - Add
send_message_draftmethod - Add
is_name_implicitfield toForumTopicandForumTopicCreatedstructs - Add
get_user_giftsandget_chat_giftsmethods - Add
GiftedUpgradeandOffervariants toUniqueGiftOriginenum - Replace
last_resale_star_countfield withlast_resale_currencyandlast_resale_amountfields onUniqueGiftInfostruct [BC] - Add
gift_upgrade_sentfield toMessagestruct - Add
UniqueGiftColorsstruct, andcolorsfield toUniqueGiftstruct - Add
GiftBackgroundstruct, andbackgroundfield toGiftstruct - Add
UserRatingstruct, andratingfield toChatFullInfostruct - Add
completed_by_chatfield toChecklistTaskstruct - Add
paid_message_star_countandunique_gift_colorsfields toChatFullInfostruct - Add
message_effect_idparameter toforward_messageandcopy_messagemethods - Add
gift_id(now required),is_from_blockchain,is_premiumfields toUniqueGiftstruct [BC:gift_idchanged from absent to required] - Add
personal_total_count,personal_remaining_count,is_premium,has_colors,background,unique_gift_variant_countfields toGiftstruct - Add
is_upgrade_separateandunique_gift_numberfields toGiftInfoandOwnedGiftRegularstructs - Add
gifts_from_channelsfield toAcceptedGiftTypesstruct - Add
repost_storymethod - Replace
exclude_limitedparameter withexclude_limited_upgradableandexclude_limited_non_upgradableparameters, and addexclude_from_blockchainparameter toget_business_account_giftsmethod [BC]
- Add
- Support for TBA 9.2 (#1403)
- Add
checklist_task_idfield toReplyParametersstruct - Add
reply_to_checklist_task_idfield toMessagestruct - Add
publisher_chatfield toGiftandUniqueGiftstructs - Add
is_direct_messagesfield toPublicChatSupergroupandChatFullInfoPublicSupergroupstructs - Add
parent_chatfield toChatFullInfoPublicSupergroupstruct - Add
DirectMessagesTopicandTopicIdstructs, and added fielddirect_messages_topictoMessagestruct - Add
direct_messages_topic_idparameter tosend_message,send_photo,send_video,send_animation,send_audio,send_document,send_paid_media,send_sticker,send_video_note,send_voice,send_location,send_venue,send_contact,send_dice,send_invoice,send_media_group,copy_message,copy_messages,forward_messageandforward_messagesmethods - Add
SuggestedPostParametersstruct andsuggested_post_parametersparameter tosend_message,send_photo,send_video,send_animation,send_audio,send_document,send_paid_media,send_sticker,send_video_note,send_voice,send_location,send_venue,send_contact,send_dice,send_invoice,copy_messageandforward_messagemethods - Add
message_thread_idparameter tosend_paid_mediamethod - Add
approve_suggested_postanddecline_suggested_postmethods - Add
can_manage_direct_messagesfield toAdministratorandChatAdministratorRightsstructs - Add
can_manage_direct_messagesparameter topromote_chat_membermethod - Add
is_paid_postfield toMessagestruct - Add
suggested_post_infofield toMessagestruct - Add
suggested_post_approved,suggested_post_approval_failed,suggested_post_declined,suggested_post_paidandsuggested_post_refundedservice messages
- Add
Changed
- MSRV (Minimal Supported Rust Version) was bumped from
1.85to1.88[BC] takecellis now pinned to=0.1.1so that downstream users don't resolve a newer version with a higher MSRV (#1478)Throttlenow also throttlescreate_forum_topic,edit_forum_topic,delete_forum_topic,pin_chat_message,edit_message_text,edit_message_caption,edit_message_media,delete_messageanddelete_messages(these now returnThrottlingRequests and requireClone + Send + Sync + 'staticpayload bounds on the inner requester) [BC]send_message_draftis no longer restricted to privileged bots (TBA 9.5)- Support for TBA 9.2 (#1403)
ChatFullInfoPublicKind::Supergroupis now of typeBox<ChatFullInfoPublicSupergroup>instead ofChatFullInfoPublicSupergroup[BC]
Fixed
-
send_media_groupno longer accepts animations or voice notes at compile time:SendMediaGroup::media(andRequester::send_media_group) now takeInputGroupMedia(audio, document, live photo, photo, video) instead ofInputMedia; use.into()on a concreteInputMedia*type orInputGroupMedia::try_from(InputMedia)(#1121) [BC] -
ApiError::CantInitiateConversationis now parsed from the `Forbidden: b...