Skip to content

Update: 2.4.0 - #38

Merged
null-nick merged 104 commits into
mainfrom
dev
Jul 14, 2026
Merged

Update: 2.4.0#38
null-nick merged 104 commits into
mainfrom
dev

Conversation

@null-nick

Copy link
Copy Markdown
Collaborator

No description provided.

Pyrogram-Mod - Dev and others added 28 commits June 12, 2026 19:02
…228 API

New raw types from layer 228 TL (make api):
- community, communityForbidden, communityFull, communityPeer, communityPeerRequest
- ephemeralMessage, updateNew/Edit/DeleteEphemeralMessage
- textDiff, dialogCommunity, dialogPeerCommunity, inputDialogPeerCommunity
- inputNotifyCommunity, notifyCommunity, messageActionChangeCommunity
- inputReplyToEphemeralMessage, chatInviteJoinResultWebView
- inputAiComposeToneSingleUse, botCommand.ephemeral flag

New high-level methods:
- communities: create_community, get_joined_communities,
  toggle_community_peer_link, approve_community_peer_link,
  approve_all_community_peer_links, get_community_peer_link_requests,
  ban_community_participant, toggle_community_collapsed,
  get_community_participant_chats
- ephemeral: send_ephemeral_message, delete_ephemeral_message,
  get_ephemeral_callback_answer, report_ephemeral_message
- messages: translate_rich_message, compose_rich_message_with_ai,
  request_chat_join_web_view

ChatPrivileges/ChatPermissions: add can_manage_linked_peers
Added docs/source/releases/ with individual RST pages for every version
bump (v2.0.107 through v2.3.1) and wired the section into the Sphinx
toctree via docs/source/index.rst.
…essage

Layer 228 made ephemeral_receiver_bot_id a required positional field in
the SendMessage TL constructor. Regular sends pass 0 (no ephemeral target).
- user: ID 0x31774388 → 0xb1b8cc83, add linked_community_id (flags2.21)
- updateBotStarsSubscription#6c0d8e23: add missing update type
- messages.chatInviteJoinResultWebView: ID 0x2f51c337 → 0x61ca29d3, webview → query_id
- messages.composedRichMessageWithAI#4c4537c8: replace old composedMessageWithAI
- messages.translatedRichMessage#4203998f: add missing type
- communities.create: add hidden flag (flags.1)
- Chat, User: expose linked_community_id in high-level types
- create_community(): add hidden parameter
…ost flags

- save_file: parallel multi-part upload when use_experimental_upload_boost=True
- Client.__init__: add use_experimental_upload_boost and use_experimental_download_boost
  flags so boost can be enabled once at client level instead of per-call
- download_media, message.download: default to None so client-level flag is respected
- get_file: falls back to self.use_experimental_download_boost when not passed explicitly
When the TCP handler is closed, invoke() retried immediately while
the restart was still pending, burning through all retries before
the session came back up. Now waits on is_started before each retry.

Closes #18
Community IDs use a separate ID space (no -100 prefix) and are not
cached by resolve_peer, causing COMMUNITY_ID_INVALID errors. Build the
InputChannel from the joined-communities list instead. Document the ID
format in the peer-id FAQ.
t.me domain placed on serverHold by registry over OFAC compliance
requirements (2026-07-14). Telegram updated help.getConfig on prod/test
servers to use telegram.me as me_url_prefix; mirror that here until t.me
resolves again.
…chema

Both were missing from the layer 228 schema despite being referenced by
downstream Bot API additions.
Wraps the existing messages.getSavedHistory/getSavedDialogs/
readSavedHistory/deleteSavedHistory and channels.updatePaidMessagesPrice
raw functions with get_monoforum_history, get_monoforum_dialogs,
read_monoforum_history, delete_monoforum_history and
toggle_direct_messages.
edit_ephemeral_message_text, _caption, _media and _reply_markup wrap
ephemeral.editMessage, mirroring the Bot API's split edit endpoints.

Also reorders the v2.4.0 release notes to follow the standard section
order (Layer Updates -> New Features -> Bug Fixes -> Build) and folds
the stray Python 3.13/3.14 note into Build.
@null-nick
null-nick merged commit 4724785 into main Jul 14, 2026
19 checks passed
null-nick added a commit that referenced this pull request Jul 14, 2026
Layer 228, Communities, Monoforum, Ephemeral edit methods, Rich Messages, Guard Bot, and more.

Layer Updates
- Updated API schema through layers 221 -> 228.
- Added ephemeral.editMessage and updateEphemeralBotCallbackQuery to the TL schema (missing from upstream layer 228 dump).

Communities
- New communities.* namespace with 10 methods, including add_chat_to_community and get_joined_communities.
- Documented the separate community ID space (no -100 prefix) in the FAQ.

Monoforum / Direct Messages
- New methods: toggle_direct_messages, get_monoforum_dialogs, get_monoforum_history, read_monoforum_history, delete_monoforum_history.

Ephemeral Messages
- New ephemeral.* namespace: send/delete/report/get_callback_answer.
- New edit methods: edit_ephemeral_message_text, _caption, _media, _reply_markup.

Rich Messages (Bot API 10.1)
- New types: RichMessage, RichText, RichBlock, InputRichMessage, PollLink.
- New methods: send_rich_message, send_rich_message_draft, translate_rich_message, compose_rich_message_with_ai, request_chat_join_web_view.

Guard Bot & Join Request Queries
- set_chat_guard_bot, answer_guard_bot_query, answer_chat_join_request_query, send_chat_join_request_web_app.

Streaming Text
- send_streaming_text.

Bot & Browser Settings
- get/edit_bot_access_settings, confirm_bot_connection, get/update_web_browser_settings, toggle/delete_web_browser_exception(s).

User & Chat
- New User/Chat fields (color, profile_color, linked_community_id, monoforum, etc.), new PeerColor type, ChatPrivileges additions.

Styled Keyboards
- InlineKeyboardButton/KeyboardButton style parameter, new KeyboardButtonStyle enum.

Bug Fixes
- Session reconnect deadlock fixed.
- account.* namespace corrected for web browser methods and confirm_bot_connection.
- Fixed message_thread_id, EmojiStatusUntil AttributeError, PeerID invalid.
- Fixed messages.chatInviteJoinResultWebView TL ID/schema.
- Fixed messages.composedRichMessageWithAI TL ID/schema.
- Fixed TypeError on send_message from missing ephemeral_receiver_bot_id.

Build
- Migrated scrape-errors CI to uv.
- docs.json regenerated for layers 225, 227, 228.
- invoke() now has a generic return type.
- Fixed async/asyncio compatibility for Python 3.13 & 3.14.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants