Skip to content

Commit aea2d4d

Browse files
authored
Feature: deprecate message_type in favor of message_types (#32)
Client-side deprecation of `message_type`, see: aleph-im/pyaleph#444
1 parent 5d66bf7 commit aea2d4d

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

src/aleph/sdk/client.py

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import queue
66
import threading
77
import time
8+
import warnings
89
from datetime import datetime
910
from io import BytesIO
1011
from pathlib import Path
@@ -721,6 +722,7 @@ async def get_messages(
721722
pagination: int = 200,
722723
page: int = 1,
723724
message_type: Optional[MessageType] = None,
725+
message_types: Optional[List[MessageType]] = None,
724726
content_types: Optional[Iterable[str]] = None,
725727
content_keys: Optional[Iterable[str]] = None,
726728
refs: Optional[Iterable[str]] = None,
@@ -739,7 +741,8 @@ async def get_messages(
739741
740742
:param pagination: Number of items to fetch (Default: 200)
741743
:param page: Page to fetch, begins at 1 (Default: 1)
742-
:param message_type: Filter by message type, can be "AGGREGATE", "POST", "PROGRAM", "VM", "STORE" or "FORGET"
744+
:param message_type: [DEPRECATED] Filter by message type, can be "AGGREGATE", "POST", "PROGRAM", "VM", "STORE" or "FORGET"
745+
:param message_types: Filter by message types, can be any combination of "AGGREGATE", "POST", "PROGRAM", "VM", "STORE" or "FORGET"
743746
:param content_types: Filter by content type
744747
:param content_keys: Filter by content key
745748
:param refs: If set, only fetch posts that reference these hashes (in the "refs" field)
@@ -765,7 +768,13 @@ async def get_messages(
765768
params: Dict[str, Any] = dict(pagination=pagination, page=page)
766769

767770
if message_type is not None:
771+
warnings.warn(
772+
"The message_type parameter is deprecated, please use message_types instead.",
773+
DeprecationWarning,
774+
)
768775
params["msgType"] = message_type.value
776+
if message_types is not None:
777+
params["msgTypes"] = ",".join([t.value for t in message_types])
769778
if content_types is not None:
770779
params["contentTypes"] = ",".join(content_types)
771780
if content_keys is not None:
@@ -863,6 +872,7 @@ async def get_message(
863872
async def watch_messages(
864873
self,
865874
message_type: Optional[MessageType] = None,
875+
message_types: Optional[Iterable[MessageType]] = None,
866876
content_types: Optional[Iterable[str]] = None,
867877
refs: Optional[Iterable[str]] = None,
868878
addresses: Optional[Iterable[str]] = None,
@@ -876,7 +886,8 @@ async def watch_messages(
876886
"""
877887
Iterate over current and future matching messages asynchronously.
878888
879-
:param message_type: Type of message to watch
889+
:param message_type: [DEPRECATED] Type of message to watch
890+
:param message_types: Types of messages to watch
880891
:param content_types: Content types to watch
881892
:param refs: References to watch
882893
:param addresses: Addresses to watch
@@ -890,7 +901,13 @@ async def watch_messages(
890901
params: Dict[str, Any] = dict()
891902

892903
if message_type is not None:
904+
warnings.warn(
905+
"The message_type parameter is deprecated, please use message_types instead.",
906+
DeprecationWarning,
907+
)
893908
params["msgType"] = message_type.value
909+
if message_types is not None:
910+
params["msgTypes"] = ",".join([t.value for t in message_types])
894911
if content_types is not None:
895912
params["contentTypes"] = ",".join(content_types)
896913
if refs is not None:

0 commit comments

Comments
 (0)