Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge master to master-vs-deps #34136

Merged
merged 31 commits into from Mar 15, 2019

Conversation

Projects
None yet
8 participants
@dotnet-bot
Copy link
Collaborator

dotnet-bot commented Mar 15, 2019

This is an automatically generated pull request from master into master-vs-deps.

git fetch --all
git checkout merges/master-to-master-vs-deps
git reset --hard upstream/master-vs-deps
git merge upstream/master
# Fix merge conflicts
git commit
git push upstream merges/master-to-master-vs-deps --force

Once all conflicts are resolved and all the tests pass, you are free to merge the pull request.

gafter and others added some commits Mar 8, 2019

Simplify some names in the nullable reference types feature
- Rename `TypeSymbolWithAnnotations` to `TypeWithAnnotations`
- Rename its type field from `TypeSymbol` to `Type`
- Fields of Symbols that are of type `TypeWithAnnotations` that are currently named `Type` would be renamed `TypeWithAnnotations`
Fixes #33736
Add `Type` property in addition to `TypeWithAnnotations`
e.g. `ReturnType`, `ElementType`, etc.
Report nullability for attribute arguments:
- At binding time check both constructor and value arguments for const null
- When arguments are arrays, check for nullable array mismatch
- When arguments are non nullable arrays check for nullable inside initializers
- Add tests
PR Feedback:
- Support supression
- Fix params array of null
- Fix arguments out-of-order
Rewrite analysis as part of nullable walker:
- Add an entry point to nullable walker for attribute analysis
- Implement analyze attribute in the walker
- Remove the analysis from binder_attributes and call nullable walker instead
- Add extra fields to BoundAttribute that are needed for nullable analysis
- Add some extra test scenarios
Fix failing tests:
- Don't do analysis for speculative attributes
- Manually call TryGetThisParameter, rather than MethodThisParameter which can throw
PR Feedback:
- Change MethodThisParameter
- Clean up nullable checks
- Extra tests
PR Feedback:
- Move attribute nullable check to GetAttribute rather than bind attribute
PR Feedback:
- Analyse attributes even when we don't bind a constructor
- Don't assume we have a method symbol in enter parameters
- Add tests for when we don't bind constructor but still want to analyze what we have
PR Feedback:
- fix typos
- make no matching constructors use implicit constructors
Merge pull request #34084 from VSadov/Fix31503
Report nullness warnings for nullable collections in foreach.
Report nullability for attribute arguments: (#33816)
* Report nullability for attribute arguments:
- Add an entry point to nullable walker for attribute analysis
- Implement analyze attribute in the walker
- Update MethodThisParameter to not throw
- Add extra fields to BoundAttribute that are needed for nullable analysis
- Add tests



* PR Feedback:
- Analyse attributes even when we don't bind a constructor

- Add tests for when we don't bind constructor but still want to analyze what we have

* PR Feedback:
- fix typos
- make no matching constructors use implicit constructors

* Replace tabs with spaces

* Fix failing test
Simplify some names in the nullable reference types feature (#33976)
* Simplify some names in the nullable reference types feature
- Rename `TypeSymbolWithAnnotations` to `TypeWithAnnotations`
- Rename its type field from `TypeSymbol` to `Type`
- Fields of Symbols that are of type `TypeWithAnnotations` that are currently named `Type` would be renamed `TypeWithAnnotations`
Fixes #33736

* Further updates

* Fix formatting

* Add `Type` property in addition to `TypeWithAnnotations`
e.g. `ReturnType`, `ElementType`, etc.

* Post-merge fixup.
added partial load mode feature flag and made extract method to handl…
…e partial load mode. (#33779)

* added partial load mode feature flag and made extract method to handle partial load mode.

when solution is opened in VS, currently we do not know when exactly solution is fully loaded or not. solution explorer might show all files but design time build might not have finished yet so, any semantic operation such as extract method or rename might do wrong thing since it doesn't know that it is dealing with missing information (solution).

we are trying to address this issue with partial load mode, new API platform is working on. basically, we are planning to block most of semantic operations (except completion/quickinfo/goto definition/signature help and navigate to. we might include FAR here as well) during partial load state.

also, for things like squiggle, LB and etc, we will disable those until solution is fully loaded since we don't actually know whether those data is correct or not during partial load state.

this change add featureflag so that we can incrementally add support for each features while dogfooding behavior across partners. as a first attempt, extract method is choosen for new experience.

other internal options are added so that we can try alternative behaviors and etc.

test is not added yet.

* fix merge break

* update string

* small tweak.

* PR feedbacks

* updated the title

* updated after discussing about PR

* do even cheaper version of getting text.

addscope doesn't work with description with blank line when scope is nested. wait dialog seems supporting only 2 lines.

until, I figure out this with platform team, making description one line.

* following PR feedback
Add the correct nullable annotations to generated iterator code (#33986)
This is mainly about plumbing through TypeWithAnnotations to the correct point so we can generate the attribute based on it's value.

- Expose the IteratorElementType as a TypeWithAnnotations and rename to IteratorElementTypeWithAnnotations
- Return the annotated type, or a default as needed from the required locations
- Allow state machine field to take a TWA and pass it in via the iterator rewriter
- Fix test

@dotnet-bot dotnet-bot requested review from dotnet/roslyn-compiler as code owners Mar 15, 2019

@dotnet-automerge-bot
Copy link
Collaborator

dotnet-automerge-bot left a comment

Auto-approval

@dotnet-automerge-bot dotnet-automerge-bot merged commit b850a27 into master-vs-deps Mar 15, 2019

1 check passed

license/cla All CLA requirements met.
Details

@dotnet-automerge-bot dotnet-automerge-bot deleted the merges/master-to-master-vs-deps branch Mar 15, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.