Skip to content

Commit f717771

Browse files
committed
Refactor type hints to use built-in types for TypedDicts and collections
Signed-off-by: DavidOsipov <[email protected]>
1 parent c81b0e1 commit f717771

File tree

1 file changed

+33
-33
lines changed

1 file changed

+33
-33
lines changed

feldman_vss.py

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -289,20 +289,20 @@
289289
EvidenceEntryDict = TypedDict('EvidenceEntryDict', {
290290
'party_id': int,
291291
'action': str,
292-
'data': Dict[str, Union[int, str, bool]],
292+
'data': dict[str, Union[int, str, bool]],
293293
'timestamp': int
294294
})
295295

296296
ByzantineEvidenceDict = TypedDict('ByzantineEvidenceDict', {
297297
'type': str,
298-
'evidence': List[EvidenceEntryDict],
298+
'evidence': list[EvidenceEntryDict],
299299
'timestamp': int,
300300
'signature': str
301301
})
302302

303303
FieldElement = Union[int, "gmpy2.mpz"] # Integer field elements
304-
SharePoint = Tuple[FieldElement, FieldElement] # (x, y) coordinate
305-
ShareDict = Dict[int, SharePoint] # Maps participant ID to share
304+
SharePoint = tuple[FieldElement, FieldElement] # (x, y) coordinate
305+
ShareDict = dict[int, SharePoint] # Maps participant ID to share
306306
Randomizer = FieldElement # Randomizer values for commitments
307307

308308
InvalidityProofDict = TypedDict('InvalidityProofDict', {
@@ -320,11 +320,11 @@
320320
VerificationSummaryDict = TypedDict('VerificationSummaryDict', {
321321
'total_zero_shares_created': int,
322322
'total_zero_shares_verified': int,
323-
'invalid_shares_detected': Dict[int, List[int]],
323+
'invalid_shares_detected': dict[int, list[int]],
324324
'participants_with_full_verification': int,
325325
'potential_collusion_detected': bool,
326326
'byzantine_parties_excluded': int,
327-
'byzantine_party_ids': List[int]
327+
'byzantine_party_ids': list[int]
328328
})
329329

330330
VerificationDataDict = TypedDict('VerificationDataDict', {
@@ -337,7 +337,7 @@
337337
'hash_based': bool,
338338
'verification_summary': VerificationSummaryDict,
339339
'seed_fingerprint': str,
340-
'verification_proofs': Dict[int, Dict[int, Any]]
340+
'verification_proofs': dict[int, dict[int, Any]]
341341
})
342342

343343
# New TypedDict definitions for more complex return types
@@ -357,26 +357,26 @@
357357
'timestamp': int,
358358
'error_type': str,
359359
'detailed_info': Optional[str],
360-
'share_info': Optional[Dict[str, Any]],
361-
'commitment_info': Optional[Dict[str, Any]]
360+
'share_info': Optional[dict[str, Any]],
361+
'commitment_info': Optional[dict[str, Any]]
362362
})
363363

364364
ByzantineDetectionResultDict = TypedDict('ByzantineDetectionResultDict', {
365365
'is_byzantine': bool,
366366
'failure_count': int,
367367
'total_shares': int,
368368
'failure_rate': float,
369-
'evidence': List[Dict[str, Any]],
370-
'affected_participants': List[int],
369+
'evidence': list[dict[str, Any]],
370+
'affected_participants': list[int],
371371
'timestamp': int
372372
})
373373

374374
DualCommitmentProofDict = TypedDict('DualCommitmentProofDict', {
375-
'feldman_blinding_commitments': List[Union[Tuple[FieldElement, FieldElement], FieldElement]],
376-
'pedersen_blinding_commitments': List[FieldElement],
375+
'feldman_blinding_commitments': list[Union[tuple[FieldElement, FieldElement], FieldElement]],
376+
'pedersen_blinding_commitments': list[FieldElement],
377377
'challenge': int,
378-
'responses': List[int],
379-
'response_randomizers': Optional[List[int]]
378+
'responses': list[int],
379+
'response_randomizers': Optional[list[int]]
380380
})
381381

382382
IntegrationResultDict = TypedDict('IntegrationResultDict', {
@@ -390,35 +390,35 @@
390390
HashFunc = Callable[[bytes], Any]
391391
RedundantExecutorFunc = Callable[..., Any]
392392

393-
HashCommitment = Tuple[FieldElement, Randomizer, Optional[bytes]] # (hash, randomizer, entropy)
394-
CommitmentList = List[HashCommitment] # List of commitments
393+
HashCommitment = tuple[FieldElement, Randomizer, Optional[bytes]] # (hash, randomizer, entropy)
394+
CommitmentList = list[HashCommitment] # List of commitments
395395

396396
ProofDict = TypedDict('ProofDict', {
397-
'blinding_commitments': List[Tuple[FieldElement, FieldElement]],
397+
'blinding_commitments': list[tuple[FieldElement, FieldElement]],
398398
'challenge': FieldElement,
399-
'responses': List[FieldElement],
400-
'commitment_randomizers': List[FieldElement],
401-
'blinding_randomizers': List[FieldElement],
399+
'responses': list[FieldElement],
400+
'commitment_randomizers': list[FieldElement],
401+
'blinding_randomizers': list[FieldElement],
402402
'timestamp': int
403403
})
404404

405-
VerificationResult = Tuple[bool, Dict[int, bool]]
406-
RefreshingResult = Tuple[ShareDict, CommitmentList, Dict[str, Any]]
405+
VerificationResult = tuple[bool, dict[int, bool]]
406+
RefreshingResult = tuple[ShareDict, CommitmentList, dict[str, Any]]
407407

408-
HashCommitment = Tuple[FieldElement, Randomizer, Optional[bytes]] # (hash, randomizer, entropy)
409-
CommitmentList = List[HashCommitment] # List of commitments
408+
HashCommitment = tuple[FieldElement, Randomizer, Optional[bytes]] # (hash, randomizer, entropy)
409+
CommitmentList = list[HashCommitment] # List of commitments
410410

411411
ProofDict = TypedDict('ProofDict', {
412-
'blinding_commitments': List[Tuple[FieldElement, FieldElement]],
412+
'blinding_commitments': list[tuple[FieldElement, FieldElement]],
413413
'challenge': FieldElement,
414-
'responses': List[FieldElement],
415-
'commitment_randomizers': List[FieldElement],
416-
'blinding_randomizers': List[FieldElement],
414+
'responses': list[FieldElement],
415+
'commitment_randomizers': list[FieldElement],
416+
'blinding_randomizers': list[FieldElement],
417417
'timestamp': int
418418
})
419419

420-
VerificationResult = Tuple[bool, Dict[int, bool]]
421-
RefreshingResult = Tuple[ShareDict, CommitmentList, Dict[str, Any]]
420+
VerificationResult = tuple[bool, dict[int, bool]]
421+
RefreshingResult = tuple[ShareDict, CommitmentList, dict[str, Any]]
422422

423423
# Type Aliases for Complex Types
424424
HashFunc = Callable[[bytes], Any]
@@ -455,7 +455,7 @@ class SerializationError(Exception):
455455
"""
456456
def __init__(self, message: str, detailed_info: Optional[str] = None,
457457
severity: str = "critical", timestamp: Optional[int] = None,
458-
data_format: Optional[str] = None, checksum_info: Optional[Dict[str, Any]] = None):
458+
data_format: Optional[str] = None, checksum_info: Optional[dict[str, Any]] = None):
459459
self.message = message
460460
self.detailed_info = detailed_info
461461
self.severity = severity
@@ -467,7 +467,7 @@ def __init__(self, message: str, detailed_info: Optional[str] = None,
467467
self.checksum_info = checksum_info # Stores checksum validation details if applicable
468468
super().__init__(message)
469469

470-
def get_forensic_data(self, detail_level: Literal['low', 'medium', 'high'] = 'medium') -> Dict[str, Any]:
470+
def get_forensic_data(self, detail_level: Literal['low', 'medium', 'high'] = 'medium') -> dict[str, Any]:
471471
"""
472472
Return all forensic information as a dictionary for logging or analysis
473473

0 commit comments

Comments
 (0)