瀏覽代碼

Minor typing consistency

tags/2.0.0
Rocketsoup 1 月之前
父節點
當前提交
659bb7a4fe

+ 1
- 1
rocketbot/cogs/basecog.py 查看文件

203
 		else:
203
 		else:
204
 			context.last_warned = datetime.now()
204
 			context.last_warned = datetime.now()
205
 
205
 
206
-	def record_warnings(self, members: list):
206
+	def record_warnings(self, members: list[Member]):
207
 		"""
207
 		"""
208
 		Records that mods have been warned about some members and do not need to
208
 		Records that mods have been warned about some members and do not need to
209
 		be warned about them again for a short while.
209
 		be warned about them again for a short while.

+ 2
- 1
rocketbot/cogs/gamescog.py 查看文件

1
 import math
1
 import math
2
 import random
2
 import random
3
+from typing import Any
3
 
4
 
4
 from discord import Interaction, UnfurledMediaItem
5
 from discord import Interaction, UnfurledMediaItem
5
 from discord.app_commands import Range, command, guild_only
6
 from discord.app_commands import Range, command, guild_only
149
 		container = Container(section, accent_color=0xff0000)
150
 		container = Container(section, accent_color=0xff0000)
150
 		self.add_item(container)
151
 		self.add_item(container)
151
 
152
 
152
-def listed_items(items: list) -> str:
153
+def listed_items(items: list[Any]) -> str:
153
 	if len(items) == 0:
154
 	if len(items) == 0:
154
 		return 'nothing'
155
 		return 'nothing'
155
 	if len(items) == 1:
156
 	if len(items) == 1:

+ 7
- 6
rocketbot/cogs/joinraidcog.py 查看文件

3
 """
3
 """
4
 import weakref
4
 import weakref
5
 from datetime import datetime, timedelta
5
 from datetime import datetime, timedelta
6
+from typing import Optional
6
 
7
 
7
 from discord import Guild, Member
8
 from discord import Guild, Member
8
 from discord.ext.commands import Cog
9
 from discord.ext.commands import Cog
17
 	"""
18
 	"""
18
 	Data about a join raid.
19
 	Data about a join raid.
19
 	"""
20
 	"""
20
-	def __init__(self, join_members: list):
21
-		self.join_members = list(join_members)
22
-		self.kicked_members = set()
23
-		self.banned_members = set()
24
-		self.warning_message_ref = None
21
+	def __init__(self, join_members: list[Member]):
22
+		self.join_members: list[Member] = list(join_members)
23
+		self.kicked_members: set[Member] = set()
24
+		self.banned_members: set[Member] = set()
25
+		self.warning_message_ref: Optional[weakref.ReferenceType[BotMessage]] = None
25
 
26
 
26
 	def last_join_time(self) -> datetime:
27
 	def last_join_time(self) -> datetime:
27
 		"""Returns when the most recent member join was, in UTC"""
28
 		"""Returns when the most recent member join was, in UTC"""
82
 		guild: Guild = bot_message.guild
83
 		guild: Guild = bot_message.guild
83
 		raid: JoinRaidContext = bot_message.context
84
 		raid: JoinRaidContext = bot_message.context
84
 		if reaction.emoji == CONFIG['kick_emoji']:
85
 		if reaction.emoji == CONFIG['kick_emoji']:
85
-			to_kick = set(raid.join_members) - raid.kicked_members
86
+			to_kick: set[Member] = set(raid.join_members) - raid.kicked_members
86
 			for member in to_kick:
87
 			for member in to_kick:
87
 				await member.kick(
88
 				await member.kick(
88
 					reason=f'Rocketbot: Part of join raid. Kicked by {reacted_by.name}.')
89
 					reason=f'Rocketbot: Part of join raid. Kicked by {reacted_by.name}.')

+ 3
- 3
rocketbot/cogs/logcog.py 查看文件

5
 import re
5
 import re
6
 from collections.abc import Sequence
6
 from collections.abc import Sequence
7
 from datetime import datetime, timedelta, timezone
7
 from datetime import datetime, timedelta, timezone
8
-from typing import Callable, Optional, Tuple, Union
8
+from typing import Any, Callable, Optional, Union
9
 
9
 
10
 from discord import (
10
 from discord import (
11
 	AuditLogAction,
11
 	AuditLogAction,
854
 		"""
854
 		"""
855
 		return f'**{user.name}** ({user.display_name} {user.id})'
855
 		return f'**{user.name}** ({user.display_name} {user.id})'
856
 
856
 
857
-	def __diff(self, a: str, b: str) -> Tuple[str, str]:
857
+	def __diff(self, a: str, b: str) -> tuple[str, str]:
858
 		# URLs don't work well in the diffs. Replace them with private use characters, one per unique URL.
858
 		# URLs don't work well in the diffs. Replace them with private use characters, one per unique URL.
859
 		preserved_sequences = []
859
 		preserved_sequences = []
860
 		def sub_token(match: re.Match) -> str:
860
 		def sub_token(match: re.Match) -> str:
916
 
916
 
917
 		return markdown_a, markdown_b
917
 		return markdown_a, markdown_b
918
 
918
 
919
-	def __groupby(self, a_list: list, grouper: Callable[[any], any]) -> dict:
919
+	def __groupby(self, a_list: list[Any], grouper: Callable[[Any], Any]) -> dict:
920
 		"""itertools.groupby just less annoying"""
920
 		"""itertools.groupby just less annoying"""
921
 		d = {}
921
 		d = {}
922
 		for elem in a_list:
922
 		for elem in a_list:

+ 5
- 5
rocketbot/cogs/patterncog.py 查看文件

31
 	actions have been carried out.
31
 	actions have been carried out.
32
 	"""
32
 	"""
33
 	def __init__(self, message: Message, statement: PatternStatement):
33
 	def __init__(self, message: Message, statement: PatternStatement):
34
-		self.message = message
35
-		self.statement = statement
36
-		self.is_deleted = False
37
-		self.is_kicked = False
38
-		self.is_banned = False
34
+		self.message: Message = message
35
+		self.statement: PatternStatement = statement
36
+		self.is_deleted: bool = False
37
+		self.is_kicked: bool = False
38
+		self.is_banned: bool = False
39
 
39
 
40
 async def pattern_name_autocomplete(interaction: Interaction, current: str) -> list[Choice[str]]:
40
 async def pattern_name_autocomplete(interaction: Interaction, current: str) -> list[Choice[str]]:
41
 	choices: list[Choice[str]] = []
41
 	choices: list[Choice[str]] = []

+ 5
- 5
rocketbot/cogsetting.py 查看文件

3
 """
3
 """
4
 
4
 
5
 from datetime import timedelta
5
 from datetime import timedelta
6
-from typing import TYPE_CHECKING, Any, Literal, Optional, Type, Union
6
+from typing import TYPE_CHECKING, Any, Literal, Optional, Union
7
 
7
 
8
 from discord import Interaction, Permissions
8
 from discord import Interaction, Permissions
9
 from discord.app_commands import Range, Transform, describe
9
 from discord.app_commands import Range, Transform, describe
25
 else:
25
 else:
26
 	BaseCog = 'BaseCog'
26
 	BaseCog = 'BaseCog'
27
 
27
 
28
-def describe_type(datatype: Type) -> str:
28
+def describe_type(datatype: type) -> str:
29
 	if datatype is int:
29
 	if datatype is int:
30
 		return 'integer'
30
 		return 'integer'
31
 	if datatype is float:
31
 	if datatype is float:
54
 
54
 
55
 	def __init__(self,
55
 	def __init__(self,
56
 			name: str,
56
 			name: str,
57
-			datatype: Optional[Type],
57
+			datatype: Optional[type],
58
 			default_value: Any,
58
 			default_value: Any,
59
 			brief: Optional[str] = None,
59
 			brief: Optional[str] = None,
60
 			description: Optional[str] = None,
60
 			description: Optional[str] = None,
66
 		----------
66
 		----------
67
 		name: str
67
 		name: str
68
 			Setting identifier. Must follow variable naming conventions.
68
 			Setting identifier. Must follow variable naming conventions.
69
-		datatype: Optional[Type]
69
+		datatype: Optional[type]
70
 		    Datatype of the setting. E.g. int, float, str
70
 		    Datatype of the setting. E.g. int, float, str
71
 		default_value: Any
71
 		default_value: Any
72
 			Value to use if a guild has not yet configured one.
72
 			Value to use if a guild has not yet configured one.
86
 		  	Set of allowed values. None if unconstrained.
86
 		  	Set of allowed values. None if unconstrained.
87
 		"""
87
 		"""
88
 		self.name: str = name
88
 		self.name: str = name
89
-		self.datatype: Type = datatype
89
+		self.datatype: type = datatype
90
 		self.default_value = default_value
90
 		self.default_value = default_value
91
 		self.brief: Optional[str] = brief
91
 		self.brief: Optional[str] = brief
92
 		self.description: str = description or ''  # Can't be None
92
 		self.description: str = description or ''  # Can't be None

+ 2
- 2
rocketbot/utils.py 查看文件

5
 import sys
5
 import sys
6
 import traceback
6
 import traceback
7
 from datetime import datetime, timedelta
7
 from datetime import datetime, timedelta
8
-from typing import Any, Optional, Type, Union
8
+from typing import Any, Optional, Union
9
 
9
 
10
 import discord
10
 import discord
11
 from discord import Guild, Interaction, Permissions
11
 from discord import Guild, Interaction, Permissions
121
 			return member
121
 			return member
122
 	return None
122
 	return None
123
 
123
 
124
-def bot_log(guild: Optional[Guild], cog_class: Optional[Type], message: Any) -> None:
124
+def bot_log(guild: Optional[Guild], cog_class: Optional[type], message: Any) -> None:
125
 	"""Logs a message to stdout with time, cog, and guild info."""
125
 	"""Logs a message to stdout with time, cog, and guild info."""
126
 	now: datetime = datetime.now() # local
126
 	now: datetime = datetime.now() # local
127
 	s = f'[{now.strftime("%Y-%m-%dT%H:%M:%S")}|'
127
 	s = f'[{now.strftime("%Y-%m-%dT%H:%M:%S")}|'

Loading…
取消
儲存