Skip to content

Commit 4b11f78

Browse files
committed
Fix post_create_clip and change append to extend
post_create_clip now converts has_delay to string for the http request. Fixes #294 for loops with append changed to List.extend Add Exception rather than bare except
1 parent af38f6a commit 4b11f78

File tree

2 files changed

+25
-52
lines changed

2 files changed

+25
-52
lines changed

docs/changelog.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ Master
55
Massive documentation updates
66

77
- TwitchIO
8-
- Fix bug where # prefixed channel names in initial_channels would not trigger :func:`Client.event_ready``
8+
- Fix bug where # prefixed channel names in initial_channels would not trigger :func:`twitchio.Client.event_ready`
9+
- :func:`User.create_clip` has been fixed by converting bool to string in http request
910

1011
- ext.commands
1112
- :func:`Bot.handle_commands` now also invokes on threads / replies

twitchio/http.py

Lines changed: 23 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
try:
3838
import ujson as json
39-
except:
39+
except Exception:
4040
import json
4141

4242
if TYPE_CHECKING:
@@ -380,8 +380,7 @@ async def get_cheermotes(self, broadcaster_id: str):
380380
async def get_extension_transactions(self, extension_id: str, ids: List[Any] = None):
381381
q = [("extension_id", extension_id)]
382382
if ids:
383-
for id in ids:
384-
q.append(("id", id))
383+
q.extend(("id", id) for id in ids)
385384

386385
return await self.request(Route("GET", "extensions/transactions", "", query=q))
387386

@@ -430,8 +429,7 @@ async def get_rewards(self, token: str, broadcaster_id: int, only_manageable: bo
430429
params = [("broadcaster_id", str(broadcaster_id)), ("only_manageable_rewards", str(only_manageable))]
431430

432431
if ids:
433-
for id in ids:
434-
params.append(("id", str(id)))
432+
params.extend(("id", str(id)) for id in ids)
435433

436434
return await self.request(Route("GET", "channel_points/custom_rewards", query=params, token=token))
437435

@@ -586,7 +584,7 @@ async def post_prediction(
586584

587585
async def post_create_clip(self, token: str, broadcaster_id: int, has_delay=False):
588586
return await self.request(
589-
Route("POST", "clips", query=[("broadcaster_id", broadcaster_id), ("has_delay", has_delay)], token=token),
587+
Route("POST", "clips", query=[("broadcaster_id", broadcaster_id), ("has_delay", str(has_delay))], token=token),
590588
paginate=False,
591589
)
592590

@@ -605,9 +603,7 @@ async def get_clips(
605603
("started_at", started_at.isoformat() if started_at else None),
606604
("ended_at", ended_at.isoformat() if ended_at else None),
607605
]
608-
for id in ids:
609-
q.append(("id", id))
610-
606+
q.extend(("id", id) for id in ids)
611607
query = [x for x in q if x[1] is not None]
612608

613609
return await self.request(Route("GET", "clips", query=query, token=token))
@@ -624,15 +620,13 @@ async def get_entitlements(self, id: str = None, user_id: str = None, game_id: s
624620

625621
async def get_code_status(self, codes: List[str], user_id: int):
626622
q = [("user_id", user_id)]
627-
for code in codes:
628-
q.append(("code", code))
623+
q.extend(("code", code) for code in codes)
629624

630625
return await self.request(Route("GET", "entitlements/codes", query=q))
631626

632627
async def post_redeem_code(self, user_id: int, codes: List[str]):
633628
q = [("user_id", user_id)]
634-
for c in codes:
635-
q.append(("code", c))
629+
q.extend(("code", c) for c in codes)
636630

637631
return await self.request(Route("POST", "entitlements/code", query=q))
638632

@@ -642,11 +636,9 @@ async def get_top_games(self):
642636
async def get_games(self, game_ids: List[Any], game_names: List[str]):
643637
q = []
644638
if game_ids:
645-
for id in game_ids:
646-
q.append(("id", id))
639+
q.extend(("id", id) for id in game_ids)
647640
if game_names:
648-
for name in game_names:
649-
q.append(("name", name))
641+
q.extend(("name", name) for name in game_names)
650642

651643
return await self.request(Route("GET", "games", query=q))
652644

@@ -675,31 +667,27 @@ async def post_automod_check(self, token: str, broadcaster_id: str, *msgs: List[
675667
async def get_channel_ban_unban_events(self, token: str, broadcaster_id: str, user_ids: List[str] = None):
676668
q = [("broadcaster_id", broadcaster_id)]
677669
if user_ids:
678-
for id in user_ids:
679-
q.append(("user_id", id))
670+
q.extend(("user_id", id) for id in user_ids)
680671

681672
return await self.request(Route("GET", "moderation/banned/events", query=q, token=token))
682673

683674
async def get_channel_bans(self, token: str, broadcaster_id: str, user_ids: List[str] = None):
684675
q = [("broadcaster_id", broadcaster_id)]
685676
if user_ids:
686-
for id in user_ids:
687-
q.append(("user_id", id))
677+
q.extend(("user_id", id) for id in user_ids)
688678

689679
return await self.request(Route("GET", "moderation/banned", query=q, token=token))
690680

691681
async def get_channel_moderators(self, token: str, broadcaster_id: str, user_ids: List[str] = None):
692682
q = [("broadcaster_id", broadcaster_id)]
693683
if user_ids:
694-
for id in user_ids:
695-
q.append(("user_id", id))
684+
q.extend(("user_id", id) for id in user_ids)
696685

697686
return await self.request(Route("GET", "moderation/moderators", query=q, token=token))
698687

699688
async def get_channel_mod_events(self, token: str, broadcaster_id: str, user_ids: List[str] = None):
700689
q = [("broadcaster_id", broadcaster_id)]
701-
for id in user_ids:
702-
q.append(("user_id", id))
690+
q.extend(("user_id", id) for id in user_ids)
703691

704692
return await self.request(Route("GET", "moderation/moderators/events", query=q, token=token))
705693

@@ -726,20 +714,13 @@ async def get_streams(
726714
):
727715
q = []
728716
if game_ids:
729-
for g in game_ids:
730-
q.append(("game_id", g))
731-
717+
q.extend(("game_id", g) for g in game_ids)
732718
if user_ids:
733-
for u in user_ids:
734-
q.append(("user_id", u))
735-
719+
q.extend(("user_id", u) for u in user_ids)
736720
if user_logins:
737-
for l in user_logins:
738-
q.append(("user_login", l))
739-
721+
q.extend(("user_login", l) for l in user_logins)
740722
if languages:
741-
for l in languages:
742-
q.append(("language", l))
723+
q.extend(("language", l) for l in languages)
743724

744725
return await self.request(Route("GET", "streams", query=q, token=token))
745726

@@ -807,26 +788,21 @@ async def get_channel_schedule(
807788
]
808789

809790
if segment_ids:
810-
for id in segment_ids:
811-
q.append(
812-
("id", id),
813-
)
791+
q.extend(("id", id) for id in segment_ids)
814792

815793
return await self.request(Route("GET", "schedule", query=q), paginate=False, full_body=True)
816794

817795
async def get_channel_subscriptions(self, token: str, broadcaster_id: str, user_ids: List[str] = None):
818796
q = [("broadcaster_id", broadcaster_id)]
819797
if user_ids:
820-
for u in user_ids:
821-
q.append(("user_id", u))
798+
q.extend(("user_id", u) for u in user_ids)
822799

823800
return await self.request(Route("GET", "subscriptions", query=q, token=token))
824801

825802
async def get_stream_tags(self, tag_ids: List[str] = None):
826803
q = []
827804
if tag_ids:
828-
for u in tag_ids:
829-
q.append(("tag_id", u))
805+
q.extend(("tag_id", u) for u in tag_ids)
830806

831807
return await self.request(Route("GET", "tags/streams", query=q or None))
832808

@@ -862,12 +838,9 @@ async def delete_unfollow_channel(self, token: str, from_id: str, to_id: str):
862838
async def get_users(self, ids: List[int], logins: List[str], token: str = None):
863839
q = []
864840
if ids:
865-
for id in ids:
866-
q.append(("id", id))
867-
841+
q.extend(("id", id) for id in ids)
868842
if logins:
869-
for login in logins:
870-
q.append(("login", login))
843+
q.extend(("login", login) for login in logins)
871844

872845
return await self.request(Route("GET", "users", query=q, token=token))
873846

@@ -928,8 +901,7 @@ async def get_videos(
928901
]
929902

930903
if ids:
931-
for id in ids:
932-
q.append(("id", id))
904+
q.extend(("id", id) for id in ids)
933905

934906
return await self.request(Route("GET", "videos", query=q, token=token))
935907

0 commit comments

Comments
 (0)