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.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*[Video Tutorial compiling with .NET Core](https://channel9.msdn.com/Blogs/dotnet/Get-started-with-VS-Code-using-CSharp-and-NET-Core)
19
20
20
-
* Go to Definition (<kbd>F12</kbd>) can now show a C#-like view for APIs that do not appear in your project's source code. ([#165](https://github.com/OmniSharp/omnisharp-vscode/issues/165))
21
+
### What's New in 1.5
22
+
23
+
#### Initial support for C# 7
24
+
25
+
* New C# 7 features like pattern-matching and tuples are now supported in VS Code editor. Note: To use tuples, you will need a reference to [this NuGet package](https://www.nuget.org/packages/System.ValueTuple).
26
+
27
+
#### Initial support for CSProj .NET Core Projects
28
+
29
+
* With the .NET Core SDK moving to embrace MSBuild and .csproj files over project.json, we've made sure the C# extension can handle the new format. This support is preliminary and there are still several features coming to smooth out the experience.
30
+
31
+
#### Broader OS Support for C# Code Editing
32
+
33
+
* This release dramatically changes the runtime that OmniSharp runs on, which allows it to be run an many more operating systems than before:
34
+
35
+
* Windows: OmniSharp runs on the installed .NET Framework. In addition, OmniSharp now runs on 32-bit Windows!
36
+
* macOS/Linux: OmniSharp runs on a custom embedded Mono runtime. Note: Mono does not need to be installed on the system for this to work.
21
37
22
38
#### Debugger
23
39
24
-
* Applications can now be launched without attaching the debugger with <kbd>Ctrl+F5</kbd>.
25
-
* Support for new "embedded portable PDB" debug format.
26
-
* The launch.json file generator now automatically sets the option to show a console window by default (`"internalConsoleOptions": "openOnSessionStart"`).
40
+
* Remote debugging is now supported for attach by using the `pipeTransport` launch.json option.
41
+
* Resolved issue with setting breakpoints when there are multple files with the same name (e.g. two 'Program.cs' files).
42
+
43
+
#### New Dependency Acquisition System
44
+
45
+
* This improves the acquisition and reliability of platform-specific OmniSharp and debugger dependencies.
27
46
28
47
#### New Settings
29
48
30
49
Several new settings have been added:
31
50
32
-
*`csharp.suppressDotnetInstallWarning`: Suppress the warning that the .NET CLI is not on the path.
33
-
*`omnisharp.autoStart`: Used to control whether the OmniSharp server will be automatically launched when a folder containing a project or solution is opened. The default value for this setting is `true`.
34
-
*`omnisharp.path`: Can be used to specify a file path to a different OmniSharp server than the one that will be used by default. Previously, this option was controlled by `csharp.omnisharp`, which is now deprecated.
35
-
*`omnisharp.useMono`: When `omnisharp.path` is specified, this controls whether OmniSharp will be launched with Mono or not. Previously, this option was controlled by `csharp.omnisharpUsesMono`, wich is now deprecated.
36
-
*`omnisharp.loggingLevel`: Used to control the level of logging output from the OmniSharp server. Legal values are `"default"` or `"verbose"`.
51
+
*`csharp.suppressDotnetRestoreNotification`: Suppress the notification window to perform a 'dotnet restore' when dependencies can't be resolved.
52
+
*`omnisharp.projectLoadTimeout`: The time Visual Studio Code will wait for the OmniSharp server to start. Time is expressed in seconds. _(Contributed by [@wjk](https://github.com/wjk))_
37
53
38
54
#### Colorizer
39
55
40
-
There have been several fixes to the colorizer grammar resulting in much smoother syntax highlighting, with better support for C# 6.0. Special thanks go to [@ivanz](https://github.com/ivanz) and [@seraku24](https://github.com/seraku24) for contributing most of the fixes below!
41
-
42
-
* Expression-bodied members ([#638](https://github.com/OmniSharp/omnisharp-vscode/issues/638), [#403](https://github.com/OmniSharp/omnisharp-vscode/issues/403), [#679](https://github.com/OmniSharp/omnisharp-vscode/issues/679), [#249](https://github.com/OmniSharp/omnisharp-vscode/issues/249))
* Using directives and nested namespaces ([#282](https://github.com/OmniSharp/omnisharp-vscode/issues/282), [#381](https://github.com/OmniSharp/omnisharp-vscode/issues/381))
45
-
* Field and local variable type names ([#717](https://github.com/OmniSharp/omnisharp-vscode/issues/717), [#719](https://github.com/OmniSharp/omnisharp-vscode/issues/719))
46
-
* Multi-dimensional arrays in parameters ([#657](https://github.com/OmniSharp/omnisharp-vscode/issues/657))
56
+
* A new unit testing framework for testing the colorizer grammer ([#742](https://github.com/OmniSharp/omnisharp-vscode/pull/742)) _(Contributed by [@ivanz](https://github.com/ivanz))_
57
+
* Single-line comments after preprocessor directives ([#762](https://github.com/OmniSharp/omnisharp-vscode/pull/762)) _(Contributed by [@damieng](https://github.com/damieng))_
47
58
48
59
#### Performance
49
60
50
-
* Improvements have been made in processing diagnostics (i.e. errors and warnings).
51
-
* Full solution diagnostics are no longer computed for large solutions (e.g. solutions with >1000 files across all projects). However, diagnostics are still computed for open files.
61
+
* Major improvements have been made to editor performance. The communication with the OmniSharp server has been rewritten to allow long-running operations (such as gathering all errors and warnings) to queue while high priority operations (such as text buffer changes) run serially. ([#902](https://github.com/OmniSharp/omnisharp-vscode/pull/902)) _(Thanks to [@david-driscoll](https://github.com/david-driscoll) for his help with this change!)_
52
62
53
63
#### Other Improvements
54
64
55
-
* Multibyte characters are now properly encoded, resulting in proper display in tooltips and fixing crashes in the OmniSharp server. ([#4](https://github.com/OmniSharp/omnisharp-vscode/4), [#140](https://github.com/OmniSharp/omnisharp-vscode/140), [#427](https://github.com/OmniSharp/omnisharp-vscode/427))
56
-
* Will no longer attempt to install a CoreCLR flavor of OmniSharp on Ubuntu versions other than 14 and 16. ([#655](https://github.com/OmniSharp/omnisharp-vscode/issues/655))
57
-
* Opening a solution or csproj no longer results in '0 projects' displayed in the status bar. ([#723](https://github.com/OmniSharp/omnisharp-vscode/issues/723))
65
+
* The prompt to generate assets for building and debugging can now be dismissed for a workspace permanently. In addition, a new `dotnet.generateAssets` command has been added to force regeneration of the assets. ([#635](https://github.com/OmniSharp/omnisharp-vscode/issues/635))
66
+
* Fix "running forever" issue for folder with multple .NET Core projects. ([#735](https://github.com/OmniSharp/omnisharp-vscode/issues/735)) _(Contributed by [@eamodio](https://github.com/eamodio))_
67
+
*`ctor` snippet is now more consistent with other code snippets. ([#849](https://github.com/OmniSharp/omnisharp-vscode/pull/849)) _(Contibuted by [@Eibx](https://github.com/Eibx))_
68
+
* Ampersands in file paths are now properly escaped on Windows ([#909](https://github.com/OmniSharp/omnisharp-vscode/pull/909)) _(Contributed by [@filipw](https://github.com/filipw))_
58
69
59
-
### Supported Operating Systems
70
+
### Supported Operating Systems for Debugging
71
+
72
+
* Currently, the C# debugger supports the following operatings systems:
60
73
61
-
* Currently, the C# extension supports the following operatings systems:
62
74
* Windows (64-bit only)
63
75
* macOS
64
-
* Ubuntu 14.04 / Linux Mint 17
65
-
* Ubuntu 16.04
76
+
* Ubuntu 14.04 / Linux Mint 17 / Linux Mint 18 / Elementary OS 0.3
77
+
* Ubuntu 16.04 / Elementary OS 0.4
66
78
* Debian 8.2
67
79
* CentOS 7.1 / Oracle Linux 7
68
80
* Red Hat Enterprise Linux (RHEL)
@@ -81,13 +93,18 @@ First install:
81
93
* Node.js (newer than 4.3.1)
82
94
* Npm (newer 2.14.12)
83
95
96
+
In case you get a *node-gyp* error [follow the instrutions here](https://github.com/nodejs/node-gyp/blob/master/README.md) to fix it. The *vscode-textmate* package pulls in a native node dependency and those instructions will set up the node build tool which deals with those.
97
+
84
98
To **run and develop** do the following:
85
99
86
100
* Run `npm i`
101
+
* Run `npm run compile`
87
102
* Open in Visual Studio Code (`code .`)
88
103
**Optional:* run `tsc -w`, make code changes (on Windows, try `start node ".\node_modules\typescript\bin\tsc -w"`)
89
104
* Press <kbd>F5</kbd> to debug
90
105
106
+
To **test** do the following: `npm run test`
107
+
91
108
### License
92
-
The Microsoft C# extension is subject to [these license terms](RuntimeLicenses/license.txt).
93
-
The source code to this extension is available on [https://github.com/OmniSharp/omnisharp-vscode](https://github.com/OmniSharp/omnisharp-vscode) and licensed under the [MIT license](LICENSE.txt).
109
+
The Microsoft C# extension is subject to [these license terms](RuntimeLicenses/license.txt).
110
+
The source code to this extension is available on [https://github.com/OmniSharp/omnisharp-vscode](https://github.com/OmniSharp/omnisharp-vscode) and licensed under the [MIT license](LICENSE.txt).
0 commit comments