Today, we’re releasing version 8.3 of Visual Studio 2019 for Mac – our .NET IDE, built natively for macOS. This release is predominantly driven by your feedback: delivering a faster and more reliable ASP.NET Core web developer experience, reducing the time between coding and testing Xamarin UI changes, and including a few “delighters” to make your experience even better.
These are the 3 top requests we’ve focused on in this release:
- Support for .NET Core 3, .NET Standard 2.1, and C# 8.0.
- Solution-level management of NuGet packages.
- Multi-targeting for .NET libraries.
ASP.NET Core developers will find this release really exciting. In addition to the items mentioned above, we’ve made the following improvements for your daily coding lives:
- Web editors updated to provide the same productivity as the editors on Windows.
- Related files, like .cshtml and .cshtml.cs files, are now nested in the solution pad.
- Select your target browser when running an ASP.NET Core project.
Mobile developers using .NET and Xamarin also have new features to look forward to:
- Preview XAML Hot Reload to rapidly iterate on your Xamarin.Forms apps.
- Support for Android 10, Xcode 11, and iOS 13
Finally, v8.3 also includes several “delighters” across the product such as tab pinning, support for launchSettings.json in .NET Core projects, and an easier way to get started with your preferred keyboard shortcuts.
In this post, we’ll cover a few of the highlights mentioned above. To learn about all the changes in this release, be sure to check out the release notes.
Support for .NET Core 3.0, .NET Standard 2.1, and C# 8.0
This release officially supports .NET Core 3.0. .NET Standard 2.1, and C# 8.0. Whether you install the IDE for the first time or update from a previous release, the .NET Core 3.0 SDK will be installed automatically for you. You can create, build, run, debug, and publish .NET Core 3.0 applications.
When you’re editing C# 8.0 files in Visual Studio for Mac, you’ll have access to new C# 8.0 features like readonly members and switch expressions. All the existing editor functionality, such as IntelliSense and Quick Fixes, will also continue to work. For more info on what’s new in C# 8.0, head over to the docs to read about What’s new in C# 8.0.
NuGet solution-level package management
We’ve also added support for NuGet solution-level package management functionality, a top requested item on the Developer Community site. As the number of projects grow within a solution, it becomes harder to keep same version of packages across the projects. With the improvements we made in this area, now it’s easier to consolidate to a single version of packages across the solution.
Multi-Targeting
When building modern .NET libraries, it’s common for library authors to target a variety of platforms and devices. .NET Standard is the best solution for adding support for multiple platforms, but sometimes it’s necessary to use APIs in .NET frameworks that don’t support .NET Standard. In that case, the best solution is to use multi-targeting to build for multiple .NET frameworks. Recently, we included support for working on projects that support multi-targeting, another highly requested feature. When editing code in one of these projects, you can use a Target Framework drop down at the top of the editor window to focus your editing experience on a specific target framework.
Dependencies are also now displayed broken down by target framework, and when running your project you can choose the target framework against which to debug.
All web editors, now updated
A major focus of the Visual Studio for Mac v8.3 release is optimizing the ASP.NET Core developer workflow. We’ve heard from hundreds of .NET Core developers and focused our efforts on addressing the community’s feedback. In this release, we’re introducing new web editors based on the same editors (and code) as Visual Studio on Windows, and support for managing NuGet packages across multiple projects at the solution level.
Since the initial release of Visual Studio 2019 for Mac in April, we’ve been working to update all the editors within the IDE. In v8.1, we introduced the new C# editor. v8.2 brought the new XAML editor to Visual Studio for Mac. In v8.3, we’re updating all the web editors! The new web editors are based on the same native UI as the C# and XAML editors and provide all the advanced features recently introduced to Visual Studio for Mac, such as multi-caret editing, RTL support, and native input support. In addition to these high-level editor features, the new web experience is also powered by the same core as Visual Studio on Windows, so you can expect the same language service features that make Visual Studio such a productive IDE. These language services provide vital features, such as IntelliSense as well as code formatting, syntax highlighting, and navigation support.
The new editors support a variety of web files, including HTML, CSHTML, JS, JSON, and CSS. This also brings support for a common request, IntelliSense and syntax highlighting for languages embedded in .cshtml: JavaScript, C#, and CSS! This means you get all features as appropriate for the file types you are working within, so you will see advanced IntelliSense in JS, CSHTML and more. We have also improved support for LESS and SASS files. The web experience in Visual Studio for Mac has never been better!
ASP.NET Core: File Nesting support
We’ve also added automatic File Nesting for ASP.NET Core projects. The auto file nesting rules applied are the same as what you find in Visual Studio. With file nesting enabled, you can focus better on the files that you edit most frequently. Generated files, and less frequently edited files will be nested under other related files. Check out the screenshot of the Solution Pad showing the nesting behavior.
Debugging ASP.NET Core apps on multiple web browsers
Finally, for ASP.NET Core development, we’ve added one more popular feature request – support for targeting multiple web browsers. Now, when debugging an ASP.NET Core app, you can pick the browser in which you want to run your app. This makes it a lot easier to make sure you’ve got just the right experience in each browser your app supports.
XAML Hot Reload for Xamarin.Forms Preview
We are making XAML Hot Reload for Xamarin.Forms available in this release as a preview. XAML Hot Reload enables you to rapidly iterate on your Xamarin.Forms UI without needing to build and deploy. When debugging your app, you can now edit your XAML and hit save to see the changes immediately reflected on the running app. This works on all valid deployment targets, including simulators, emulators, and physical devices. To get started, check out the XAML Hot Reload documentation.
Android 10, Xcode 11, and iOS 13 Support for Xamarin
With Visual Studio for Mac version 8.3, Xamarin developers can take advantage of the latest-and-greatest features from both Google and Apple.
Android 10 introduces a variety of new features such as dark theme, gestural navigation, and optimizations for foldable devices. iOS 13 provides the next generation of existing features like SiriKit and ARKit, while also introducing new features such as Dark Mode and Sign In with Apple. To learn more about how you can use these new features in your apps, head over to our Android 10 with Xamarin and Introduction to iOS 13 documentation pages.
New “Delighters” for all developers
A common request we’ve heard from developers who use both Windows and macOS is to support more of the same keyboard shortcuts as Visual Studio on Windows. Visual Studio for Mac has long had support for configurable “Key Bindings” that allow you to select from a set of pre-defined profiles and customize shortcuts to your liking. You can configure these from the Preferences > Key Bindings screen.
In this release, we’ve added a new prompt on first launch of the IDE, to make it easier for you to customize the IDE to work the way you want it.
Another helpful improvement added into this release is support for document pinning. Now, you can take any document in the IDE, right-click on it, and choose to “pin” it to remain open on the left-hand side of all your document tabs.
Download today
Download the Visual Studio 2019 for Mac v8.3 release today, or if you have it installed already – update to the latest release using the Stable channel!
If you run into any issues with the v8.3 release, please use the Help > Report a Problem menu in the IDE to let us know about it. You can also provide suggestions for future improvements by using the Provide a Suggestion menu.
Finally, make sure to follow us on Twitter at @VisualStudioMac to stay up to date on the latest Visual Studio for Mac news and let us know what your experience has been like. We look forward to hearing from you!
Still no Blazor support. When can we expect support for .razor files?
Hi, Tobias – we don’t have anything new here just yet, but we’re working on it! Our plan right now is to introduce .razor support in our upcoming Visual Studio for Mac v8.4 release, tentatively planned for release later this year. You can follow along with the status on the Visual Studio for Mac roadmap: https://docs.microsoft.com/en-us/visualstudio/productinfo/mac-roadmap.