Skip to content

Commit

Permalink
Merge pull request #51638 from dotnet/merges/master-to-master-vs-deps
Browse files Browse the repository at this point in the history
Merge master to master-vs-deps
  • Loading branch information
msftbot[bot] committed Mar 3, 2021
2 parents db9617a + 99a6370 commit 8e7913c
Show file tree
Hide file tree
Showing 11 changed files with 247 additions and 192 deletions.
61 changes: 22 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
## Welcome to the .NET Compiler Platform ("Roslyn")
<p align="center">
<img width="450" src="https://user-images.githubusercontent.com/46729679/109719841-17b7dd00-7b5e-11eb-8f5e-87eb2d4d1be9.png" alt="Roslyn logo">
</p>

[![Join the chat at https://gitter.im/dotnet/roslyn](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/dotnet/roslyn?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Chat on Discord](https://discordapp.com/api/guilds/143867839282020352/widget.png)](http://aka.ms/discord-csharp-roslyn)
<h1 align="center">The .NET Compiler Platform</h1>

Roslyn provides open-source C# and Visual Basic compilers with rich code analysis APIs. It enables building code analysis tools with the same APIs that are used by Visual Studio.
<p align="center"><a href="https://gitter.im/dotnet/roslyn?utm_source=badge&amp;utm_medium=badge&amp;utm_campaign=pr-badge&amp;utm_content=badge" rel="nofollow"><img src="https://camo.githubusercontent.com/5dbac0213da25c445bd11f168587c11a200ba153ef3014e8408e462e410169b3/68747470733a2f2f6261646765732e6769747465722e696d2f4a6f696e253230436861742e737667" alt="Join the chat at https://gitter.im/dotnet/roslyn" data-canonical-src="https://badges.gitter.im/Join%20Chat.svg" style="max-width:100%;"></a> <a href="http://aka.ms/discord-csharp-roslyn" rel="nofollow"><img src="https://camo.githubusercontent.com/1ea6a95121cbf4179d411e853681838825392a7f0ae7e6bb1e03f4ea37c8fd5d/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3134333836373833393238323032303335322f7769646765742e706e67" alt="Chat on Discord" data-canonical-src="https://discordapp.com/api/guilds/143867839282020352/widget.png" style="max-width:100%;"></a></p>

Roslyn is the open-source implementation of both the C# and Visual Basic compilers with an API surface for building code analysis tools.

### C# and Visual Basic Language Feature Suggestions

Expand All @@ -11,50 +15,31 @@ If you want to suggest a new feature for the C# or Visual Basic languages go her
- [dotnet/vblang](https://github.com/dotnet/vblang) for VB-specific features
- [dotnet/csharplang](https://github.com/dotnet/csharplang) for features that affect both languages

## Contribute!
### Contributing

Some of the best ways to contribute are to try things out, file bugs, and join in design conversations.
All work on the C# and Visual Basic compiler happens directly on [GitHub](https://github.com/dotnet/roslyn). Both core team members and external contributors send pull requests which go through the same review process.

### Questions
If you are interested in fixing issues and contributing directly to the code base, a great way to get started is to ask some questions on [GitHub Discussions](https://github.com/dotnet/roslyn/discussions)! Then check out our [contributing guide](https://github.com/dotnet/roslyn/blob/master/docs/contributing/Building%2C%20Debugging%2C%20and%20Testing%20on%20Windows.md) which covers the following:

A great way to get started is to ask some questions!
- Start with a question on [discussions](https://github.com/dotnet/roslyn/discussions)
- You can also join in on the design discussions on [gitter](https://gitter.im/dotnet/roslyn) or [discord](http://aka.ms/discord-csharp-roslyn)
- [Coding guidelines](https://github.com/dotnet/roslyn/blob/master/docs/wiki/Contributing-Code.md)
- [The development workflow, including debugging and running tests](https://github.com/dotnet/roslyn/blob/master/docs/contributing/Building%2C%20Debugging%2C%20and%20Testing%20on%20Windows.md)
- [Submitting pull requests](https://github.com/dotnet/roslyn/blob/master/CONTRIBUTING.md)
- Finding a bug to fix in the [IDE](https://aka.ms/roslyn-ide-bugs-help-wanted) or [Compiler](https://aka.ms/roslyn-compiler-bugs-help-wanted)
- Finding a feature to implement in the [IDE](https://aka.ms/roslyn-ide-feature-help-wanted) or [Compiler](https://aka.ms/roslyn-compiler-feature-help-wanted)

### See if your issue is already being worked on! (Add your own votes using the 👍 reaction)
- [IDE](https://aka.ms/roslyn-ide-in-progress)
- [Compiler](https://aka.ms/roslyn-compiler-in-progress)
### Community

### Vote in the Backlog! (Add your own votes using the 👍 reaction)
- [IDE Bugs](https://aka.ms/roslyn-ide-bug-backlog)
- [IDE Features](https://aka.ms/roslyn-ide-feature-backlog)
- [Compiler Bugs](https://aka.ms/roslyn-compiler-bug-backlog)
- [Compiler Features](https://aka.ms/roslyn-compiler-features-backlog)
The Roslyn community can be found on [GitHub Discussions](https://github.com/dotnet/roslyn/discussions), where you can ask questions, voice ideas, and share your projects.

### Find a bug to fix! (Add your own votes using the 👍 reaction)
- First read this guide: [How to Contribute](docs/wiki/Contributing-Code.md)
- [Building, testing and debugging the sources](docs/wiki/Building-Testing-and-Debugging.md)
- Top Bugs
- [IDE](https://aka.ms/roslyn-ide-bugs-help-wanted)
- [Compiler](https://aka.ms/roslyn-compiler-bugs-help-wanted)
To chat with other community members, you can join the Roslyn [Discord](https://discord.com/invite/tGJvv88) or [Gitter](https://gitter.im/dotnet/roslyn).

### Find a feature to implement! (Add your own votes using the 👍 reaction)
- [IDE](https://aka.ms/roslyn-ide-feature-help-wanted)
- [Compiler](https://aka.ms/roslyn-compiler-feature-help-wanted)
Our [Code of Conduct](CODE-OF-CONDUCT.md) applies to all Roslyn community channels and has adopted the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct).

### Documentation

### Getting started with the Roslyn APIs
Visit [Roslyn Architecture Overview](https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/compiler-api-model) to get started with Roslyn’s API’s.

If you want to get started using Roslyn's APIs to analyzer your code take a look at these links:
- [Roslyn Architecture Overview](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/compiler-api-model)
- [Syntax APIs](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/work-with-syntax)
- [Semantic APIs](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/work-with-semantics)
- [Workspace APIs](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/work-with-workspace)
- [Tutorial: Write your first analyzer and code fix](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/tutorials/how-to-write-csharp-analyzer-code-fix)
- Useful Tools
- [Syntax Visualizer Tool](https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/syntax-visualizer)
- [Syntax Quoter Tool](http://roslynquoter.azurewebsites.net)
- Browse the source with the [enhanced source view](http://sourceroslyn.io/)
### NuGet Feeds

**The latest pre-release builds** are available from the following public NuGet feeds:
- [Compiler](https://dev.azure.com/dnceng/public/_packaging?_a=feed&feed=dotnet-tools): `https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json`
Expand Down Expand Up @@ -102,8 +87,6 @@ If you want to get started using Roslyn's APIs to analyzer your code take a look

[//]: # (End current test results)

This [project](CODE-OF-CONDUCT.md) has adopted the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct).

### .NET Foundation

This project is part of the [.NET Foundation](http://www.dotnetfoundation.org/projects) along with other
Expand Down
5 changes: 1 addition & 4 deletions eng/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -417,10 +417,7 @@ function TestUsingRunTests() {
$args += " --include 'Microsoft.CodeAnalysis.Workspaces.MSBuild.UnitTests'"

if ($lspEditor) {
$args += " --testfilter FullyQualifiedName~Roslyn.VisualStudio.IntegrationTests.LanguageServerProtocol|Editor=LanguageServerProtocol"
}
else {
$args += " --testfilter FullyQualifiedName!~Roslyn.VisualStudio.IntegrationTests.LanguageServerProtocol"
$args += " --testfilter Editor=LanguageServerProtocol"
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,14 +89,14 @@ public int CompareTo(MatchResult other, string filterText)
ImmutableArray.Create<Func<MatchResult, string, IComparable>>(
// Prefer the item that matches a longer prefix of the filter text.
(f, s) => f.RoslynCompletionItem.FilterText.GetCaseInsensitivePrefixLength(s),
// If there are "Abc" vs "abc", we should prefer the case typed by user.
(f, s) => f.RoslynCompletionItem.FilterText.GetCaseSensitivePrefixLength(s),
// If the lengths are the same, prefer the one with the higher match priority.
// But only if it's an item that would have been hard selected. We don't want
// to aggressively select an item that was only going to be softly offered.
(f, s) => f.RoslynCompletionItem.Rules.SelectionBehavior == CompletionItemSelectionBehavior.HardSelection
? f.RoslynCompletionItem.Rules.MatchPriority
: MatchPriority.Default,
// If there are "Abc" vs "abc", we should prefer the case typed by user.
(f, s) => f.RoslynCompletionItem.FilterText.GetCaseSensitivePrefixLength(s),
// Prefer Intellicode items.
(f, s) => f.RoslynCompletionItem.IsPreferredItem());
}
Expand Down

0 comments on commit 8e7913c

Please sign in to comment.