Skip to content

Commit d5e19e6

Browse files
authored
Merge branch 'master' into feature/workspace-symbols-change
2 parents a29c88d + a707c82 commit d5e19e6

File tree

4 files changed

+144
-21
lines changed

4 files changed

+144
-21
lines changed

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ The C# extension is powered by [OmniSharp](https://github.com/OmniSharp/omnishar
2020
* [Documentation](https://code.visualstudio.com/docs/languages/csharp)
2121
* [Video Tutorial compiling with .NET Core](https://channel9.msdn.com/Blogs/dotnet/Get-started-VSCode-Csharp-NET-Core-Windows)
2222

23+
### What's new in 1.17.0
24+
* Added preview Razor (cshtml) language service with support for C# completions and diagnostics.
25+
* Added omnisharp.minFindSymbolsFilterLength setting to configure the number of characters a user must type in for "Go to Symbol in Workspace" command to return any results
26+
* Added a command - "CSharp: Start authoring a new issue on GitHub" to enable the users to file issues on github from within the extension with helpful config information from their system
27+
2328
### What's New in 1.16.2
2429
* Update extension to handle upcoming breaking change to launch.json configurations in VS Code 1.28.
2530
* Fixed launch.json `envFile` option on Windows
@@ -37,7 +42,7 @@ The C# extension is powered by [OmniSharp](https://github.com/OmniSharp/omnishar
3742
* Added `monoPath` option to use the mono installation at the specified path when the `useGlobalMono` is set to "always" or "auto".
3843
* Many other bug fixes!
3944

40-
See our [change log](https://github.com/OmniSharp/omnisharp-vscode/blob/v1.16.0/CHANGELOG.md) for more detail.
45+
See our [change log](https://github.com/OmniSharp/omnisharp-vscode/blob/v1.17.0/CHANGELOG.md) for more detail.
4146

4247
### Supported Operating Systems for Debugging
4348

package-lock.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "csharp",
33
"publisher": "ms-vscode",
4-
"version": "1.17.0-beta7",
4+
"version": "1.17.0",
55
"description": "C# for Visual Studio Code (powered by OmniSharp).",
66
"displayName": "C#",
77
"author": "Microsoft Corporation",
@@ -84,7 +84,7 @@
8484
"strip-bom": "3.0.0",
8585
"tmp": "0.0.33",
8686
"vscode-debugprotocol": "1.6.1",
87-
"vscode-extension-telemetry": "0.0.22",
87+
"vscode-extension-telemetry": "0.1.0",
8888
"yauzl": "2.10.0"
8989
},
9090
"devDependencies": {
@@ -225,8 +225,8 @@
225225
},
226226
{
227227
"description": ".NET Core Debugger (Windows / x64)",
228-
"url": "https://download.visualstudio.microsoft.com/download/pr/32a13c68-a5ba-4b2d-aa59-9b1e883a7535/1f55f9c0c7c2adc8ad2e7c1a1e661be2/coreclr-debug-win7-x64.zip",
229-
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-0/coreclr-debug-win7-x64.zip",
228+
"url": "https://download.visualstudio.microsoft.com/download/pr/90e2038c-960d-4018-924e-30f520f887ab/117523c7024fbf6ffef530b707d7253a/coreclr-debug-win7-x64.zip",
229+
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-1/coreclr-debug-win7-x64.zip",
230230
"installPath": ".debugger",
231231
"platforms": [
232232
"win32"
@@ -238,8 +238,8 @@
238238
},
239239
{
240240
"description": ".NET Core Debugger (macOS / x64)",
241-
"url": "https://download.visualstudio.microsoft.com/download/pr/32a13c68-a5ba-4b2d-aa59-9b1e883a7535/3043fbe9510ddb38fa12cffa16d67a0c/coreclr-debug-osx-x64.zip",
242-
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-0/coreclr-debug-osx-x64.zip",
241+
"url": "https://download.visualstudio.microsoft.com/download/pr/90e2038c-960d-4018-924e-30f520f887ab/2d53db027d1e67b899a7f083800b2bd4/coreclr-debug-osx-x64.zip",
242+
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-1/coreclr-debug-osx-x64.zip",
243243
"installPath": ".debugger",
244244
"platforms": [
245245
"darwin"
@@ -255,8 +255,8 @@
255255
},
256256
{
257257
"description": ".NET Core Debugger (linux / x64)",
258-
"url": "https://download.visualstudio.microsoft.com/download/pr/32a13c68-a5ba-4b2d-aa59-9b1e883a7535/6624e811c688667bc08b7da5817866b8/coreclr-debug-linux-x64.zip",
259-
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-0/coreclr-debug-linux-x64.zip",
258+
"url": "https://download.visualstudio.microsoft.com/download/pr/90e2038c-960d-4018-924e-30f520f887ab/090d7ebd63a3d44b31cb23568b53833d/coreclr-debug-linux-x64.zip",
259+
"fallbackUrl": "https://vsdebugger.blob.core.windows.net/coreclr-debug-1-17-1/coreclr-debug-linux-x64.zip",
260260
"installPath": ".debugger",
261261
"platforms": [
262262
"linux"

test-plan.md

Lines changed: 123 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ The easist way to verify that a project was successfully loaded is to open a .cs
9393
* In a project that uses globbing (.NET Core), use the VS Code file explorer to add a new file next to the csproj. Intellisense/sighelp/etc should be available in the new file
9494
* Add a new file and reference a type in it from a different file. Deleting from disk the file containing the referenced type should produce error messages
9595

96-
#### Razor
96+
#### ASP.NET Core Razor
9797
The Razor experience is available when you open a .cshtml file in a valid OmniSharp project. To setup a test project to verify on you can do:
9898
1. `dotnet new razor`
9999
2. Open `Pages/Index.cshtml`
@@ -103,18 +103,136 @@ The Razor experience is available when you open a .cshtml file in a valid OmniSh
103103
* Completion is available for types that exist in the project (i.e. `Program`)
104104
* Typing `@model DateTime` prompts for completion for the `model` symbol and the `DateTime` symbol.
105105

106-
#### C# Signature Help
106+
##### C# Signature Help
107107
* Typing `@Html.Raw()` prompts for signature help inside of the `()`.
108108

109-
#### C# Diagnostics
109+
##### C# Diagnostics
110110
* Typing `@ThisDoesNotExist` results in an error being created and squiggled in the .cshtml file. NOTE: This error squiggly will be misaligned due to known issues.
111111

112+
##### Known issues:
113+
- Error squiggles may be misaligned due to known issues.
114+
115+
#### Blazor
116+
The Blazor experience is available when you open a .cshtml file in a valid OmniSharp/Blazor project. To setup a test project to verify on you can do:
117+
1. `dotnet new -i Microsoft.AspNetCore.Blazor.Templates`
118+
2. `dotnet new blazor`
119+
3. Open `Pages/Index.cshtml`
120+
121+
##### C# Completion
122+
* Typing `@DateTime.Now` and `@(DateTime.Now)` provides completions throughout typing.
123+
* Completion is available for types that exist in the project (i.e. `Program`)
124+
* Typing `@layout MainLayout` prompts for completion for the `layout` symbol and the `MainLayout` symbol.
125+
126+
##### C# Signature Help
127+
* Typing `@SetParameters()` prompts for signature help inside of the `()`.
128+
129+
##### C# Diagnostics
130+
* When no changes have been performed on `Pages/Index.cshtml`, there are 0 errors.
131+
* Typing `@ThisDoesNotExist` results in an error being created and squiggled in the .cshtml file.
132+
133+
##### Known issues:
134+
- Error squiggles may be misaligned due to known issues.
135+
- There are some errors in the default Blazor project that are known. All errors that read like `Cannot convert method group 'SomeMethodName' to non-delegate type 'object'. Did you intend to invoke the method? [ProjectName]` are expected.
136+
137+
#### Legacy Razor
138+
The Razor experience is degraded (but no errors) when you open a .cshtml file in a valid OmniSharp/Legacy Razor project. To setup a test project to verify on you can do:
139+
1. Open Visual Studio
140+
2. New Project
141+
3. ASP.NET Web Application (.NET Framework)
142+
4. Select MVC
143+
5. OK
144+
6. Open `Views/Home/Index.cshtml`
145+
146+
##### C# Completion / IntelliSense
147+
* Typing `@DateTime.Now` does not result in any C# completion.
148+
* Typing `@{ var x = DateTime.Now; }` does not result in any C# completion.
149+
* Typing `@model` does not result in any Razor directive completion.
150+
151+
##### C# Diagnostics
152+
* There are 0 .cshtml related errors on open.
153+
* Typing `@ThisDoesNotExist` does not result in an error being created.
154+
155+
##### Html Completion
156+
Verifying Html is needed to ensure the Razor experience is still partially enabled.
157+
* Typing `<stron` results in Html completion with an entry for `strong`.
158+
* Typing `<strong>` results in a corresponding `</strong>` being appended
159+
* Hitting enter Typing `@{}` and then hitting enter inbetween the curly braces results in:
160+
```
161+
@{
162+
163+
}
164+
```
165+
166+
#### Razor Project level Information
167+
To verify the project level information for Razor do the following:
168+
1. Verify the `obj/Debug/TheTFMOfTheProject` folder contains a `project.razor.json` file (once the project is restored)
169+
2. Verify the `project.razor.json`'s `Configuration` section is not set to `null`.
170+
171+
Verify each of the test projects above's `project.razor.json` file (ASP.NET Core Razor, Blazor and Legacy Razor) looks something like the following:
172+
173+
##### ASP.NET Core Razor
174+
```JSON
175+
{
176+
"ProjectFilePath": "c:\\Users\\JohnDoe\\Projects\\RazorCoreTestApp\\RazorCoreTestApp.csproj",
177+
"TargetFramework": "netcoreapp2.1",
178+
"TagHelpers": [],
179+
"Configuration": {
180+
"ConfigurationName": "MVC-2.1",
181+
"LanguageVersion": "2.1",
182+
"Extensions": [
183+
{
184+
"ExtensionName": "MVC-2.1"
185+
}
186+
]
187+
}
188+
}
189+
```
190+
191+
##### Blazor
192+
```JSON
193+
{
194+
"ProjectFilePath": "c:\\Users\\JohnDoe\\Projects\\BlazorTestApp\\BlazorTestApp.csproj",
195+
"TargetFramework": "netstandard2.0",
196+
"TagHelpers": [],
197+
"Configuration": {
198+
"ConfigurationName": "Blazor-0.1",
199+
"LanguageVersion": "1337.1337",
200+
"Extensions": [
201+
{
202+
"ExtensionName": "Blazor.AngleSharp-0.1"
203+
},
204+
{
205+
"ExtensionName": "Blazor-0.1"
206+
}
207+
]
208+
}
209+
}
210+
```
211+
212+
##### Legacy Razor
213+
```JSON
214+
{
215+
"ProjectFilePath": "c:\\Users\\JohnDoe\\Projects\\LegacyRazorTestApp\\LegacyRazorTestApp.csproj",
216+
"TargetFramework": "v4.6.1",
217+
"TagHelpers": [],
218+
"Configuration": {
219+
"ConfigurationName": "UnsupportedRazor",
220+
"LanguageVersion": "1.0",
221+
"Extensions": [
222+
{
223+
"ExtensionName": "UnsupportedRazorExtension"
224+
}
225+
]
226+
}
227+
}
228+
```
229+
112230
#### Razor Options
113231

114232
##### razor.disabled
115-
This option can be set to `true` to disable the above described C# experience.
233+
This option can be set to `true` to disable the above described C# experiences.
116234

117-
##### razor.languageServer.trace
235+
##### razor.trace
118236
This option should always be displayed in the View --> Output --> Razor Log window
119237
This option can be set to any of the following values:
120238
* "Off" - Will launch Razor Language server with its log output set to 'Off'. The header in the Razor Log output window will be shown but no other content will be shown.

0 commit comments

Comments
 (0)