The Version 15.6 beta provides a raft of C++ improvements, as well as enhancements for developer productivity and diagnostics
By Paul Krill
Editor at Large, InfoWorld | January 12, 2018
The second beta of the Version 15.6 update to Microsoft’s Visual Studio 2017 IDE is now available.
Visual Studio 2017 15.6 beta’s features
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.
Where to download the Visual Studio 15.6 beta
You can download the Version 15.6 beta at the Visual Studio website.
Now available: Visual Studio 2017 15.5 features
Visual Studio 2017 15.5 was released on December 4, featuring faster load times for C# and Visual Basic.
Visual Studio 2017 15.5’s compiler and standard library gained the following new support for the C++ 17 standard:
• The compiler supports about 75 percent of C++ 17 features, including structured bindings, constexpr lambdas, inline variables, and float expressions.
• C++ code generation has been improved.
• New C++ Core Guidelines checks should ensure the quality of C++ code.
• Support for the Google Test Framework assists with writing Google Test C++ unit tests
• The Linux C++ workload supports cross-compilation for ARM microcontrollers.