Skip to content

Merge master into UsedAssemblyReferences#40181

Merged
AlekseyTs merged 280 commits intodotnet:features/UsedAssemblyReferencesfrom
AlekseyTs:UsedAssemblyReferences
Dec 6, 2019
Merged

Merge master into UsedAssemblyReferences#40181
AlekseyTs merged 280 commits intodotnet:features/UsedAssemblyReferencesfrom
AlekseyTs:UsedAssemblyReferences

Conversation

@AlekseyTs
Copy link
Copy Markdown
Contributor

No description provided.

jasonmalinowski and others added 24 commits December 3, 2019 15:53
… symbols

This wasn't necessary when we had wrapped symbols, since it was the
wrapper that had the annotation. Now that we are removing wrappers
we need to implement it directly.
The compiler merged support for top-level symbol nullability in
dotnet#39498, so we can now delete our
own wrappers that were performing the same thing. This is a mostly
mechanical change.

For places where we were calling LookupSymbols or ClassifyConversion,
those places previously called .WithoutNullability() since the compiler
API would have thrown if we gave it our wrappers, but the APIs had
otherwise no way to pass top-leve nullability. That was an accepted
oversight at the time, and the belief is passing in the full symbol
will generally be more correct.
In the deepest of ironies, the extension methods we had to wrap
top-level nullability was implicitly hiding a potential null reference.
Removing the extension methods is now flagging this, so this fixes it
up. The handling isn't ideal: if we don't have a Task<T> we won't
necessarily wrap, but that's not something really worth going out of
our way to support -- most code doesn't.
This clarifies why we are stripping the nullability, and replaces it
with the "not null" instead of "oblivious" which generates to the same
code but is a bit more correct if something else tried to operate on
the type symbol.
…ctly

We weren't ensuring the the tuple elements had top-level nullability
if we inferred the pattern was itself using nullable.
* Refactoring

* Refactoring

* Refactoring

* Feedback

* Misc feedback

* Use ValueTask instead of custom task caching
…wrappers

Remove the nullable wrappers from the Workspaces layer
Enable nullability checking in more of our collection types
…203.17 (dotnet#40133)

- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.19603.17
* Make finding checksum async
* Clean up TryRunCodeAnalysisRemoteAsync
After CI image was updated with 16.4 Preview 5 some REPL tests started
failing consistently. dotnet#40160
Skip failing C# REPL integration tests.
@AlekseyTs AlekseyTs requested review from a team as code owners December 5, 2019 23:10
@AlekseyTs AlekseyTs requested a review from a team December 5, 2019 23:10
@AlekseyTs AlekseyTs merged commit 992e8aa into dotnet:features/UsedAssemblyReferences Dec 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.