mirror of
https://github.com/pyrogram/pyrogram
synced 2025-08-29 13:27:47 +00:00
Fix errors and warnings when using Pyrogram async with Python <3.5.3
This commit is contained in:
parent
ac4714c0dd
commit
ee1f6e2c9f
@ -447,7 +447,8 @@ class Client(Methods, BaseClient):
|
||||
Raises:
|
||||
RPCError: In case of a Telegram RPC error.
|
||||
"""
|
||||
run = asyncio.get_event_loop().run_until_complete
|
||||
loop = asyncio.get_event_loop()
|
||||
run = loop.run_until_complete
|
||||
|
||||
run(self.start())
|
||||
|
||||
@ -460,6 +461,8 @@ class Client(Methods, BaseClient):
|
||||
if self.is_started:
|
||||
run(self.stop())
|
||||
|
||||
loop.close()
|
||||
|
||||
return coroutine
|
||||
|
||||
def add_handler(self, handler: Handler, group: int = 0):
|
||||
|
@ -19,7 +19,6 @@
|
||||
from typing import Union, List
|
||||
|
||||
from pyrogram.api import functions, types
|
||||
|
||||
from ...ext import BaseClient
|
||||
|
||||
|
||||
@ -45,14 +44,19 @@ class ArchiveChats(BaseClient):
|
||||
if not isinstance(chat_ids, list):
|
||||
chat_ids = [chat_ids]
|
||||
|
||||
folder_peers = []
|
||||
|
||||
for chat in chat_ids:
|
||||
folder_peers.append(
|
||||
types.InputFolderPeer(
|
||||
peer=await self.resolve_peer(chat),
|
||||
folder_id=1
|
||||
)
|
||||
)
|
||||
|
||||
await self.send(
|
||||
functions.folders.EditPeerFolders(
|
||||
folder_peers=[
|
||||
types.InputFolderPeer(
|
||||
peer=await self.resolve_peer(chat),
|
||||
folder_id=1
|
||||
) for chat in chat_ids
|
||||
]
|
||||
folder_peers=folder_peers
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from string import ascii_lowercase
|
||||
from typing import Union, AsyncGenerator, Optional
|
||||
from typing import Union, Generator, Optional
|
||||
|
||||
import pyrogram
|
||||
from async_generator import async_generator, yield_
|
||||
@ -47,7 +47,7 @@ class IterChatMembers(BaseClient):
|
||||
limit: int = 0,
|
||||
query: str = "",
|
||||
filter: str = Filters.ALL
|
||||
) -> Optional[AsyncGenerator["pyrogram.ChatMember", None]]:
|
||||
) -> Optional[Generator["pyrogram.ChatMember", None, None]]:
|
||||
"""Iterate through the members of a chat sequentially.
|
||||
|
||||
This convenience method does the same as repeatedly calling :meth:`~Client.get_chat_members` in a loop, thus saving you
|
||||
|
@ -16,7 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import AsyncGenerator, Optional
|
||||
from typing import Generator, Optional
|
||||
|
||||
import pyrogram
|
||||
from async_generator import async_generator, yield_
|
||||
@ -30,7 +30,7 @@ class IterDialogs(BaseClient):
|
||||
self,
|
||||
limit: int = 0,
|
||||
offset_date: int = None
|
||||
) -> Optional[AsyncGenerator["pyrogram.Dialog", None]]:
|
||||
) -> Optional[Generator["pyrogram.Dialog", None, None]]:
|
||||
"""Iterate through a user's dialogs sequentially.
|
||||
|
||||
This convenience method does the same as repeatedly calling :meth:`~Client.get_dialogs` in a loop, thus saving
|
||||
|
@ -19,7 +19,6 @@
|
||||
from typing import Union, List
|
||||
|
||||
from pyrogram.api import functions, types
|
||||
|
||||
from ...ext import BaseClient
|
||||
|
||||
|
||||
@ -45,14 +44,19 @@ class UnarchiveChats(BaseClient):
|
||||
if not isinstance(chat_ids, list):
|
||||
chat_ids = [chat_ids]
|
||||
|
||||
folder_peers = []
|
||||
|
||||
for chat in chat_ids:
|
||||
folder_peers.append(
|
||||
types.InputFolderPeer(
|
||||
peer=await self.resolve_peer(chat),
|
||||
folder_id=0
|
||||
)
|
||||
)
|
||||
|
||||
await self.send(
|
||||
functions.folders.EditPeerFolders(
|
||||
folder_peers=[
|
||||
types.InputFolderPeer(
|
||||
peer=await self.resolve_peer(chat),
|
||||
folder_id=0
|
||||
) for chat in chat_ids
|
||||
]
|
||||
folder_peers=folder_peers
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import Union, Optional, AsyncGenerator
|
||||
from typing import Union, Optional, Generator
|
||||
|
||||
import pyrogram
|
||||
from async_generator import async_generator, yield_
|
||||
@ -34,7 +34,7 @@ class IterHistory(BaseClient):
|
||||
offset_id: int = 0,
|
||||
offset_date: int = 0,
|
||||
reverse: bool = False
|
||||
) -> Optional[AsyncGenerator["pyrogram.Message", None]]:
|
||||
) -> Optional[Generator["pyrogram.Message", None, None]]:
|
||||
"""Iterate through a chat history sequentially.
|
||||
|
||||
This convenience method does the same as repeatedly calling :meth:`~Client.get_history` in a loop, thus saving
|
||||
|
@ -16,7 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Pyrogram. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import Union, AsyncGenerator, Optional
|
||||
from typing import Union, Generator, Optional
|
||||
|
||||
import pyrogram
|
||||
from async_generator import async_generator, yield_
|
||||
@ -31,7 +31,7 @@ class IterProfilePhotos(BaseClient):
|
||||
chat_id: Union[int, str],
|
||||
offset: int = 0,
|
||||
limit: int = 0,
|
||||
) -> Optional[AsyncGenerator["pyrogram.Message", None]]:
|
||||
) -> Optional[Generator["pyrogram.Message", None, None]]:
|
||||
"""Iterate through a chat or a user profile photos sequentially.
|
||||
|
||||
This convenience method does the same as repeatedly calling :meth:`~Client.get_profile_photos` in a loop, thus
|
||||
|
Loading…
x
Reference in New Issue
Block a user