Conversation
There was a problem hiding this comment.
Pull request overview
This pull request adds localized translations for new analyzer diagnostic messages (VSMEF008 through VSMEF012) to the Microsoft.VisualStudio.Composition.Analyzers.dll localization files across 13 languages. These diagnostics cover MEF (Managed Extensibility Framework) import/export validation scenarios including contract type mismatches, ImportMany usage issues, and MEF attribute version enforcement.
Changes:
- Added translations for 5 new diagnostic rules (VSMEF008-VSMEF012) with their associated message formats, titles, and code fix descriptions
- Updated VSMEF008 message in 7 languages (RUS, KOR, JPN, ESN, DEU, CSY, CHT) from "will fail" to "may fail" to match revised English text
- Preserved technical terms, placeholder formatting, and escape sequences (e.g., []5D;) across all translations
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| loc/lcl/TRK/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Turkish translations for VSMEF008-012 diagnostics (180 new lines) |
| loc/lcl/RUS/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Russian translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/PTB/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Portuguese-Brazil translations for VSMEF008-012 diagnostics (180 new lines) |
| loc/lcl/PLK/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Polish translations for VSMEF008-012 diagnostics (180 new lines) |
| loc/lcl/KOR/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Korean translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/JPN/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Japanese translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/ITA/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Italian translations for VSMEF008-012 diagnostics (180 new lines) |
| loc/lcl/FRA/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | French translations for VSMEF008-012 diagnostics (180 new lines) |
| loc/lcl/ESN/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Spanish translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/DEU/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | German translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/CSY/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Czech translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/CHT/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Traditional Chinese translations with updated VSMEF008 message (183 lines including revision history) |
| loc/lcl/CHS/Microsoft.VisualStudio.Composition.Analyzers.dll.lcl | Simplified Chinese translations for VSMEF008-012 diagnostics (180 new lines) |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[O tipo de contrato "{0}" não é atribuível ao tipo de membro "{1}". A importação falhará em runtime.]]></Val> |
There was a problem hiding this comment.
The Portuguese-Brazil translation says "A importação falhará em runtime" (the import will fail) but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA[O tipo de contrato "{0}" não é atribuível ao tipo de membro "{1}". A importação falhará em runtime.]]></Val> | |
| <Val><![CDATA[O tipo de contrato "{0}" não é atribuível ao tipo de membro "{1}". A importação poderá falhar em runtime.]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[Le type de contrat « {0} » n’est pas attribuable au type de membre « {1} ». L’importation échouera lors de l’exécution.]]></Val> |
There was a problem hiding this comment.
The French translation says "L'importation échouera lors de l'exécution" (the import will fail) but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA[Le type de contrat « {0} » n’est pas attribuable au type de membre « {1} ». L’importation échouera lors de l’exécution.]]></Val> | |
| <Val><![CDATA[Le type de contrat « {0} » n’est pas attribuable au type de membre « {1} ». L’importation peut échouer lors de l’exécution.]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[Migrate to System.Composition.{0}]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[System.Composition özniteliğine geçiş yapın.{0}]]></Val> |
There was a problem hiding this comment.
The Turkish translation has an extra period before the placeholder: "System.Composition özniteliğine geçiş yapın.{0}". The English source is "Migrate to System.Composition.{0}" where the placeholder {0} represents the attribute name and should directly follow "System.Composition." without an additional period. This causes incorrect formatting when the attribute name is inserted. It should be "System.Composition.{0}" instead.
| <Val><![CDATA[System.Composition özniteliğine geçiş yapın.{0}]]></Val> | |
| <Val><![CDATA[System.Composition.{0} özniteliğine geçiş yapın]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[Migrate to System.Composition.{0}]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[移轉至 System.Composition。{0}]]></Val> |
There was a problem hiding this comment.
The Traditional Chinese translation has an incorrect period before the placeholder: "移轉至 System.Composition。{0}". The English source is "Migrate to System.Composition.{0}" where the placeholder {0} represents the attribute name and should directly follow "System.Composition." without changing the period to a Chinese full stop. This causes incorrect formatting when the attribute name is inserted, as it would produce something like "System.Composition。ExportAttribute" instead of "System.Composition.ExportAttribute".
| <Val><![CDATA[移轉至 System.Composition。{0}]]></Val> | |
| <Val><![CDATA[移轉至 System.Composition.{0}]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[Migrate to System.Composition.{0}]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[迁移到 System.Composition。{0}]]></Val> |
There was a problem hiding this comment.
The Simplified Chinese translation has an incorrect period before the placeholder: "迁移到 System.Composition。{0}". The English source is "Migrate to System.Composition.{0}" where the placeholder {0} represents the attribute name and should directly follow "System.Composition." without changing the period to a Chinese full stop. This causes incorrect formatting when the attribute name is inserted, as it would produce something like "System.Composition。ExportAttribute" instead of "System.Composition.ExportAttribute".
| <Val><![CDATA[迁移到 System.Composition。{0}]]></Val> | |
| <Val><![CDATA[迁移到 System.Composition.{0}]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA["{0}" sözleşme türü, "{1}" üye türüne atanamaz. İçeri aktarma çalışma zamanında başarısız olur.]]></Val> |
There was a problem hiding this comment.
The Turkish translation says "The import will fail at runtime" but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA["{0}" sözleşme türü, "{1}" üye türüne atanamaz. İçeri aktarma çalışma zamanında başarısız olur.]]></Val> | |
| <Val><![CDATA["{0}" sözleşme türü, "{1}" üye türüne atanamaz. İçeri aktarma çalışma zamanında başarısız olabilir.]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[Typu kontraktu „{0}” nie można przypisać do typu elementu członkowskiego „{1}”. Import zakończy się niepowodzeniem podczas wykonywania.]]></Val> |
There was a problem hiding this comment.
The Polish translation says "Import zakończy się niepowodzeniem podczas wykonywania" (the import will fail) but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA[Typu kontraktu „{0}” nie można przypisać do typu elementu członkowskiego „{1}”. Import zakończy się niepowodzeniem podczas wykonywania.]]></Val> | |
| <Val><![CDATA[Typu kontraktu „{0}” nie można przypisać do typu elementu członkowskiego „{1}”. Import może zakończyć się niepowodzeniem podczas wykonywania.]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[Il tipo di contratto "{0}" non può essere assegnato al tipo di membro "{1}". L'importazione fallirà in fase di esecuzione.]]></Val> |
There was a problem hiding this comment.
The Italian translation says "L'importazione fallirà in fase di esecuzione" (the import will fail) but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA[Il tipo di contratto "{0}" non può essere assegnato al tipo di membro "{1}". L'importazione fallirà in fase di esecuzione.]]></Val> | |
| <Val><![CDATA[Il tipo di contratto "{0}" non può essere assegnato al tipo di membro "{1}". L'importazione potrebbe non riuscire in fase di esecuzione.]]></Val> |
| <Str Cat="Text"> | ||
| <Val><![CDATA[The contract type "{0}" is not assignable to the member type "{1}". The import will fail at runtime.]]></Val> | ||
| <Tgt Cat="Text" Stat="Loc" Orig="New"> | ||
| <Val><![CDATA[协定类型 "{0}" 不能分配给成员类型 "{1}"。导入将在运行时失败。]]></Val> |
There was a problem hiding this comment.
The Simplified Chinese translation says "导入将在运行时失败" (the import will fail) but the English source message says "The import may fail at runtime". This creates an inconsistency with the source language and with other locales (RUS, KOR, JPN, ESN, DEU, CSY, CHT) which correctly use "may fail". The translation should be updated to reflect uncertainty ("may fail") rather than certainty ("will fail").
| <Val><![CDATA[协定类型 "{0}" 不能分配给成员类型 "{1}"。导入将在运行时失败。]]></Val> | |
| <Val><![CDATA[协定类型 "{0}" 不能分配给成员类型 "{1}"。导入可能在运行时失败。]]></Val> |
LEGO: Pull request from juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373 to main with localized lcls