The production of the Version 15.6 update to Microsoft’s Visual Studio 2017 IDE is now available.

Visual Studio 2017 15.6’s new features

Released in March 2018, Visual Studio includes several foundational changes to the F# language and core library to make the tuple and System.Tuple types synonymous, as well as to make several adjustments related to .Net Core.

Oustide of the F# changes, Visual Studio 2017 15.6’s features include what was previewed in the February 2018 third and final beta:

  • Faster load times for .Net Core.
  • Notifications about extensions that could cause the UI to become unresponsive. Developers are given an option to disable the extension and disable future notifications pertaining to that extension.
  • For diagnostics, the debugger’s threads window is significantly faster. The window also is now asynchronous, so users can interact with Visual Studio while data is processed in the background.
  • For C++ development, developers can choose whether to automatically generate the CMake cache when opening CMake projects. CMake is a tool for defining build processes that run across multiple platforms.
  • C++ linker improvements involve changes to the PDB (program database), which has reduced latency and enabled a 30 percent reduction in heap memory consumption with the Visual Studio Debugger.
  • Compile-time improvements have been made for C++, via improved optimizations of pre-incremented loops and better propagation of constant global data in link-time code generation.
  • Build tools in Visual Studio now support TypeScript and Node.js project types.
  • A limited, private preview is being offered for Visual Studio Live Share, which provides for real-time collaboration among teams. Interested developers can sign up on the Visual Studio Live Share website.

Microsoft on January 10 released a second beta of Visual Studio 2017 15.6. Its features include:

  • Improved solution load performance, focused on scenarios where a project already has been opened.
  • The design time build cache has been optimized, with project data loading now done in parallel. Visual Studio thus can use the disk and CPU with greater efficiency. Microsoft has found that large C# and Visual Basic solutions will “warm-load” twice as fast as before.
  • For productivity, the beta lets developers navigate to decompiled sources.
  • For diagnostics, the CPU usage tool now displays logical call stacks for asynchronous code when used during post-mortem profiling with the Alt-Z Performance profiler. Asynchronous code running on behalf of a parent function or task appears as a child in Call Tree and Caller/Callee views. This view makes it easier to navigate asynchronous code and understand performance.
  • For Azure cloud development, continuous delivery can be configured for solutions with ASP.Net Core projects.
  • The Test Explorer capability, for running tests, has added a hierarchy to organize tests by project, namespace, and class.
  • Test Explorer has changed real-time test discovery so it is now on by default, rather than require a flag be set.

The preview also offers new capabilities for C++ developers:

  • For C++ standards conformance, the preview implements more of the C++ 17 standard library, including APIs such as stable_sort and partition.
  • Missing include files are automatically discovered for C++ Open Folder if under the workspace root.
  • Debug options are now available for embedded ARM GCC development.
  • Five new checks have been added to enforce rules around integer overflow and additional rules for C++ guidelines.
  • CMake projects are now automatically listed in Test Explorer.

Features introduced in the December 8, 2017, initial beta include:

  • The CPU Usage tool shows source-line highlighting based on consumption of specific lines of code.
  • Using Intellisense capabilities for Python code no longer requires a completion database.
  • The Team Explorer collaboration tool improves Git tags functionality, with the Tags tile available for viewing all tags in a repo. Developers also can delete and push tags and build a new branch from tags.
  • Access to the App Authentication Extension, for configuring a device to use protected settings when working with the Azure cloud, has been moved into the main setup.
  • Real-time test discovery, used for projects using the Roslyn compiler to find tests and populate the Test Explorer, is on by default. It had been available via a flag in the Version 15.5 release.
  • For Azure cloud development, Visual Studio supports configuring continuous delivery to Azure for Team Foundation Version Control, Git SSH remotes, and web apps for containers.
  • The WCF Web Service Reference connected service provider now supports an existing service reference, simplifying the process of regenerating client proxy code for an updated web service.