Back in November, Microsoft announced Visual Studio for Mac, releasing its first preview, and promising to add more features in the months ahead. Today, alongside the general release of Visual Studio 2017, Microsoft also rolled out Visual Studio for Mac Preview 4.
"Visual Studio for Mac Preview 4 brings lots of new features, including updates to the Xamarin and .NET Core workloads," Xamarin's Miguel de Icaza explained today. "Preview 4 brings expanded project templates for .NET Core, as well as support for the beautiful new MSBuild .NET Core project format. The Xamarin workload has been updated to include a new iOS Audio Unit wizard, Android binding project operations, and other mobile tooling improvements. This preview also includes NuGet 4.0 support and tons of other bug fixes and performance improvements."
As in Visual Studio 2017, Visual Studio for Mac Preview 4 also brings enhancements to the Xamarin.Forms Previewer, along with new and updated development templates. "We have overhauled all of our iOS, watchOS, and tvOS templates with a flurry of new extensions to make development a breeze," Miguel said.
There are new Connected Services with simplified access to cloud capabilities, and you'll also find the latest SDKs for all major platforms, including Android 7.1 Nougat, iOS 10.2 and watchOS 3.
Here's an overview of some of the other key changes in Visual Studio for Mac Preview 4:
- This release includes all the new features and fixes included in Xamarin Studio 6.3 (release notes).
- MSBuild is now the default build engine instead of xbuild.
- Portable and embedded compiler options can now be specified in project options.
- Various optimizations, memory usage and performance improvements across the IDE.
.NET Core Support
- Integrated unit testing support for running and debugging tests with the Visual Studio Test Platform that is included with the .NET Core SDK.
- Integrated the .NET Core templating engine and project templates.
- F# .NET Core projects are now supported.
- Support for migrating projects project.json/xproj to csproj.
- References and Packages folders have been removed from the Solution window. This information is shown in the Dependencies folder under the Assemblies, Projects, Packages and SDK folders.
- Allow multiple NuGet packages to be select and removed in one step for .NET Core projects.
- A message dialog is now displayed if .NET Core SDK is missing or unsupported with a download link.
- Added ASP.NET Core run configuration settings in project options. App url, launch url and enabling/disabling launching the browser can now be configured.
- Fixed license acceptance dialog not shown for .NET Core projects
- Fixed crash at startup if the ~/Library/Preferences/Xamarin directory is owned by another user
- Base class constructor tooltip does not contain all constructor definitions
- Fixed Find References of All Overloads not returning all items
- Fixed language selection for recent templates not showing correct lanuage used
- Fixed quick task drawing glitch
- Fixed incorrect working directory used when running .NET Core projects
- Fixed Lamba argument renaming shows code completion items
- Fixed disabled breakpoints being hit when debugging .NET Core project
- Fixed restore errors after renaming project file
- Fixed unevaluated MSBuild expression being shown in the project options as the compiler's Define Symbol for .NET Core projects.
- Fixed potential race condition on saving an MSBuild project
- Fixed Description not saved in .NET Core project file if modified
- Fixed RootNamespace to be updated from project options for .NET Core projects
- Refresh NuGet packages after target framework changed in project options
- Fixed target framework changes made in project options not saved
- MSBuild project option is no longer shown for .NET Core projects
- Show correct target frameworks in project options for .NET Core projects
- Remove extra metadata saved with ProjectReferences
- Fixed app freezing whilst attempting to debug on iOS Simulator
- Fixed intellisense fails when referencing an iOS binding project
- Fixed scrolling to type when using Go To Definition with Assembly Browser
- Fixed crash on adding breakpoint to any line of Main.axml file
- Hide diagnostics when severity is hidden.
- Fixed formatting on pasting large blocks of unformatted code
- Fixed crash when using the Assembly Browser
- Fixed library reference alias change not reflected in the type system
- Tabs to Spaces defaults to true for F# projects
- Fixed code completion on standalone files
- Fixed open statements greyed out that contain operators
- Fixed floating versions not handled in package references
- Fixed document is not part of the workspace exception
- Item groups now merged in F# projects for Visual Studio compatibility
- Increase length of strings shown in Watch window
- Fixed copying the contents of a debugger expression does not copy just the value
- Fixed crash on opening .cs file in Hex Editor
- Fixed build error after referencing another .NET Core project
- Restore after modifying project references
- Fixed Clean failures not reported on Rebuild
- Fixed broken code completion after referencing a project
- Fixed main toolbar switches back from Release to Debug on adding/removing a file
- Fixed not being able to reference .NETStandard projects from .NET Core projects
- Fixed hovering over constructor not showing resolved constructor overload
- Fixed xmlns being added to .NET Core SDK projects
- Fixed PackageReference elements added with a Version element instead of using an attribute
You can also view the full release notes on the Xamarin site.
Visual Studio for Mac Preview 4 is available to download now.