Conversation
| <IncludeSymbols>True</IncludeSymbols> | ||
| <CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)..\rulesets\EFCore.ruleset</CodeAnalysisRuleSet> | ||
| <Nullable>enable</Nullable> | ||
| <Feature>nullablePublicOnly</Feature> |
There was a problem hiding this comment.
This will reduce our assembly IL size by not generating nullability attributes for non-public APIs.
See dotnet/aspnetcore#29908 for discussion on the same thing for ASP.NET.
| #nullable disable | ||
| // Need unconstrainted nullable T | ||
| private static T ParameterValueExtractor<T>(QueryContext context, string baseParameterName, IProperty property) | ||
| private static T? ParameterValueExtractor<T>(QueryContext context, string baseParameterName, IProperty property) |
There was a problem hiding this comment.
This may look a bit confusing, but remember that T? means defaultable and not nullable in unconstrained generic contexts. So the code below will still throw NRE if T is a value type and no base parameter is found - as today.
2e6ec9e to
53dcead
Compare
| using System.Linq; | ||
| using JetBrains.Annotations; | ||
|
|
||
| #nullable enable |
There was a problem hiding this comment.
Why this is still here?
everything under src is nullable enable no?
There was a problem hiding this comment.
These Shared files also get included by the tests, where nullability isn't enabled, so that generates a warning... We can remove it after all the tests are enabled for nullability too ![]()
There was a problem hiding this comment.
tests shouldn't be using shared files from src/shared folder. If they need then they should be under /shared in root.
There was a problem hiding this comment.
We can do that change if we care about it enough...
There was a problem hiding this comment.
I find this inconsistent - i.e. test projects using files from src folder through relative path. ![]()
There was a problem hiding this comment.
But adding a whole new folder at the project root... That's tough too... ![]()
No description provided.