News

Visual Studio for Mac Getting VS Code Internals in Reliability Revamp

Persistent performance and reliability issues in the Visual Studio for Mac IDE will be addressed by replacing most of the editor internals with code from the Visual Studio for Windows IDE.

That news comes in a blog post today (Oct. 16) announcing Visual Studio for Mac 2019 and a new roadmap.

Performance and reliability concerns have long been a focal point for the team developing VS for Mac, which the company in 2016 described as "evolving the mobile-centric Xamarin Studio IDE into a true mobile-first, cloud-first development tool for .NET and C#, and bringing the Visual Studio development experience to the Mac." That mobile-centric Xamarin Studio IDE was based on the open source MonoDevelop project. Mono/Xamarin guru Miguel de Icaza described VS for Mac as being built with a series of components on top of MonoDevelop.

That approach apparently wasn't enough to satisfy performance and reliability concerns raised by many developers. In announcing Visual Studio for Mac 7.6 in August, program manager Dominic Nahous listed multiple reliability fixes for issues "many of you have reported." He also listed performance fixes, saying "One of the top reported bugs in previous releases has been performance issues in the editor." That bug report was titled "Editor becomes so slow it's unusable after a while."

Those fixes apparently weren't enough, as today, Unni Ravindranathan, principal program manager, said: "Improving the typing performance and reliability is our single biggest focus area for Visual Studio 2019 for Mac. We plan to replace most of the internals of the Visual Studio for Mac editor with those from Visual Studio. Combined with the work to improve our integration of various language services, our aspiration is to bring similar levels of editor productivity from Visual Studio to Visual Studio for Mac. Finally, as a result of this work, we will also be able to address a top request from users to add Right-To-Left (RTL) support to our editor."

Other major themes for Visual Studio for Mac 2019 and the roadmap include:

  • Support for Team Foundation version control: "Including support for Team Foundation Server, with both Team Foundation Version Control (TFVC) and Git as the source control mechanisms, has been one of the top requested experiences on the Mac."
  • Increased productivity when working with projects: "The C# editor in Visual Studio for Mac will be built on top of the same Roslyn backend used by Visual Studio on Windows and will see continuous improvements."
  • .NET Core and ASP.NET Core support: "In Visual Studio 2019 for Mac, we will add support for .NET Core 3.0 when it becomes available in 2019. We will add more ASP.NET Core templates and template options to Visual Studio for Mac and improve the Azure publishing options."
  • Xamarin support: "In addition to continuing to make improvements to the Xamarin platform itself, we will focus on improving Android build performance and improving the reliability of deploying iOS and Android apps."
  • Unity support: "Unity now supports a .NET 4.7 and .NET Standard 2.0 profile, and we’re making sure that Visual Studio for Mac works out of the box to support those scenarios. Unity 2018.3 ships with Roslyn, the same C# compiler that is used with Visual Studio for Mac, and we’re enabling this for your IDE."

While Microsoft is doing away with the UserVoice site used to collect issues and feature requests in favor of the Developer Community site, the top UserVoice items listed for Visual Studio for Mac are:

  • Support C++ in Visual Studio for Mac (3,160 votes)
  • TFS Version Control (1,764 votes)
  • Manage NuGet Packages, (336 votes)
  • Add SQL Server integration (315 votes)
  • Add support for SQL Server Data Tools (272 votes)

Ravindranathan said the 2017 and 2019 versions of Visual Studio for Mac will be able to be installed side-by-side so developers can try out preview releases while still working on the stable v2017 releases, with parallel development continuing for both offerings.

"We don’t have preview bits to share with you just yet, but we wanted to share our plans early so you can help us shape the product with your feedback that you can share through our Developer Community website. We will update our roadmap for Visual Studio for Mac once a quarter to reflect any significant changes. We will also post an update to our roadmap for Visual Studio soon."

NOTE: This article was corrected to indicate VS for Mac's internals are being replaced by internals from the Visual Studio for Windows IDE, not the Visual Studio Code editor.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube