Skip to content

Commit 7da0f7c

Browse files
committed
Use Sequence type hints over List for args
1 parent aa834e0 commit 7da0f7c

34 files changed

+234
-220
lines changed

slack_bolt/adapter/aws_lambda/handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import base64
22
import logging
3-
from typing import List, Dict, Any
3+
from typing import Dict, Any, Sequence
44

55
from slack_bolt.adapter.aws_lambda.internals import _first_value
66
from slack_bolt.adapter.aws_lambda.lazy_listener_runner import LambdaLazyListenerRunner
@@ -78,7 +78,7 @@ def to_bolt_request(event) -> BoltRequest:
7878
body = event.get("body", "")
7979
if event["isBase64Encoded"]:
8080
body = base64.b64decode(body).decode("utf-8")
81-
cookies: List[str] = event.get("cookies", [])
81+
cookies: Sequence[str] = event.get("cookies", [])
8282
headers = event.get("headers", {})
8383
headers["cookie"] = cookies
8484
return BoltRequest(

slack_bolt/adapter/aws_lambda/internals.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from typing import Dict, List, Optional
1+
from typing import Dict, Optional, Sequence
22

33

4-
def _first_value(query: Dict[str, List[str]], name: str) -> Optional[str]:
4+
def _first_value(query: Dict[str, Sequence[str]], name: str) -> Optional[str]:
55
if query:
66
values = query.get(name, [])
77
if values and len(values) > 0:

slack_bolt/app/app.py

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import os
55
from concurrent.futures.thread import ThreadPoolExecutor
66
from http.server import SimpleHTTPRequestHandler, HTTPServer
7-
from typing import List, Union, Pattern, Callable, Dict, Optional
7+
from typing import List, Union, Pattern, Callable, Dict, Optional, Sequence
88

99
from slack_sdk.errors import SlackApiError
1010
from slack_sdk.oauth.installation_store import InstallationStore
@@ -374,13 +374,13 @@ def step(
374374
self,
375375
callback_id: Union[str, Pattern, WorkflowStep],
376376
edit: Optional[
377-
Union[Callable[..., Optional[BoltResponse]], Listener, List[Callable]]
377+
Union[Callable[..., Optional[BoltResponse]], Listener, Sequence[Callable]]
378378
] = None,
379379
save: Optional[
380-
Union[Callable[..., Optional[BoltResponse]], Listener, List[Callable]]
380+
Union[Callable[..., Optional[BoltResponse]], Listener, Sequence[Callable]]
381381
] = None,
382382
execute: Optional[
383-
Union[Callable[..., Optional[BoltResponse]], Listener, List[Callable]]
383+
Union[Callable[..., Optional[BoltResponse]], Listener, Sequence[Callable]]
384384
] = None,
385385
):
386386
"""Registers a new Workflow Step listener"""
@@ -417,8 +417,8 @@ def error(
417417
def event(
418418
self,
419419
event: Union[str, Pattern, Dict[str, str]],
420-
matchers: Optional[List[Callable[..., bool]]] = None,
421-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
420+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
421+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
422422
) -> Optional[Callable[..., Optional[BoltResponse]]]:
423423
"""Registers a new event listener.
424424
@@ -440,14 +440,14 @@ def __call__(*args, **kwargs):
440440
def message(
441441
self,
442442
keyword: Union[str, Pattern],
443-
matchers: Optional[List[Callable[..., bool]]] = None,
444-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
443+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
444+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
445445
) -> Optional[Callable[..., Optional[BoltResponse]]]:
446446
"""Registers a new message event listener.
447447
Check the #event method's docstring for details.
448448
"""
449-
matchers = matchers if matchers else []
450-
middleware = middleware if middleware else []
449+
matchers = list(matchers) if matchers else []
450+
middleware = list(middleware) if middleware else []
451451

452452
def __call__(*args, **kwargs):
453453
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -467,8 +467,8 @@ def __call__(*args, **kwargs):
467467
def command(
468468
self,
469469
command: Union[str, Pattern],
470-
matchers: Optional[List[Callable[..., bool]]] = None,
471-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
470+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
471+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
472472
) -> Optional[Callable[..., Optional[BoltResponse]]]:
473473
"""Registers a new slash command listener.
474474
@@ -493,8 +493,8 @@ def __call__(*args, **kwargs):
493493
def shortcut(
494494
self,
495495
constraints: Union[str, Pattern, Dict[str, Union[str, Pattern]]],
496-
matchers: Optional[List[Callable[..., bool]]] = None,
497-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
496+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
497+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
498498
) -> Optional[Callable[..., Optional[BoltResponse]]]:
499499
"""Registers a new shortcut listener.
500500
@@ -516,8 +516,8 @@ def __call__(*args, **kwargs):
516516
def global_shortcut(
517517
self,
518518
callback_id: Union[str, Pattern],
519-
matchers: Optional[List[Callable[..., bool]]] = None,
520-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
519+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
520+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
521521
) -> Optional[Callable[..., Optional[BoltResponse]]]:
522522
"""Registers a new global shortcut listener."""
523523

@@ -533,8 +533,8 @@ def __call__(*args, **kwargs):
533533
def message_shortcut(
534534
self,
535535
callback_id: Union[str, Pattern],
536-
matchers: Optional[List[Callable[..., bool]]] = None,
537-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
536+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
537+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
538538
) -> Optional[Callable[..., Optional[BoltResponse]]]:
539539
"""Registers a new message shortcut listener."""
540540

@@ -553,8 +553,8 @@ def __call__(*args, **kwargs):
553553
def action(
554554
self,
555555
constraints: Union[str, Pattern, Dict[str, Union[str, Pattern]]],
556-
matchers: Optional[List[Callable[..., bool]]] = None,
557-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
556+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
557+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
558558
) -> Optional[Callable[..., Optional[BoltResponse]]]:
559559
"""Registers a new action listener.
560560
@@ -576,8 +576,8 @@ def __call__(*args, **kwargs):
576576
def block_action(
577577
self,
578578
constraints: Union[str, Pattern, Dict[str, Union[str, Pattern]]],
579-
matchers: Optional[List[Callable[..., bool]]] = None,
580-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
579+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
580+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
581581
) -> Optional[Callable[..., Optional[BoltResponse]]]:
582582
"""Registers a new block_actions listener."""
583583

@@ -593,8 +593,8 @@ def __call__(*args, **kwargs):
593593
def attachment_action(
594594
self,
595595
callback_id: Union[str, Pattern],
596-
matchers: Optional[List[Callable[..., bool]]] = None,
597-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
596+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
597+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
598598
) -> Optional[Callable[..., Optional[BoltResponse]]]:
599599
"""Registers a new interactive_message listener."""
600600

@@ -610,8 +610,8 @@ def __call__(*args, **kwargs):
610610
def dialog_submission(
611611
self,
612612
callback_id: Union[str, Pattern],
613-
matchers: Optional[List[Callable[..., bool]]] = None,
614-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
613+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
614+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
615615
) -> Optional[Callable[..., Optional[BoltResponse]]]:
616616
"""Registers a new dialog_submission listener."""
617617

@@ -627,8 +627,8 @@ def __call__(*args, **kwargs):
627627
def dialog_cancellation(
628628
self,
629629
callback_id: Union[str, Pattern],
630-
matchers: Optional[List[Callable[..., bool]]] = None,
631-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
630+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
631+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
632632
) -> Optional[Callable[..., Optional[BoltResponse]]]:
633633
"""Registers a new dialog_cancellation listener."""
634634

@@ -647,8 +647,8 @@ def __call__(*args, **kwargs):
647647
def view(
648648
self,
649649
constraints: Union[str, Pattern, Dict[str, Union[str, Pattern]]],
650-
matchers: Optional[List[Callable[..., bool]]] = None,
651-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
650+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
651+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
652652
) -> Optional[Callable[..., Optional[BoltResponse]]]:
653653
"""Registers a new view submission/closed event listener.
654654
@@ -670,8 +670,8 @@ def __call__(*args, **kwargs):
670670
def view_submission(
671671
self,
672672
constraints: Union[str, Pattern],
673-
matchers: Optional[List[Callable[..., bool]]] = None,
674-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
673+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
674+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
675675
) -> Optional[Callable[..., Optional[BoltResponse]]]:
676676
"""Registers a new view_submission listener."""
677677

@@ -687,8 +687,8 @@ def __call__(*args, **kwargs):
687687
def view_closed(
688688
self,
689689
constraints: Union[str, Pattern],
690-
matchers: Optional[List[Callable[..., bool]]] = None,
691-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
690+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
691+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
692692
) -> Optional[Callable[..., Optional[BoltResponse]]]:
693693
"""Registers a new view_closed listener."""
694694

@@ -707,8 +707,8 @@ def __call__(*args, **kwargs):
707707
def options(
708708
self,
709709
constraints: Union[str, Pattern, Dict[str, Union[str, Pattern]]],
710-
matchers: Optional[List[Callable[..., bool]]] = None,
711-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
710+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
711+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
712712
) -> Optional[Callable[..., Optional[BoltResponse]]]:
713713
"""Registers a new options listener.
714714
@@ -730,8 +730,8 @@ def __call__(*args, **kwargs):
730730
def block_suggestion(
731731
self,
732732
action_id: Union[str, Pattern],
733-
matchers: Optional[List[Callable[..., bool]]] = None,
734-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
733+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
734+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
735735
) -> Optional[Callable[..., Optional[BoltResponse]]]:
736736
"""Registers a new block_suggestion listener."""
737737

@@ -747,8 +747,8 @@ def __call__(*args, **kwargs):
747747
def dialog_suggestion(
748748
self,
749749
callback_id: Union[str, Pattern],
750-
matchers: Optional[List[Callable[..., bool]]] = None,
751-
middleware: Optional[List[Union[Callable, Middleware]]] = None,
750+
matchers: Optional[Sequence[Callable[..., bool]]] = None,
751+
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
752752
) -> Optional[Callable[..., Optional[BoltResponse]]]:
753753
"""Registers a new dialog_submission listener."""
754754

@@ -771,7 +771,7 @@ def _init_context(self, req: BoltRequest):
771771
@staticmethod
772772
def _to_listener_functions(
773773
kwargs: dict,
774-
) -> Optional[List[Callable[..., Optional[BoltResponse]]]]:
774+
) -> Optional[Sequence[Callable[..., Optional[BoltResponse]]]]:
775775
if kwargs:
776776
functions = [kwargs["ack"]]
777777
for sub in kwargs["lazy"]:
@@ -781,10 +781,10 @@ def _to_listener_functions(
781781

782782
def _register_listener(
783783
self,
784-
functions: List[Callable[..., Optional[BoltResponse]]],
784+
functions: Sequence[Callable[..., Optional[BoltResponse]]],
785785
primary_matcher: ListenerMatcher,
786-
matchers: Optional[List[Callable[..., bool]]],
787-
middleware: Optional[List[Union[Callable, Middleware]]],
786+
matchers: Optional[Sequence[Callable[..., bool]]],
787+
middleware: Optional[Sequence[Union[Callable, Middleware]]],
788788
auto_acknowledgement: bool = False,
789789
) -> Optional[Callable[..., Optional[BoltResponse]]]:
790790
value_to_return = None
@@ -893,7 +893,7 @@ def _send_bolt_response(self, bolt_resp: BoltResponse):
893893
def _send_response(
894894
self,
895895
status: int,
896-
headers: Dict[str, List[str]],
896+
headers: Dict[str, Sequence[str]],
897897
body: Union[str, dict] = "",
898898
):
899899
self.send_response(status)

0 commit comments

Comments
 (0)