Jens Geyer created THRIFT-5511:
----------------------------------
Summary: Full support for the new net6 "nullability" semantics
Key: THRIFT-5511
URL: https://issues.apache.org/jira/browse/THRIFT-5511
Project: Thrift
Issue Type: Improvement
Components: netstd - Compiler
Affects Versions: 0.16.0
Environment: [net6 / C# 10|https://stackoverflow.com/a/247623/499466]
Reporter: Jens Geyer
Assignee: Jens Geyer
This is sort of an follow-up to THRIFT-5479.
The initially chosen solution was to [add an {{<autogenerate>}} tag
|https://docs.microsoft.com/en-us/dotnet/csharp/nullable-references#nullable-contexts]to
each generated C# source file, because otherwise the analysis would drop a
whole lot of messages onto the user. One major reason behind this design was
that it does not break compatibility.
It turned out that that actually may do more harm than good, because of [this
issue|https://github.com/dotnet/roslyn/issues/44063], which has a really great
potential to lead the developer into a false security, believing the IDE that
values in some cases are not null - what it really should say is "I did not
analyze this code so I cannot tell".
Hence, we should have better support for it.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)