[ 
https://issues.apache.org/jira/browse/THRIFT-5511?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5511:
-------------------------------
    Labels:   (was: breaking)

> 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
>            Priority: Major
>             Fix For: 0.17.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> 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#issuecomment-788307265], 
> which has a really great potential to lead the developer into a false 
> security, believing what the IDE tells, that values in some cases are not 
> null - but what it really should say is "{_}I did not analyze this code so I 
> cannot safely tell anything{_}".
> Hence, we should have better support for it.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to