Skip to content

Bump dev.inmo:tgbotapi from 35.1.0 to 36.1.0 - #339

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/gradle/dev.inmo-tgbotapi-36.0.0
Closed

Bump dev.inmo:tgbotapi from 35.1.0 to 36.1.0#339
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/gradle/dev.inmo-tgbotapi-36.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown
Contributor

Bumps dev.inmo:tgbotapi from 35.1.0 to 36.1.0.

Release notes

Sourced from dev.inmo:tgbotapi's releases.

36.1.0

  • Dependencies:
    • Update com.gradleup.nmcp.aggregation:com.gradleup.nmcp.aggregation.gradle.plugin from 1.6.0 to 1.6.1
    • Update com.google.devtools.ksp:symbol-processing-api from 2.3.9 to 2.3.11
    • Update io.ktor:ktor-client-core from 3.5.1 to 3.5.2
    • Update dev.inmo:kslog from 1.6.1 to 1.7.0
    • Update dev.inmo:micro_utils.colors.common from 0.30.0 to 0.30.1

36.0.0

THIS UPDATE CONTAINS SUPPORT OF TELEGRAM BOTS API 10.2

Breaking changes:

  • RichBlockTableCell.align now uses the string-serialized RichBlockTableCellAlign sealed hierarchy (Left, Center, or Right) instead of String
  • RichBlockTableCell.valign now uses the string-serialized RichBlockTableCellVAlign sealed hierarchy (Top, Middle, or Bottom) instead of String
  • RichBlockTableCell is now a sealed interface with Header and Regular implementations; the input table DSL uses headerCell and cell respectively
  • InputRichBlockListItem is now a sealed interface with Ordered and Unordered implementations; ordered items require a non-null value and typed LabelType, while LabelType.Decimals is the default; InputRichBlocksBuilder now exposes separate orderedList and unorderedList DSL functions with matching item builders
  • ReplyParameters is now a sealed interface with nested ReplyParameters.Chat and ReplyParameters.Ephemeral implementations; overloaded ReplyParameters(...) companion factories construct both regular-message and ephemeral-message variants
  • The 4 group-family message implementations (CommonGroupContentMessageImpl, CommonForumContentMessageImpl, CommonChannelDirectMessagesContentMessageImpl, CommonSuggestedChannelDirectMessagesContentMessageImpl) gained trailing receiverUser/ephemeralMessageId primary-constructor parameters (defaulted to null) ��� positional construction of these classes must be updated
  • reply(to = ...) overloads for the 13 ephemeral-capable senders (see below) now detect an ephemeral to target (to is PossiblyEphemeralMessage && to.ephemeralMessageId != null) and automatically address the reply through ephemeral_message_id, sending the outgoing message itself as ephemeral to the same receiver ��� this is a behavior change for any existing code that replies to a message carrying a non-null ephemeralMessageId

Migration advice: Keep ReplyParameters(...) for both chat-message and ephemeral-message targets; explicit ReplyParameters.Ephemeral(...) subtype construction also remains available; pass receiverUser/ephemeralMessageId explicitly (or rely on their null default) when constructing the 4 group-family message implementations positionally

  • Core:
    • (Rich Messages) Added the raw-string-serialized RichBlockTableCellVAlign hierarchy and migrated table-cell vertical alignment from String to RichBlockTableCellVAlign
    • (Rich Messages) Added the raw-string-serialized RichBlockTableCellAlign hierarchy and migrated table-cell alignment from String to RichBlockTableCellAlign
    • (Rich Messages) Split RichBlockTableCell into header/regular variants with a shared flat surrogate serializer; added headerCell to the input table DSL
    • (Rich Messages) Added h1 through h6 shortcuts for plain and rich-text headings in InputRichBlocksBuilder
    • (Rich Messages) Reworked the input table DSL to build cells through nested table { row { cell(...) { } } } builders
    • (Rich Messages) Replaced the flat InputRichBlockListItem data class with ordered/unordered variants, added the string-serialized LabelType hierarchy (A, a, I, i, 1), and split the list DSL into InputRichBlockOrderedListBuilder/InputRichBlockUnorderedListBuilder
    • (Rich Messages) Added InputRichBlock hierarchy with all 21 InputRichBlock* types (mirroring the received RichBlock* hierarchy and reusing RichText/RichBlockCaption/RichBlockTableCell), the label-less InputRichBlockListItem and the InputRichBlockSerializer; every InputRichBlock exposes subBlocks navigation
    • (Rich Messages) Added TelegramMediaVoiceNote (InputMediaVoiceNote) and the RichMessageMemberTelegramMedia marker interface implemented by it, TelegramMediaAnimation, TelegramMediaAudio, TelegramMediaPhoto and TelegramMediaVideo; added VoiceFile.toTelegramMediaVoiceNote converters
    • (Rich Messages) Added InputRichMessageMedia type (media referenced from InputRichMessage.html/.markdown via tg://photo?id=, tg://video?id= and tg://audio?id= links)
    • (Rich Messages) InputRichMessage gained blocks and media fields ("exactly one of html, markdown or blocks must be used") and the InputRichMessageBlocks factory; InputRichMessageHTML/InputRichMessageMarkdown gained a trailing media parameter
    • (Rich Messages) Added Rich Messages input DSL builders buildInputRichBlocks/InputRichBlocksBuilder, typed ordered/unordered list builders and the InputRichMessageBlocks { } builder overload (marked with the @RichTextDsl DSL marker)
    • (Rich Messages) SendRichMessage now supports attach:// upload of new files referenced from InputRichMessage.blocks/.media; SendRichMessageDraft now rejects rich messages that require direct file upload (unsupported by the method)
    • (Ephemeral Messages) Added EphemeralMessageId value class, PossiblyEphemeralMessage (receiverUser/ephemeralMessageId) and EphemeralMessageAction (receiverUserId/ephemeralMessageId) abstractions
    • (Ephemeral Messages) RawMessage parses receiver_user/ephemeral_message_id; the 4 group-family Common*ContentMessage types (CommonGroupContentMessage, CommonForumContentMessage, CommonChannelDirectMessagesContentMessage, CommonSuggestedChannelDirectMessagesContentMessage, via the shared PotentiallyFromUserGroupContentMessage) now also implement PossiblyEphemeralMessage
    • (Ephemeral Messages) BotCommand gained the isEphemeral field
    • (Ephemeral Messages) ReplyParameters became a sealed interface with nested Chat and Ephemeral implementations and a shared surrogate-backed serializer preserving the flat Bot API JSON shape; added the Message.ephemeralReplyParametersOrNull()/Message.ephemeralReplyReceiverUserIdOrNull helpers used by the reply(to = ...) smart-branch
    • (Ephemeral Messages) ReplyParameters.Ephemeral and Message.ephemeralReplyParametersOrNull() support and forward allowSendingWithoutReply, checklistTaskId, and pollOptionId together with ephemeralMessageId
    • (Ephemeral Messages) Added receiverUserId/callbackQueryId params (via the new OptionallyEphemeralSendRequest) to the 13 ephemeral-capable send requests: SendTextMessage, SendContact, SendLocation (Static/Live), SendVenue, SendPhotoData, SendLivePhotoData, SendAudioData, SendDocumentData, SendVideoData, SendAnimationData, SendVoiceData, SendVideoNoteData, SendStickerByFileId
    • (Ephemeral Messages) Added EditEphemeralMessageText/EditEphemeralMessageMedia/EditEphemeralMessageCaption/EditEphemeralMessageReplyMarkup and DeleteEphemeralMessage requests (all return Unit, mirroring the inline-message edit family); EditEphemeralMessageMedia rejects MultipartFile media (new file upload is not supported for ephemeral edits)
    • (Ephemeral Messages) Added EphemeralChatId (IdChatIdentifier, carrying chatId/receiverUser/ephemeralMessageId) and the ChatIdentifier.receiverUser/ChatIdentifier.ephemeralMessageId extensions (mirroring ChatIdentifier.threadId); FullChatIdentifierSerializer gained the chatId/eph/receiverUserChatId/ephemeralMessageId string format. The nullable receiverUserId param of the 13 ephemeral-capable send requests still defaults from the passed chatId when it is an EphemeralChatId; DeleteEphemeralMessage and EditEphemeralMessageText/EditEphemeralMessageCaption/EditEphemeralMessageMedia/EditEphemeralMessageReplyMarkup instead keep receiverUserId/ephemeralMessageId REQUIRED on their primary constructor/factory form, gaining EphemeralChatId-taking secondary constructors/factory overloads that source both params from the identifier (throwing IllegalArgumentException if it carries no ephemeralMessageId)
    • (Communities) Added CommunityId value class and Community type (id/name)
    • (Communities) Added CommunityChatAdded (community) and CommunityChatRemoved (fieldless) chat events (CommonEvent); RawMessage parses community_chat_added/community_chat_removed
    • (Communities) Added community field to ExtendedChat (ChatFullInfo.community), parsed for ExtendedChannelChatImpl, ExtendedGroupChatImpl, ExtendedSupergroupChatImpl, ExtendedForumChatImpl, ExtendedChannelDirectMessagesChatImpl and ExtendedBot
    • (Bot Subscriptions) Added BotSubscriptionUpdated (user, invoicePayload, state) and BotSubscriptionUpdatedUpdate; state is modeled as the typed sealed BotSubscriptionUpdated.State (Canceled/Active/Failed, with an Unknown fallback), mirroring TransactionType
    • (Bot Subscriptions) RawUpdate parses the new subscription field; added UPDATE_SUBSCRIPTION to ALL_UPDATES_LIST_WITHOUT_REACTIONS; FlowsUpdatesFilter gained botSubscriptionUpdatedUpdatesFlow
  • API:

... (truncated)

Changelog

Sourced from dev.inmo:tgbotapi's changelog.

36.1.0

  • Dependencies:
    • Update com.gradleup.nmcp.aggregation:com.gradleup.nmcp.aggregation.gradle.plugin from 1.6.0 to 1.6.1
    • Update com.google.devtools.ksp:symbol-processing-api from 2.3.9 to 2.3.11
    • Update io.ktor:ktor-client-core from 3.5.1 to 3.5.2
    • Update dev.inmo:kslog from 1.6.1 to 1.7.0
    • Update dev.inmo:micro_utils.colors.common from 0.30.0 to 0.30.1

36.0.0

THIS UPDATE CONTAINS SUPPORT OF TELEGRAM BOTS API 10.2

Breaking changes:

  • RichBlockTableCell.align now uses the string-serialized RichBlockTableCellAlign sealed hierarchy (Left, Center, or Right) instead of String
  • RichBlockTableCell.valign now uses the string-serialized RichBlockTableCellVAlign sealed hierarchy (Top, Middle, or Bottom) instead of String
  • RichBlockTableCell is now a sealed interface with Header and Regular implementations; the input table DSL uses headerCell and cell respectively
  • InputRichBlockListItem is now a sealed interface with Ordered and Unordered implementations; ordered items require a non-null value and typed LabelType, while LabelType.Decimals is the default; InputRichBlocksBuilder now exposes separate orderedList and unorderedList DSL functions with matching item builders
  • ReplyParameters is now a sealed interface with nested ReplyParameters.Chat and ReplyParameters.Ephemeral implementations; overloaded ReplyParameters(...) companion factories construct both regular-message and ephemeral-message variants
  • The 4 group-family message implementations (CommonGroupContentMessageImpl, CommonForumContentMessageImpl, CommonChannelDirectMessagesContentMessageImpl, CommonSuggestedChannelDirectMessagesContentMessageImpl) gained trailing receiverUser/ephemeralMessageId primary-constructor parameters (defaulted to null) — positional construction of these classes must be updated
  • reply(to = ...) overloads for the 13 ephemeral-capable senders (see below) now detect an ephemeral to target (to is PossiblyEphemeralMessage && to.ephemeralMessageId != null) and automatically address the reply through ephemeral_message_id, sending the outgoing message itself as ephemeral to the same receiver — this is a behavior change for any existing code that replies to a message carrying a non-null ephemeralMessageId

Migration advice: Keep ReplyParameters(...) for both chat-message and ephemeral-message targets; explicit ReplyParameters.Ephemeral(...) subtype construction also remains available; pass receiverUser/ephemeralMessageId explicitly (or rely on their null default) when constructing the 4 group-family message implementations positionally

  • Core:
    • (Rich Messages) Added the raw-string-serialized RichBlockTableCellVAlign hierarchy and migrated table-cell vertical alignment from String to RichBlockTableCellVAlign
    • (Rich Messages) Added the raw-string-serialized RichBlockTableCellAlign hierarchy and migrated table-cell alignment from String to RichBlockTableCellAlign
    • (Rich Messages) Split RichBlockTableCell into header/regular variants with a shared flat surrogate serializer; added headerCell to the input table DSL
    • (Rich Messages) Added h1 through h6 shortcuts for plain and rich-text headings in InputRichBlocksBuilder
    • (Rich Messages) Reworked the input table DSL to build cells through nested table { row { cell(...) { } } } builders
    • (Rich Messages) Replaced the flat InputRichBlockListItem data class with ordered/unordered variants, added the string-serialized LabelType hierarchy (A, a, I, i, 1), and split the list DSL into InputRichBlockOrderedListBuilder/InputRichBlockUnorderedListBuilder
    • (Rich Messages) Added InputRichBlock hierarchy with all 21 InputRichBlock* types (mirroring the received RichBlock* hierarchy and reusing RichText/RichBlockCaption/RichBlockTableCell), the label-less InputRichBlockListItem and the InputRichBlockSerializer; every InputRichBlock exposes subBlocks navigation
    • (Rich Messages) Added TelegramMediaVoiceNote (InputMediaVoiceNote) and the RichMessageMemberTelegramMedia marker interface implemented by it, TelegramMediaAnimation, TelegramMediaAudio, TelegramMediaPhoto and TelegramMediaVideo; added VoiceFile.toTelegramMediaVoiceNote converters
    • (Rich Messages) Added InputRichMessageMedia type (media referenced from InputRichMessage.html/.markdown via tg://photo?id=, tg://video?id= and tg://audio?id= links)
    • (Rich Messages) InputRichMessage gained blocks and media fields ("exactly one of html, markdown or blocks must be used") and the InputRichMessageBlocks factory; InputRichMessageHTML/InputRichMessageMarkdown gained a trailing media parameter
    • (Rich Messages) Added Rich Messages input DSL builders buildInputRichBlocks/InputRichBlocksBuilder, typed ordered/unordered list builders and the InputRichMessageBlocks { } builder overload (marked with the @RichTextDsl DSL marker)
    • (Rich Messages) SendRichMessage now supports attach:// upload of new files referenced from InputRichMessage.blocks/.media; SendRichMessageDraft now rejects rich messages that require direct file upload (unsupported by the method)
    • (Ephemeral Messages) Added EphemeralMessageId value class, PossiblyEphemeralMessage (receiverUser/ephemeralMessageId) and EphemeralMessageAction (receiverUserId/ephemeralMessageId) abstractions
    • (Ephemeral Messages) RawMessage parses receiver_user/ephemeral_message_id; the 4 group-family Common*ContentMessage types (CommonGroupContentMessage, CommonForumContentMessage, CommonChannelDirectMessagesContentMessage, CommonSuggestedChannelDirectMessagesContentMessage, via the shared PotentiallyFromUserGroupContentMessage) now also implement PossiblyEphemeralMessage
    • (Ephemeral Messages) BotCommand gained the isEphemeral field
    • (Ephemeral Messages) ReplyParameters became a sealed interface with nested Chat and Ephemeral implementations and a shared surrogate-backed serializer preserving the flat Bot API JSON shape; added the Message.ephemeralReplyParametersOrNull()/Message.ephemeralReplyReceiverUserIdOrNull helpers used by the reply(to = ...) smart-branch
    • (Ephemeral Messages) ReplyParameters.Ephemeral and Message.ephemeralReplyParametersOrNull() support and forward allowSendingWithoutReply, checklistTaskId, and pollOptionId together with ephemeralMessageId
    • (Ephemeral Messages) Added receiverUserId/callbackQueryId params (via the new OptionallyEphemeralSendRequest) to the 13 ephemeral-capable send requests: SendTextMessage, SendContact, SendLocation (Static/Live), SendVenue, SendPhotoData, SendLivePhotoData, SendAudioData, SendDocumentData, SendVideoData, SendAnimationData, SendVoiceData, SendVideoNoteData, SendStickerByFileId
    • (Ephemeral Messages) Added EditEphemeralMessageText/EditEphemeralMessageMedia/EditEphemeralMessageCaption/EditEphemeralMessageReplyMarkup and DeleteEphemeralMessage requests (all return Unit, mirroring the inline-message edit family); EditEphemeralMessageMedia rejects MultipartFile media (new file upload is not supported for ephemeral edits)
    • (Ephemeral Messages) Added EphemeralChatId (IdChatIdentifier, carrying chatId/receiverUser/ephemeralMessageId) and the ChatIdentifier.receiverUser/ChatIdentifier.ephemeralMessageId extensions (mirroring ChatIdentifier.threadId); FullChatIdentifierSerializer gained the chatId/eph/receiverUserChatId/ephemeralMessageId string format. The nullable receiverUserId param of the 13 ephemeral-capable send requests still defaults from the passed chatId when it is an EphemeralChatId; DeleteEphemeralMessage and EditEphemeralMessageText/EditEphemeralMessageCaption/EditEphemeralMessageMedia/EditEphemeralMessageReplyMarkup instead keep receiverUserId/ephemeralMessageId REQUIRED on their primary constructor/factory form, gaining EphemeralChatId-taking secondary constructors/factory overloads that source both params from the identifier (throwing IllegalArgumentException if it carries no ephemeralMessageId)
    • (Communities) Added CommunityId value class and Community type (id/name)
    • (Communities) Added CommunityChatAdded (community) and CommunityChatRemoved (fieldless) chat events (CommonEvent); RawMessage parses community_chat_added/community_chat_removed
    • (Communities) Added community field to ExtendedChat (ChatFullInfo.community), parsed for ExtendedChannelChatImpl, ExtendedGroupChatImpl, ExtendedSupergroupChatImpl, ExtendedForumChatImpl, ExtendedChannelDirectMessagesChatImpl and ExtendedBot
    • (Bot Subscriptions) Added BotSubscriptionUpdated (user, invoicePayload, state) and BotSubscriptionUpdatedUpdate; state is modeled as the typed sealed BotSubscriptionUpdated.State (Canceled/Active/Failed, with an Unknown fallback), mirroring TransactionType

... (truncated)

Commits

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Aug 24, 2026
@madhead

madhead commented Aug 24, 2026

Copy link
Copy Markdown
Owner

@dependabot recreate

Bumps [dev.inmo:tgbotapi](https://github.com/insanusmokrassar/TelegramBotAPI) from 35.1.0 to 36.1.0.
- [Release notes](https://github.com/insanusmokrassar/TelegramBotAPI/releases)
- [Changelog](https://github.com/InsanusMokrassar/ktgbotapi/blob/master/CHANGELOG.md)
- [Commits](InsanusMokrassar/ktgbotapi@v35.1.0...v36.1.0)

---
updated-dependencies:
- dependency-name: dev.inmo:tgbotapi
  dependency-version: 36.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title Bump dev.inmo:tgbotapi from 35.1.0 to 36.0.0 Bump dev.inmo:tgbotapi from 35.1.0 to 36.1.0 Aug 24, 2026
@dependabot
dependabot Bot force-pushed the dependabot/gradle/dev.inmo-tgbotapi-36.0.0 branch from 4b28707 to 40a348a Compare August 24, 2026 23:12
@dependabot @github

dependabot Bot commented on behalf of github Aug 25, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #341.

@dependabot dependabot Bot closed this Aug 25, 2026
@dependabot
dependabot Bot deleted the dependabot/gradle/dev.inmo-tgbotapi-36.0.0 branch August 25, 2026 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update Java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant