Skip to content

LEGO: Pull request from juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373 to main#684

Open
csigs wants to merge 1 commit intomainfrom
juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373
Open

LEGO: Pull request from juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373 to main#684
csigs wants to merge 1 commit intomainfrom
juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373

Conversation

@csigs
Copy link
Member

@csigs csigs commented Feb 27, 2026

LEGO: Pull request from juno/hb_dd8dbf7b-874d-49f2-9313-853dd6e34f6c_20260227180553373 to main with localized lcls

Copilot AI review requested due to automatic review settings February 27, 2026 18:06
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<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>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<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>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Suggested change
<Val><![CDATA[System.Composition özniteliğine geçiş yapın.{0}]]></Val>
<Val><![CDATA[System.Composition.{0} özniteliğine geçiş yapın]]></Val>

Copilot uses AI. Check for mistakes.
<Str Cat="Text">
<Val><![CDATA[Migrate to System.Composition.{0}]]></Val>
<Tgt Cat="Text" Stat="Loc" Orig="New">
<Val><![CDATA[移轉至 System.Composition。{0}]]></Val>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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".

Suggested change
<Val><![CDATA[移轉至 System.Composition{0}]]></Val>
<Val><![CDATA[移轉至 System.Composition.{0}]]></Val>

Copilot uses AI. Check for mistakes.
<Str Cat="Text">
<Val><![CDATA[Migrate to System.Composition.{0}]]></Val>
<Tgt Cat="Text" Stat="Loc" Orig="New">
<Val><![CDATA[迁移到 System.Composition。{0}]]></Val>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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".

Suggested change
<Val><![CDATA[迁移到 System.Composition{0}]]></Val>
<Val><![CDATA[迁移到 System.Composition.{0}]]></Val>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<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>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<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>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<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>

Copilot uses AI. Check for mistakes.
<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>
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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").

Suggested change
<Val><![CDATA[协定类型 "{0}" 不能分配给成员类型 "{1}"。导入将在运行时失败。]]></Val>
<Val><![CDATA[协定类型 "{0}" 不能分配给成员类型 "{1}"。导入可能在运行时失败。]]></Val>

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants