-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Merge 'main' into 'features/CollectionLiterals' #66625
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
Merged
CyrusNajmabadi
merged 42 commits into
dotnet:features/CollectionLiterals
from
CyrusNajmabadi:mainToCollections
Jan 31, 2023
Merged
Merge 'main' into 'features/CollectionLiterals' #66625
CyrusNajmabadi
merged 42 commits into
dotnet:features/CollectionLiterals
from
CyrusNajmabadi:mainToCollections
Jan 31, 2023
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…h autoproperty" refactoring
* Disable static restore in more locations * Run compilers CI when build scripts change * Include compiler generators in compilers code change check * Remove separate restore in bootstrap build
…merges/release/dev17.5-vs-deps-to-main
Add support for generating destructors in SyntaxGenerator
* InstrumentationState * Rename * Simplify instrumenter construction * Renames * Feedback * Rename DynamicAnalysisInjector
…-deps-to-main Merge release/dev17.5-vs-deps to main
Do not emit 'static' modifier on 'const' field
Remove BCL dependencies from insertion list
…ld-locations-to-same-document Do not restrict field locations to the same document for "Replace with autoproperty" refactoring
…aces Add support for generating explicit-interface members from SyntaxGenerator
* Fix analyzer loading to prefer host This changes the design of our analyzer loading policy to give hosts more control over dependencies. Whenever possible analyzer dependencies will be unified with the compiler host environment where previously we only tried to unify dependencies owned directly by the compiler. This will be achieved by using standard assembly loading practices that give the host first shot at determining an `Assembly` to load for a given `AssemblyName`. For a concrete example of this problem consider some analyzers deploy copies of `System.Memory.dll` in their analyzer folder. That means there are two copies of `System.Memory.dll` in play: the one the compiler deploys and the analyzer copy. The compiler prefers its copy because so exchange types unify to a single place. This won't change the designed behavior for the command line compilers. In those scenarios the compiler is the host and the intent compiler dependencies to be unified (this PR does fix a bug in this area). It will make the implementation more rigorous though. This will potentially change our behavior when loaded in hosts such as Visual Studio. That environment has a much larger set of DLLs that can be loaded into the primary load context. This is important though to ensure propery type / dll unification happens where as today it can result in duplicate types and assemblies. This change also substantially updates our tests. Most of our tests were focused on the default loading strategy (load in place, no shadow copies). That is actually the least common loading strategy. The most common is shadow copy loading. As such I revamped our test suite such that the same set of tests run for all four of our main configurations: - default + .NET Core - default + .NET Framework - shadow + .NET Core - shadow + .NET Framework The results are illuminating. There are more differences between these scenarios than most people, likely, suspect. Later changes may try and unify a few scenarios but for now wanted to mostly document the behavior so it's not accidentally changed. closes dotnet#66104 closes dotnet#60763 https://dev.azure.com/devdiv/DevDiv/_workitems/edit/1692992 Co-authored-by: Charles Stoner <[email protected]> Co-authored-by: Charles Stoner <[email protected]>
* Add general nullable serializer * Add test class * Add a test for nullable options * Add a general Enum serilizer * Combine the type into EditorConfigValueSerilizer * Add serializer for InlineDiagnosticsOptions * Add serializer for Database * Add serializer for BackgroundAnalysisScopeOption * Add serializer for CompilerDiagnosticsScopeOption * Add serializer for InsertBehavior * Add serilizer for PropertyGenerationBehavior * Add serializer for EnterKeyBehavior * Add serializer for SnippetsBehavior * Add serializer for RazorDiagnosticMode * Add serializer for LiveShareDiagnosicMode and NormalDiagnosticMode * When the parsed value itself is null, return true * Onboard all the nullable and Enum type options to test * Onboard a nullable enum case * Add a invalid parse case * Fix format * Fix a typo * Simplify * Use a special way to parse enum to avoid strange case for Enum.Parse(). Compare string ignoring the case * Modify the test to check both upper and lower case for bool? * Add test to cover strange cases in Enum * Add ingnoreCase: true in Enum.Parse * Inline a method * Extract a method * Update comment * Simplify the test * Simplify the nullable serialization by reusing null serialization
Fix generating constraints with implement-abstract-class
Emit `default` constraint on an override when needed.
Moves MS.CA, MS.CA.C#, and MS.CA.VB to use net6.0 instead of netcoreapp3.1
* Enable GeneratedFilesOut for VB
Don't offer suggestion to swap ref-structs/pointers using a tuple
dibarbet
approved these changes
Jan 31, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We need this to get all the CI flakeyness fixes.