Skip to content

Commit a11071f

Browse files
authored
New issue template for bugs related to Nullable Reference Types (#17357)
1 parent 00f025c commit a11071f

File tree

1 file changed

+76
-0
lines changed

1 file changed

+76
-0
lines changed
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
name: Nullness-related report
2+
title: 'Nullness issue - ....'
3+
description: Create a report related to nullable reference types handling
4+
labels: [Bug, Needs-Triage,Area-Nullness]
5+
assignees: 'T-Gro'
6+
body:
7+
- type: textarea
8+
attributes:
9+
label: Issue description
10+
description: A concise description of what you're experiencing.
11+
validations:
12+
required: true
13+
- type: markdown
14+
attributes:
15+
value: |
16+
Please check at [Nullable Reference Types RFC](https://github.com/fsharp/fslang-design/blob/main/RFCs/FS-1060-nullable-reference-types.md) if this issue isn't a known limitation, such as missing flow-control analysis after branching constructs like `if` or `while`. Also check at [existing nullness issues](https://github.com/dotnet/fsharp/issues?q=is%3Aissue+label%3AArea-Nullness+) if it hasn't been reported already.
17+
Please provide a succinct description of the issue and choose 1 or more from the following categories of impact
18+
- type: checkboxes
19+
id: categories
20+
attributes:
21+
label: Choose one or more from the following categories of impact
22+
options:
23+
- label: Unexpected nullness warning (false positive in nullness checking, code uses --checknulls and langversion:preview).
24+
- label: Missing nullness warning in a case which can produce nulls (false negative, code uses --checknulls and langversion:preview).
25+
- label: Breaking change related to older `null` constructs in code not using the checknulls switch.
26+
- label: Breaking change related to generic code and explicit type constraints (`null`, `not null`).
27+
- label: Type inference issue (i.e. code worked without type annotations before, and applying the --checknulls enforces type annotations).
28+
- label: C#/F# interop issue related to nullness metadata.
29+
- label: Other (none of the categories above apply).
30+
validations:
31+
required: true
32+
- type: dropdown
33+
id: os
34+
attributes:
35+
label: Operating System
36+
description: What operating system are you running?
37+
options:
38+
- Windows (Default)
39+
- Linux
40+
- macOS
41+
default: 0
42+
validations:
43+
required: true
44+
- type: dropdown
45+
id: dotnet-kind
46+
attributes:
47+
label: What .NET runtime/SDK kind are you seeing the issue on
48+
multiple: false
49+
options:
50+
- .NET SDK (.NET Core, .NET 5+)
51+
- .NET Framework
52+
default: 0
53+
validations:
54+
required: true
55+
- type: input
56+
id: dotnet-version
57+
attributes:
58+
label: .NET Runtime/SDK version
59+
placeholder: e.g. .NET 9 or .NET SDK 9.0.100
60+
- type: textarea
61+
attributes:
62+
label: Reproducible code snippet and actual behavior
63+
description: |
64+
Provide a small code snippet demonstrating the issue. |
65+
If referenced code is needed for the repro and cannot be shared (e.g. a private C# nuget package), try to share at least the metadata annotations from the called type+member as seen in `ilspy.exe`. C# compiler produces attributes like `[Nullable]` and `[NullableContext]`, which is what F# compiler tries to load and interpret in C#/F# interop scenarios.
66+
placeholder: Code snippet
67+
validations:
68+
required: false
69+
- type: textarea
70+
attributes:
71+
label: Possible workarounds
72+
description: |
73+
Are there any language constructs (typically pattern matching, library constructs, Null/NonNull active patterns, explicit type annotations) allowing the same logic be expressed differently in order to mitigate the experienced nullness issue?
74+
placeholder: Possible workaround
75+
validations:
76+
required: false

0 commit comments

Comments
 (0)