Skip to content

Commit fb118f9

Browse files
committed
Support previous arguments for BC #20400
disable_web_page_preview=True -> link_preview_options=LinkPreviewOptions(is_disabled=True) reply_to_message_id=1 -> ReplyParameters(message_id=1)
1 parent 087d5f2 commit fb118f9

File tree

6 files changed

+98
-10
lines changed

6 files changed

+98
-10
lines changed

pyrogram/methods/messages/edit_inline_text.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
# You should have received a copy of the GNU Lesser General Public License
1717
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
1818

19+
import logging
1920
from typing import Optional, List
2021

2122
import pyrogram
@@ -24,6 +25,8 @@
2425
from pyrogram import utils
2526
from .inline_session import get_session
2627

28+
log = logging.getLogger(__name__)
29+
2730

2831
class EditInlineText:
2932
async def edit_inline_text(
@@ -33,7 +36,8 @@ async def edit_inline_text(
3336
parse_mode: Optional["enums.ParseMode"] = None,
3437
entities: List["types.MessageEntity"] = None,
3538
link_preview_options: "types.LinkPreviewOptions" = None,
36-
reply_markup: "types.InlineKeyboardMarkup" = None
39+
reply_markup: "types.InlineKeyboardMarkup" = None,
40+
disable_web_page_preview: bool = None
3741
) -> bool:
3842
"""Edit the text of inline messages.
3943
@@ -78,6 +82,18 @@ async def edit_inline_text(
7882
)
7983
)
8084
"""
85+
if disable_web_page_preview and link_preview_options:
86+
raise ValueError(
87+
"Parameters `disable_web_page_preview` and `link_preview_options` are mutually "
88+
"exclusive."
89+
)
90+
91+
if disable_web_page_preview is not None:
92+
log.warning(
93+
"This property is deprecated. "
94+
"Please use link_preview_options instead"
95+
)
96+
link_preview_options = types.LinkPreviewOptions(is_disabled=disable_web_page_preview)
8197

8298
unpacked = utils.unpack_inline_message_id(inline_message_id)
8399
dc_id = unpacked.dc_id

pyrogram/methods/messages/edit_message_text.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,15 @@
1616
# You should have received a copy of the GNU Lesser General Public License
1717
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
1818

19+
import logging
1920
from datetime import datetime
2021
from typing import Union, List, Optional
2122

2223
import pyrogram
2324
from pyrogram import raw, enums, types, utils
2425

26+
log = logging.getLogger(__name__)
27+
2528

2629
class EditMessageText:
2730
async def edit_message_text(
@@ -33,7 +36,8 @@ async def edit_message_text(
3336
entities: List["types.MessageEntity"] = None,
3437
link_preview_options: "types.LinkPreviewOptions" = None,
3538
reply_markup: "types.InlineKeyboardMarkup" = None,
36-
schedule_date: datetime = None
39+
schedule_date: datetime = None,
40+
disable_web_page_preview: bool = None
3741
) -> "types.Message":
3842
"""Edit the text of messages.
3943
@@ -84,6 +88,18 @@ async def edit_message_text(
8488
)
8589
)
8690
"""
91+
if disable_web_page_preview and link_preview_options:
92+
raise ValueError(
93+
"Parameters `disable_web_page_preview` and `link_preview_options` are mutually "
94+
"exclusive."
95+
)
96+
97+
if disable_web_page_preview is not None:
98+
log.warning(
99+
"This property is deprecated. "
100+
"Please use link_preview_options instead"
101+
)
102+
link_preview_options = types.LinkPreviewOptions(is_disabled=disable_web_page_preview)
87103

88104
r = await self.invoke(
89105
raw.functions.messages.EditMessage(

pyrogram/methods/messages/send_message.py

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,16 @@
1616
# You should have received a copy of the GNU Lesser General Public License
1717
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
1818

19+
import logging
1920
from datetime import datetime
2021
from typing import Union, List, Optional
2122

2223
import pyrogram
2324
from pyrogram import raw, utils, enums, types, errors
2425
from .inline_session import get_session
2526

27+
log = logging.getLogger(__name__)
28+
2629

2730
class SendMessage:
2831
async def send_message(
@@ -43,7 +46,9 @@ async def send_message(
4346
"types.ReplyKeyboardRemove",
4447
"types.ForceReply"
4548
] = None,
46-
schedule_date: datetime = None
49+
schedule_date: datetime = None,
50+
disable_web_page_preview: bool = None,
51+
reply_to_message_id: int = None
4752
) -> "types.Message":
4853
"""Send text messages.
4954
@@ -132,6 +137,31 @@ async def send_message(
132137
[InlineKeyboardButton("Docs", url="https://docs.pyrogram.org")]
133138
]))
134139
"""
140+
if disable_web_page_preview and link_preview_options:
141+
raise ValueError(
142+
"Parameters `disable_web_page_preview` and `link_preview_options` are mutually "
143+
"exclusive."
144+
)
145+
146+
if disable_web_page_preview is not None:
147+
log.warning(
148+
"This property is deprecated. "
149+
"Please use link_preview_options instead"
150+
)
151+
link_preview_options = types.LinkPreviewOptions(is_disabled=disable_web_page_preview)
152+
153+
if reply_to_message_id and reply_parameters:
154+
raise ValueError(
155+
"Parameters `reply_to_message_id` and `reply_parameters` are mutually "
156+
"exclusive."
157+
)
158+
159+
if reply_to_message_id is not None:
160+
log.warning(
161+
"This property is deprecated. "
162+
"Please use reply_parameters instead"
163+
)
164+
reply_parameters = types.ReplyParameters(message_id=reply_to_message_id)
135165

136166
reply_to = await utils.get_reply_head_fm(
137167
self,

pyrogram/types/bots_and_keyboards/callback_query.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,8 @@ async def edit_message_text(
186186
parse_mode: Optional["enums.ParseMode"] = None,
187187
entities: List["types.MessageEntity"] = None,
188188
link_preview_options: "types.LinkPreviewOptions" = None,
189-
reply_markup: "types.InlineKeyboardMarkup" = None
189+
reply_markup: "types.InlineKeyboardMarkup" = None,
190+
disable_web_page_preview: bool = None
190191
) -> Union["types.Message", bool]:
191192
"""Edit the text of messages attached to callback queries.
192193
@@ -224,7 +225,8 @@ async def edit_message_text(
224225
parse_mode=parse_mode,
225226
entities=entities,
226227
link_preview_options=link_preview_options,
227-
reply_markup=reply_markup
228+
reply_markup=reply_markup,
229+
disable_web_page_preview=disable_web_page_preview
228230
)
229231
else:
230232
return await self._client.edit_inline_text(
@@ -233,7 +235,8 @@ async def edit_message_text(
233235
parse_mode=parse_mode,
234236
entities=entities,
235237
link_preview_options=link_preview_options,
236-
reply_markup=reply_markup
238+
reply_markup=reply_markup,
239+
disable_web_page_preview=disable_web_page_preview
237240
)
238241

239242
async def edit_message_caption(

pyrogram/types/input_message_content/input_text_message_content.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,15 @@
1616
# You should have received a copy of the GNU Lesser General Public License
1717
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
1818

19+
import logging
1920
from typing import Optional, List
2021

2122
import pyrogram
2223
from pyrogram import raw, types, utils, enums
2324
from .input_message_content import InputMessageContent
2425

26+
log = logging.getLogger(__name__)
27+
2528

2629
class InputTextMessageContent(InputMessageContent):
2730
"""Content of a text message to be sent as the result of an inline query.
@@ -47,7 +50,21 @@ def __init__(
4750
parse_mode: Optional["enums.ParseMode"] = None,
4851
entities: List["types.MessageEntity"] = None,
4952
link_preview_options: "types.LinkPreviewOptions" = None,
53+
disable_web_page_preview: bool = None
5054
):
55+
if disable_web_page_preview and link_preview_options:
56+
raise ValueError(
57+
"Parameters `disable_web_page_preview` and `link_preview_options` are mutually "
58+
"exclusive."
59+
)
60+
61+
if disable_web_page_preview is not None:
62+
log.warning(
63+
"This property is deprecated. "
64+
"Please use link_preview_options instead"
65+
)
66+
link_preview_options = types.LinkPreviewOptions(is_disabled=disable_web_page_preview)
67+
5168
super().__init__()
5269

5370
self.message_text = message_text

pyrogram/types/messages_and_media/message.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1310,7 +1310,9 @@ async def reply_text(
13101310
"types.ReplyKeyboardRemove",
13111311
"types.ForceReply"
13121312
] = None,
1313-
schedule_date: datetime = None
1313+
schedule_date: datetime = None,
1314+
disable_web_page_preview: bool = None,
1315+
reply_to_message_id: int = None
13141316
) -> "Message":
13151317
"""Bound method *reply_text* of :obj:`~pyrogram.types.Message`.
13161318
@@ -1395,7 +1397,9 @@ async def reply_text(
13951397
business_connection_id=self.business_connection_id,
13961398
reply_parameters=reply_parameters,
13971399
reply_markup=reply_markup,
1398-
schedule_date=schedule_date
1400+
schedule_date=schedule_date,
1401+
disable_web_page_preview=disable_web_page_preview,
1402+
reply_to_message_id=reply_to_message_id
13991403
)
14001404

14011405
reply = reply_text
@@ -3461,7 +3465,8 @@ async def edit_text(
34613465
parse_mode: Optional["enums.ParseMode"] = None,
34623466
entities: List["types.MessageEntity"] = None,
34633467
link_preview_options: "types.LinkPreviewOptions" = None,
3464-
reply_markup: "types.InlineKeyboardMarkup" = None
3468+
reply_markup: "types.InlineKeyboardMarkup" = None,
3469+
disable_web_page_preview: bool = None
34653470
) -> "Message":
34663471
"""Bound method *edit_text* of :obj:`~pyrogram.types.Message`.
34673472
@@ -3513,7 +3518,8 @@ async def edit_text(
35133518
parse_mode=parse_mode,
35143519
entities=entities,
35153520
link_preview_options=link_preview_options,
3516-
reply_markup=reply_markup
3521+
reply_markup=reply_markup,
3522+
disable_web_page_preview=disable_web_page_preview
35173523
)
35183524

35193525
edit = edit_text

0 commit comments

Comments
 (0)