mirror of
https://github.com/microsoft/pyright.git
synced 2024-10-05 20:38:25 +03:00
Improved error message for set
invariance type violations. This comes from mypy issue https://github.com/python/mypy/issues/16631.
This commit is contained in:
parent
a5b352d929
commit
9c8a0f1a4a
@ -75,7 +75,7 @@ Most mutable container types also have immutable counterparts.
|
||||
| ----------------- | -------------- |
|
||||
| list | Sequence |
|
||||
| dict | Mapping |
|
||||
| set | AbstractSet |
|
||||
| set | Container |
|
||||
| n/a | tuple |
|
||||
|
||||
|
||||
|
@ -22375,6 +22375,8 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions
|
||||
childDiag.addMessage(Localizer.DiagnosticAddendum.invariantSuggestionDict());
|
||||
} else if (ClassType.isBuiltIn(destType, 'list')) {
|
||||
childDiag.addMessage(Localizer.DiagnosticAddendum.invariantSuggestionList());
|
||||
} else if (ClassType.isBuiltIn(destType, 'set')) {
|
||||
childDiag.addMessage(Localizer.DiagnosticAddendum.invariantSuggestionSet());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -1208,6 +1208,7 @@ export namespace Localizer {
|
||||
new ParameterizedString<{ name: string }>(getRawString('DiagnosticAddendum.initSubclassLocation'));
|
||||
export const invariantSuggestionDict = () => getRawString('DiagnosticAddendum.invariantSuggestionDict');
|
||||
export const invariantSuggestionList = () => getRawString('DiagnosticAddendum.invariantSuggestionList');
|
||||
export const invariantSuggestionSet = () => getRawString('DiagnosticAddendum.invariantSuggestionSet');
|
||||
export const functionTooManyParams = () =>
|
||||
new ParameterizedString<{ expected: number; received: number }>(
|
||||
getRawString('DiagnosticAddendum.functionTooManyParams')
|
||||
|
@ -622,6 +622,7 @@
|
||||
"initSubclassLocation": "The __init_subclass__ method is defined in class \"{name}\"",
|
||||
"invariantSuggestionDict": "Consider switching from \"dict\" to \"Mapping\" which is covariant in the value type",
|
||||
"invariantSuggestionList": "Consider switching from \"list\" to \"Sequence\" which is covariant",
|
||||
"invariantSuggestionSet": "Consider switching from \"set\" to \"Container\" which is covariant",
|
||||
"kwargsParamMissing": "Parameter \"**{paramName}\" has no corresponding parameter",
|
||||
"listAssignmentMismatch": "Type \"{type}\" is incompatible with target list",
|
||||
"literalAssignmentMismatch": "\"{sourceType}\" cannot be assigned to type \"{destType}\"",
|
||||
|
Loading…
Reference in New Issue
Block a user