From b450636336772438e7f79665c06a431eb729ff09 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Thu, 2 Jul 2026 11:45:06 -0700 Subject: [PATCH 1/5] Don't close empty issues...for now (#54625) * Don't close empty issues...for now Removed actions for closing issues with empty descriptions. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- .github/policies/close-issues.yml | 55 ------------------------------- 1 file changed, 55 deletions(-) diff --git a/.github/policies/close-issues.yml b/.github/policies/close-issues.yml index ac54f6004088a..c7a4be4800945 100644 --- a/.github/policies/close-issues.yml +++ b/.github/policies/close-issues.yml @@ -43,58 +43,3 @@ configuration: label: code-of-conduct then: - closeIssue - - - description: Close learn template issues with empty descriptions. (spam) - if: - - payloadType: Issues - - or: - - bodyContains: - pattern: '### Description[\n\r]+\[Enter feedback here\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Escriba sus comentarios aquí\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Tapez vos commentaires ici\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Hier Feedback eingeben\][\n\r]+###' - isRegex: true - - bodyContains: - pattern: '### Description[\n\r]+\[Geri bildiriminizi buraya girin\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Ketikkan umpan balik di sini\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Immetti qui i commenti\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Voer hier feedback in\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Insira comentários aqui\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Введите отзыв здесь\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[اكتب ملاحظاتك هنا\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[在此处输入反馈\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[여기에 피드백 입력\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[フィードバックをこちらに入力してください\][\n\r]+###' - isRegex: True - - bodyContains: - pattern: '### Description[\n\r]+\[Skriv din feedback här\][\n\r]+###' - then: - - addLabel: 'needs-more-info' - - removeLabel: ':watch: Not Triaged' - - addReply: - reply: This issue has been automatically closed due to an empty issue description from the original author. Feel free to reopen it if you have more information that can help us investigate the issue further. - - closeIssue From 052c0cc6cffeb74a8192a09390bc390c84af1150 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Thu, 2 Jul 2026 11:48:35 -0700 Subject: [PATCH 2/5] Update feedback field ID in customer feedback template (#54626) * Update feedback field ID in customer feedback template Changed the ID of the feedback field in the customer feedback template. * Fix wording in customer feedback issue template Updated issue template to use 'Code does not work' instead of 'Code doesn't work'. * Modify user feedback field in issue template Updated user feedback field to include a placeholder. * Update customer feedback issue template Removed placeholder text from the Description field. --- .github/ISSUE_TEMPLATE/z-customer-feedback.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/z-customer-feedback.yml b/.github/ISSUE_TEMPLATE/z-customer-feedback.yml index b2fd5d5d1fd72..2ec6a2b153535 100644 --- a/.github/ISSUE_TEMPLATE/z-customer-feedback.yml +++ b/.github/ISSUE_TEMPLATE/z-customer-feedback.yml @@ -14,7 +14,7 @@ body: label: Type of issue options: - Typo - - Code doesn't work + - Code does not work - Missing information - Outdated article - Thank you @@ -22,7 +22,6 @@ body: validations: required: true - type: textarea - id: feedback validations: required: true attributes: From bec00d94679516446c2767d41442d31802f60a57 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Thu, 2 Jul 2026 16:31:50 -0400 Subject: [PATCH 3/5] Clarify targets for primary constructor (#54629) * Clarify targets for primary constructor Clarify that `AttributeTargets` elment on an attribute must use `Constructor` for the target on a constructor. Note that the article on [instance constructors](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/instance-constructors#primary-constructors) already had that information. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * copilot review comments. --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/csharp/advanced-topics/reflection-and-attributes/index.md | 2 +- docs/csharp/language-reference/attributes/general.md | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/csharp/advanced-topics/reflection-and-attributes/index.md b/docs/csharp/advanced-topics/reflection-and-attributes/index.md index acb6315b87595..b605e1646a177 100644 --- a/docs/csharp/advanced-topics/reflection-and-attributes/index.md +++ b/docs/csharp/advanced-topics/reflection-and-attributes/index.md @@ -133,7 +133,7 @@ The following table shows the list of possible `target` values. | `module` | Current assembly module | | `field` | Field in a class or a struct | | `event` | Event | -| `method` | Method or `get` and `set` property accessors | +| `method` | Method, constructor (including a primary constructor), or `get` and `set` property accessors | | `param` | Method parameters or `set` property accessor parameters | | `property` | Property | | `return` | Return value of a method, property indexer, or `get` property accessor | diff --git a/docs/csharp/language-reference/attributes/general.md b/docs/csharp/language-reference/attributes/general.md index c4bb0f7da9196..6188b222e97be 100644 --- a/docs/csharp/language-reference/attributes/general.md +++ b/docs/csharp/language-reference/attributes/general.md @@ -94,6 +94,7 @@ The `AttributeUsage` attribute determines how a custom attribute class can be us - Module - Field - Event + - Constructor - Method - Parameter - Property @@ -134,6 +135,8 @@ In this case, `NonInheritedAttribute` isn't applied to `DClass` via inheritance. You can also use these keywords to specify where an attribute should be applied. For example, you can use the `field:` specifier to add an attribute to the backing field of an [automatically implemented property](../../programming-guide/classes-and-structs/properties.md#automatically-implemented-properties). Or you can use the `field:`, `property:` or `param:` specifier to apply an attribute to any of the elements generated from a positional record. For an example, see [Positional syntax for property definition](../builtin-types/record.md#positional-syntax-for-property-and-field-definition). +When you apply an attribute to a type with a [primary constructor](../../programming-guide/classes-and-structs/instance-constructors.md#primary-constructors), the attribute is applied to the class. You can specify that it's applied to the constructor by choosing the `method` target, which matches the *Constructor* attribute target. + ## `AsyncMethodBuilder` attribute You add the attribute to a type that can be an async return type. The attribute specifies the type that builds the async method implementation when the specified type is returned from an async method. The `AsyncMethodBuilder` attribute can be applied to a type that: From d6193fd4156d9b0ba3a43236de9eb3a9cb46f551 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Fri, 3 Jul 2026 17:38:07 -0700 Subject: [PATCH 4/5] Ignore C# Devkit cache files (#54630) --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 87aaab5541d5d..bf748e143f612 100644 --- a/.gitignore +++ b/.gitignore @@ -34,6 +34,7 @@ _dependentPackages/ **/.vscode/ .vscode/ !.vscode/extensions.json +*.lscache # Visual Studio 2019 .vs From 993a55def509d18bed75f3ddd03b113c3b75657c Mon Sep 17 00:00:00 2001 From: Stuart Mosquera Date: Mon, 6 Jul 2026 13:04:15 -0300 Subject: [PATCH 5/5] Add link to Raw String literals article (#54641) --- docs/csharp/language-reference/tokens/raw-string.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/csharp/language-reference/tokens/raw-string.md b/docs/csharp/language-reference/tokens/raw-string.md index 3373dc9309e3f..ea655657112e7 100644 --- a/docs/csharp/language-reference/tokens/raw-string.md +++ b/docs/csharp/language-reference/tokens/raw-string.md @@ -77,3 +77,4 @@ The raw string literal's content must not contain a set of contiguous `"` charac - [C# special characters](./index.md) - [C# string interpolation](./interpolated.md) - [String literals (C# language specification)](~/_csharpstandard/standard/lexical-structure.md#6456-string-literals) +- [Raw String literals (C# fundamentals)](../../fundamentals/strings/raw-string-literals.md)