Visual Studio 2022 for Mac Dumps Mono for .NET 6
Visual Studio 2022 for Mac has parted ways with the Mono runtime in the just-published Preview 5, now running on .NET 6.
The dumping of Mono comes as the dev team works to adopt a fully native macOS UI and run the IDE natively on Apple's ARM-based M1 processor, the latter of which is key to adopting .NET 6.
"This release was focused on moving the IDE to natively support Apple's M1 processor," the Jan. 25 release notes say. "To do this, the IDE has moved to run on the .NET 6 framework, whereas previously it ran using the Mono Framework."
This is a milestone move for the IDE, which was spawned from the old Xamarin Studio (formerly known as MonoDevelop) and thus always used Mono, an open source development platform based on Microsoft's .NET Framework. The IDE is primarily used for web and cloud development using ASP.NET Core, mobile iOS/Android development using .NET or Xamarin and Unity games development. VS 2019 for Mac obviously doesn't do WPF/WinForms Windows desktop projects or UWP, nor Python or Node.js.
"The move to run Visual Studio for Mac on the .NET 6 CLR is a critical investment that will allow us to take advantage of the latest innovations from .NET," said Jordan Matthiesen, senior program manager, Visual Studio for Mac, in a Jan. 25 post announcing Preview 5. "One of the first benefits of moving from the Mono runtime to .NET 6 is improved performance for several scenarios granted by the new I/O implementation in .NET 6. Please note these are still early builds so you may see slightly different results, but that we're continuing the investment in optimizing Visual Studio for Mac on M1 processors and would love your feedback."
Meanwhile, work is proceeding on converting the IDE's UI to fully native macOS components. This has been a persistent focus for the dev team, which earlier struggled to address serious reliability and stability issues by moving to Windows internals in Visual Studio 2019 for Mac.
"We also continued the work of moving the IDE to fully native macOS UI by upgrading more high use parts of the IDE including the Document Switcher and Document Outline," Matthiesen said. "The entire IDE experience is now implemented in native macOS UI, where previously it was a combination of native UI and custom drawn UI controls using a non-native control library. To date we've migrated near 95 percent of the user experience from Visual Studio 2019 for Mac, including the editors, all commonly used tool windows, and most preferences and project settings. In Preview 5 we've continued this work by porting the Document Switcher and Document Outline window."
Because of the aforementioned development issues and other problems, VS 2022 for Mac is trailing the Windows version, which debuted last November. Microsoft hasn't provided a definitive ship date, only saying it will go GA in the first half of the year.
"The final release date decision will be driven based on feedback from all of you," Matthiesen said last November. "This is a major update to the IDE UI and core architecture, and we want to be sure it's in great shape. As we work toward this goal, we'll update you along the way and will share a Release Candidate (RC) build as the final date approaches. In the meantime, you can continue to use Visual Studio 2019 for Mac v8.10 to build your apps with .NET 5, Xamarin, Unity or .NET Core 3.1."
To help narrow down when that final date might be, the Windows IDE shipped in four previews and two release candidates before going GA. The Mac cadence so far has been:
Preview 1 -- Sept. 29, 2021
Preview 2 -- Oct. 13, 2021
Preview 3 -- Nov. 8, 2021
Preview 4 -- Dec. 15, 2022
Preview 5 -- Jan. 25, 2022
So we'll see what happens in March or April.
David Ramel is an editor and writer for Converge360.