Microsoft today announced Visual Studio 2019, the next version of its integrated development environment (IDE). Release timing will be shared “in the coming months,” with the company simply promising “to deliver Visual Studio 2019 quickly and iteratively.” The news comes days after Microsoft’s acquisition of GitHub.
Microsoft launched Visual Studio 2017 in March 2017 and Visual Studio 2017 for Mac in May 2017, and says it has become “our most popular Visual Studio release ever.” Since those initial releases, the company has published seven updates, improving solution load performance, build performance, and unit test discovery performance.
Last month at its Build 2018 developers conference, Microsoft showed off two new Visual Studio previews: IntelliCode and Live Share. The former uses AI to offer intelligent suggestions that improve code quality and productivity, and the latter lets developers collaborate in real time with team members who can edit and debug directly from Visual Studio and Visual Studio Code.
Once out of preview, both of those features will not be exclusive to Visual Studio 2019. In fact, Microsoft isn’t yet ready to talk about the next release in detail. All we have is a name (which presumably confirms the year of release), some early hints about improvements, and the confirmation to expect more AI:
Microsoft is “now in the early planning phase” for both Visual Studio 2019 and Visual Studio for Mac. Visual Studio 2019 will be faster, more reliable, and more productive for individuals.
Because the Developer Tools teams (especially .NET and Roslyn) do so much work in GitHub, you’ll start to see check-ins that indicate that we’re laying the foundation for Visual Studio 2019, and we’re now in the early planning phase of Visual Studio 2019 and Visual Studio for Mac. We remain committed to making Visual Studio faster, more reliable, more productive for individuals and teams, easier to use, and easier to get started with.
Expect more and better refactorings, better navigation, more capabilities in the debugger, faster solution load, and faster builds. But also expect us to continue to explore how connected capabilities like Live Share can enable developers to collaborate in real time from across the world and how we can make cloud scenarios like working with online source repositories more seamless. Expect us to push the boundaries of individual and team productivity with capabilities like IntelliCode, where Visual Studio can use Azure to train and deliver AI-powered assistance into the IDE.
As before, Visual Studio 2019 previews will install side by side with Visual Studio 2017. This is great for trying out new functionality without messing with your production workflow.
Visual Studio 2019 also won’t require a major operating system upgrade, Microsoft promised. Visual Studio 2017 worked on Windows Server 2012 R2 (and later), Windows 7 (and later), and Mac OS X El Capitan 10.11 (and later).
-->
| Developer Community| System Requirements| Compatibility| Distributable Code| License Terms| Blogs| Known Issues |
Click a button to download the latest version of Visual Studio 2017. For instructions on installing and updating Visual Studio 2017, see Update Visual Studio 2017 to the most recent release. Also, see instructions on how to install offline.
Visit the visualstudio.com/downloads page to download other Visual Studio 2017 products.
What's New in 15.9
Visual Studio 2017 version 15.9 Releases
August 13, 2019 -- Visual Studio 2017 version 15.9.15 Servicing Update
July 9, 2019 -- Visual Studio 2017 version 15.9.14 Servicing Update
June 11, 2019 -- Visual Studio 2017 version 15.9.13 Servicing Update
May 14, 2019 -- Visual Studio 2017 version 15.9.12 Servicing Update
April 02, 2019 -- Visual Studio 2017 version 15.9.11 Servicing Update
March 25, 2019 -- Visual Studio 2017 version 15.9.10 Servicing Update
March 12, 2019 -- Visual Studio 2017 version 15.9.9 Servicing Update
March 05, 2019 -- Visual Studio 2017 version 15.9.8 Servicing Update
February 12, 2019 -- Visual Studio 2017 version 15.9.7 Servicing Update
January 24, 2019 -- Visual Studio 2017 version 15.9.6 Servicing Update
January 08, 2019 -- Visual Studio 2017 version 15.9.5 Servicing Update
December 11, 2018 -- Visual Studio 2017 version 15.9.4 Servicing Update
November 28, 2018 -- Visual Studio 2017 version 15.9.3 Servicing Update
November 19, 2018 -- Visual Studio 2017 version 15.9.2 Servicing Update
November 15, 2018 -- Visual Studio 2017 version 15.9.1 Servicing Update
November 13, 2018 -- Visual Studio 2017 version 15.9 Minor Release
Important
Visual Studio 2017 version 15.9 Security Advisory Notices
August 13, 2019 -- Visual Studio 2017 version 15.9.15 Servicing Update
July 9, 2019 -- Visual Studio 2017 version 15.9.14 Servicing Update
May 10, 2019 -- Visual Studio 2017 version 15.9.12 Servicing Update
March 12, 2019 -- Visual Studio 2017 version 15.9.9 Servicing Update
February 12, 2019 -- Visual Studio 2017 version 15.9.7 Servicing Update
January 08, 2019 -- Visual Studio 2017 version 15.9.5 Servicing Update
December 11, 2018 -- Visual Studio 2017 version 15.9.4 Servicing Update
Visual Studio 2017 version 15.9.15
released on August 13, 2019
Issues Fixed in 15.9.15
These are the issues addressed in 15.9.15:
Updated signing of VC Redist packages to enable continued deployment on Windows XP. This fix may have an increased chance of requiring a reboot of the machine in order to install an updated VC++ Redistributable package.
Fixed in issue where GoToDefinition does not work for JavaScript in script blocks of cshtml files.
Calling pmr monotonic_buffer_resource release will corrupt memory.
Security Advisory Notices
Visual Studio 2017 version 15.9.14
released on July 9, 2019
Issues Fixed in 15.9.14
These are the issues addressed in 15.9.14:
Fixed a bug causing Visual Studio 2017 crashes when switching branches.
Fixed a bug causing internal compiler error (fbtctree.cpp', line 5540) during code analysis.
Fixed a performance regression in memcpy/memset for Ryzen processors.
Updated Service Fabric tooling to support the 6.5 Service Fabric release.
Enabled screen reader to announce TeamExplorer's notifications properly on .NET 4.8.
VS2017 15.8 Internal compiler error ('msc1.cpp', line 1518): Conflict between preprocessor and #import.
ICE in PREfast 19.16.27023.1 (15.9 RTW).
Security Advisory Notices
Visual Studio 2017 version 15.9.13
released on June 11, 2019
Issues Fixed in 15.9.13
These are the customer-reported issues addressed in 15.9.13:
Fixed a bug that caused Code Analysis to stop running on some C++ projects.
Fixed a bug in the Schema Compare Tool where adding tables with an empty schema failed but was shown as successful.
Fixed a TypeScript build issue when the selected language version is lower than the latest installed.
Fixed a Database unresolved reference to object error.
Improved performance issues on loading Visual Studio.
Fixed known issue: No snapshot created for C++ native code in Memory Usage tool in the Diagnostic Tools window while debugging..
Fixed known issue: SSDT adds hardcoded mmsdb and/or master.dacpac path
Fixed known issue: SSDT Add reference to System Database: 'ArtifactReference' and 'HintPath' swapped causing build failure when using MSBuild
Visual Studio 2017 version 15.9.12
released on May 14, 2019
Issues Fixed in 15.9.12
These are the customer-reported issues addressed in 15.9.12:
Access violation C++ /CLI 15.9.5 ISO C++ Latest Draft Standard since 15.9.5.
An error occurred loading this property page (CSS & JSON).
Visual Studio 2017 crashing when editing package.json.
Opening package.json locks up Visual Studio.
PGO Code Gen Bug - Vectorized instruction accessing memory OOB.
Bad code gen in recursive bucket split routine.
Compiler optimization bug in 15.8.9.
Fixed a linker error LNK4020 when using PCH, /Zi, and /GL in distributed build systems, such as IncrediBuild. The C++ compiler backend now correctly associates CIL OBJs with their corresponding compiler generated PDB when generating debug info for cross-module inlining.
Security Advisory Notices
Visual Studio 2017 version 15.9.11
released on April 02, 2019
Issues Fixed in 15.9.11
These are the customer-reported issues addressed in 15.9.11:
Access violation C++ /CLI 15.9.5 ISO C++ Latest Draft Standard since 15.9.5.
PGO Code Gen Bug - Vectorized instruction accessing memory OOB.
Visual Studio completely freezes when editing package.json.
An error occurred loading this property page (CSS & JSON).
Clicking on a web app URL in the Azure activity log now successfully publishes a Cloud Service Project.
You can now publish to a Function app even if you are not logged into the account that contains the function app.
We have fixed an unhandled exception in the HTML editor.
We have updated the scaffolding package to install Microsoft.VisualStudio.Web.CodeGeneration.Design package version 2.1.9 for .NET Core 2.1 and version 2.2.3 for .NET Core 2.2.
We have implemented a C++ compiler fix to correct exception handling support for code using setjmp/longjmp in Release mode.
We have implemented a C++ linker fix regarding information in PDB where the incorrect module info could result in heap corruption when producing a stripped PDB file either by PDBCopy.exe or by link.exe when option /PDBSTRIPPED is specified.
We have corrected dual signing of the ARM64 Visual C++ Redistributable installer.
Visual Studio 2017 version 15.9.10
released on March 25, 2019
Issues Fixed in 15.9.10
These are the customer-reported issues addressed in 15.9.10:
We have fixed an issue with debugging using Docker when a web proxy is configured.
In debugging using Docker, you will now experience improved error handling for failures related to drive sharing configuration (for example, expired credentials).
Visual Studio 2017 version 15.9.9
released on March 12, 2019
Issues Fixed in 15.9.9
These are the customer-reported issues addressed in 15.9.9:
We have fixed an issue with deploying resource group projects when a subscription owner's name contains an apostrophe.
SSDT: We fixed a crash in the SSIS Foreach Loop container.
A few .NET native for UWP customer issues were fixed in .NET native tools 2.2 (UWP 6.2.4).
We have corrected dual signing of Visual C++ Redistributable installers.
Security Advisory Notices
A remote code execution vulnerability exists when the Visual Studio C++ Redistributable Installer improperly validates input before loading dynamic link library (DLL) files.
Unity Editor Remote Code Execution Vulnerability.
.NET Core NuGet Tampering Vulnerability.
Visual Studio 2017 version 15.9.8
released on March 05, 2019
Issues Fixed in 15.9.8
These are the customer-reported issues addressed in 15.9.8:
ModelBus-enabled text transformation fails on 15.8.
SSDT: Fix to improve performance of loading solutions with multiple projects.
Vulnerabilities in the OpenJDK Platform binary.
Visual Studio 2017 version 15.9.7
released on February 12, 2019
Issues Fixed in 15.9.7
These are the customer-reported issues addressed in 15.9.7:
Crashes when expanding variables!.
/DEBUG:FASTLINK + C7 + PCH crashes debugger.
Native C++ application crashes because of stack corruption with VS 2017 15.9.2.
Incorrect Release Mode code.
Xamarin Unobserved Task Exception WebRequest.
Link /SOURCELINK option seems to do nothing. This fixes Source Link for Managed C++ Debugging.
Fixed an issue with corruption of AVX/MPX/AVX512 registers while Debugging.
Update of Microsoft.VCLibs.140.00.UWPDestkop framework packages for C++ UWP DesktopBridge applications adding support for ARM64.
Corrected incorrect version of VCToolsRedistVersion in Microsoft.VCToolsVersion.default.props.
Corrected unsigned embedded dll for VC Redist installers.
SSDT/Web Tools: We fixed an issue where SQL LocalDB was not installed on Polish, Turkish, and Czech locales.
SSDT: We fixed an issue affecting SQL Server Analysis Services (Method not found exception when clicking on UI).
SSDT: We fixed an accessibility issue which was causing the contents of a table not to be visible in the result window when using High-Contrast mode.
.NET Framework and Visual Studio Spoofing Vulnerability.
Visual Studio 2017 version 15.9.6
released on January 24, 2019
Issues Fixed in 15.9.6
These are the customer-reported issues addressed in 15.9.6:
Installation failures of the Unity Editor component in China.
Starting a new nanoFramework project from a template.
Deployment errors after VS2017 update.
Android Deploy failed - Error ADB0010.
Error in German translation: info bar 'session closed unexpectedly'.
Visual Studio 2017 create offline layout problem: Failed to load from stream for non-ENU layouts.
Extension auto-update can leave extension disabled.
Visual Studio 2017 version 15.9.5
released on January 08, 2019
Issues Fixed in 15.9.5
These are the customer-reported issues addressed in 15.9.5:
VSX1000: No enough information has been provided to MSBuild in order to establish a connection to a Remote Server.
Visual C++ 2017 Redistributable for ARM64 is not available via visualstudio.com.
VC Runtime Redistributable Update for VS 15.9 deletes Registry Key. This fix may have an increased chance of requiring a reboot of the machine in order to install an updated VC++ Redistributable package.
Incorrect codegen in managed c++ with List to List assignment.
Can't connect to mac build host after Visual Studio 15.9.4 update.
Resource directories missed in incremental builds with AndroidAarLibrary items.
Lots of external assembly references - JNI ERROR (app bug): local reference table overflow (max=512).
The Unity Editor has been updated to 2018.3. For more information, please visit the Unity website.
SSDT: We enabled SQL projects to build schemas that have non-clustered columnstore indexes on an indexed views.
SSDT: We fixed a significant performance issue in the schema compare tool when generating a script.
SSDT: We fixed the schema drift detection logic in the schema compare tool which forced a new comparison to reenable scripting and publishing actions.
Security Advisory Notices
A remote code execution vulnerability exists in Visual Studio when the C++ compiler improperly handles specific combinations of C++ constructs.
Visual Studio 2017 version 15.9.4
released on December 11, 2018
Issues Fixed in 15.9.4
These are the customer-reported issues addressed in 15.9.4:
Visual Studio 15.9 duplicate loads open files on solution reload.
All users can now connect to on-premise TFS servers through Team Explorer.
Visual Studio 15.8.3 no longer expands metadata in ItemDefinitionGroup for project-defined items during GUI builds (worked in Visual Studio 15.8.2).
Visual Studio has multiple tabs for the same file.
System.ArgumentException: The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)).
LNK4099 PDB not found.
Asset Catalog empty.
/analyze fails for C++ code using /ZW.
C++ compiler code optimization bug.
Xamarin.iOS can't select image asset for Image View.
iOS projects referencing a shared project containing image assets in an asset catalog fail to load on windows.
Image not populating on iOS splashscreen in VS 15.8.6.
Possible bad codegen on union/bitfield assignment in VS2017 15.8.
Fix C# UWP Store 1201 Submission Issue.
Fix C# UWP package creation error APPX1101: Payload contains two or more files with the same destination path 'System.Runtime.CompilerServices.Unsafe.dll'.
Error MT2002: Failed to resolve 'System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder' reference from 'System.Threading.Tasks.Extensions...' when building a Xamarin.iOS project.
Redirecting to a relative url doesn't work when using AndroidClientHandler.
Debug information for typedefs of unnamed enums compiled with the C compiler is now restored.
The spectre-mitigated x86 version of delayimp.lib is now built with /Qspectre mitigations enabled.
Changes were made to how Asset Catalogs in Xamarin.iOS projects are loaded in order to reduce solution load time.
We have updated Xamarin.Forms templates to use the latest version.
We have fixed an issue with ASP.NET Core Web Applications being debugged through Kestrel that would show the error message 'Unable to configure HTTPS endpoint. No server certificate was specified...'.
Enabling the AppInsights site extension in App Service from Visual Studio now happens through the use of specific Application Settings.
Security Advisory Notices
An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector Service improperly handles certain file operations.
Visual Studio 2017 version 15.9.3
released on November 28, 2018
Issues Fixed in 15.9.3
These are the customer-reported issues addressed in 15.9.3:
Visual Studio 15.9 - duplicate loads open files on solution reload.
Issues with reloading and IntelliSense with Unity projects and Visual Studio 2017 15.9.x.
Visual Studio 2017 version 15.9.2
released on November 19, 2018
Issues Fixed in 15.9.2
These are the customer-reported issues addressed in 15.9.2:
MFC EXE (binary) size is 5 times bigger in VS 15.8 (_MSC_VER = 1915).
Key 'OPENSSH' is not supported.
Windows magnifier can no longer track keyboard cursor.
Analysis fails with immediately-invoked lamba in while loop.
Xamarin iOS designer not working with 15.9 and Xamarin.iOS 12.2.1.10.
We improved the reliability of incremental linking for large C++ projects.
LNK2001 'unresolved external symbol' errors for certain vector deleting destructors will now be resolved.
Compiler execution time has been improved for code that makes heavy use of chained, inline functions involving lambdas or local classes as parameter or return types.
Visual Studio 2017 version 15.9.1
released on November 15, 2018
Issues Fixed in 15.9.1
These are the issues addressed in 15.9.1:
Fixed a bug where Visual Studio would fail to build projects using the Microsoft Xbox One XDK.
Details of What's New in 15.9.1
Universal Windows Platform Development SDK
The Windows 10 October 2018 Update SDK (build 17763) is now the default selected SDK for the Universal Windows Platform development workload.
Summary of Notable New Features in 15.9
You can now import and export an installation configuration file that specifies which workloads and components should be installed with an instance of Visual Studio.
We have improved the debugging experience for NuGet packages using the new symbol package format (.snupkg).
Step back in debugger is now available in C++ for Enterprise customers.
C++ IntelliSense now responds to changes in the remote environment for both CMake and MSBuild projects targeting Linux.
We have made updates to UWP Desktop Bridge framework packages and added support for ARM64 C++ Native Desktop scenarios.
We added support for the range-v3 library with the MSVC 15.9 compiler.
We fixed several bugs in the F# compiler and F# tools.
Language service support for new TypeScript features for semantic file renaming and project references.
Improved Node.js development by updating Vue.js templates and adding support for unit testing using the Jest framework.
We added SharePoint 2019 project templates, so you can migrate existing SharePoint 2013 and 2016 projects to SharePoint 2019.
Visual Studio Tools for Xamarin now supports Xcode 10.
We made improvements to the Xamarin.Android build performance.
We have added and improved features for Universal Windows Platform developers, including ARM64 support, the latest preview SDK, better debugging of Desktop Bridge applications, and XAML Designer improvements.
Substantial improvements were made to the experience of using authenticated package feeds.
There is now support for lock file to enable repeatable restore for PackageReference based projects.
We have added support for the new license format for NuGet packages.
We have introduced NuGet client policies in Visual Studio which enables you to lock down environments such that only trusted packages can be installed.
We made the use of .NET Core within Visual Studio more predictable.
Top Issues Fixed in 15.9
No way to change 'Find All References' background color.
'Visual C++ Resource Editor Package' load failed.
VS2017 v15.8 Build does not start if XAML files are not manually saved first.
Scrolling up with the arrow key causes Visual Studio to page up.
After updating to 15.8.1, data tip does not show when debugging.
System.InvalidProgramException: Common Language Runtime detected an invalid program..
Solution Explorer does not remain pinned after closing Visual Studio.
Navigation bar in editor has trouble handling long method names.
Editor Package load failure error on startup of Blend.
See all customer-reported issues fixed in Visual Studio 2017 version 15.9.
Details of What's New in 15.9
Visual Studio 2017 version 15.9.0
released on November 13, 2018
New Features in 15.9
Install
We made it easier to keep your installation settings consistent across multiple installations of Visual Studio. You can now use the Visual Studio Installer to export a .vsconfig file for a given instance of Visual Studio. This file will contain information about what workloads and components you have installed. You can then import this file to add these workload and component selections to another installation of Visual Studio.
Debugging
We have added support for consuming the new portable-pdb based symbol package format (.snupkg). We have added tooling to make it easy to consume and manage these symbol packages from sources like the NuGet.org symbol server.
C++
We've added the 'step back' feature in the debugger for C++ in the Visual Studio Enterprise Edition. Step back enables you to go back in time to view the state of your application at a previous point in time.
C++ IntelliSense now responds to changes in the remote environment for both CMake and MSBuild projects targeting Linux. As you install new libraries or change your CMake projects, C++ IntelliSense will automatically parse the new headers files on the remote machine for a complete and seamless C++ editing experience.
We've updated the UWP Desktop Bridge framework packages to match the latest in the Windows Store for all supported architectures, including ARM64.
In addition to fixing 60 blocking bugs, we have added support for the range-v3 library with the MSVC 15.9 compiler, available under /std:c++17 /permissive-.
The retail VCLibs framework package in Visual Studio has been updated to match the latest available version in the UWP Store.
Full support is now available for ARM64 C++ Native Desktop scenarios, including VC++ 2017 Redistributable.
We implemented the shortest round-trip decimal overloads of floating-point to_chars() in C++17's charconv header. For scientific notation, it is approximately 10x as fast as sprintf_s() '%.8e' for floats, and 30x as fast as sprintf_s() '%.16e' for doubles. This uses Ulf Adams' new algorithm, Ryu.
A list of improvements to the standards conformance of the Visual C++ compiler, which potentially require source changes in strict conformance mode, can be found here.
We have deprecated the C++ Compiler /Gm switch. Consider disabling the /Gm switch in your build scripts if it's explicitly defined. Alternatively, you can also safely ignore the deprecation warning for /Gm as it will not be treated as error when using 'Treat warnings as errors' (/WX).
F#
F# Compiler
We fixed a bug where extension methods that take byref values could mutate an immutable value.
We improved the compile error information for overloads on byref/inref/outref, rather than displaying the previously obscure error.
Optional Type Extensions on byrefs are now disallowed entirely. They could be declared previously, but were unusable, resulting in a confusing user experience.
We fixed a bug where CompareTo on a struct tuple and causing a type equivalence with an aliased struct tuple would result in a runtime exception.
We fixed a bug where use of System.Void in the context of authoring a Type Provider for .NET Standard could fail to find the System.Void type at design-time.
We fixed a bug where an internal error could occur when a partially applied Discriminated Union constructor is mismatched with an annotated or inferred type for the Discriminated Union.
We modified the compiler error message when attempting to take an address of an expression (such as accessing a property) to make it more clear that it violates scoping rules for byref types.
We fixed a bug where your program could crash at runtime when partially applying a byref type to a method or function. An error message will now display.
We fixed an issue where an invalid combination of a byref and a reference type (such as byref<int> option) would fail at runtime and not emit an error message. We now emit an error message.
F# Tools
We resolved an issue where metadata for F# assemblies built with the .NET Core SDK was not shown in file properties on Windows. You can now see this metadata by right-clicking an assembly on Windows and selecting Properties.
We fixed a bug where use of module global in F# source could cause Visual Studio to become unresponsive.
We fixed a bug where extension methods using inref<'T> would not show in completion lists.
We fixed a bug where the TargetFramework dropdown in Project Properties for .NET Framework F# projects was empty.
We fixed a bug where creating a new F# project targeting .NET Framework 4.0 would fail.
F# Open Source Repository
The VisualFSharpFull project is now set as the default startup project, eliminating the need to manually set that before debugging. Thanks, Robert Jeppesen!
JavaScript and TypeScript Language Service Support
We added refactoring to fix up references to a file after it has been renamed. We also added support for project references, letting you split your TypeScript project up into separate builds that reference each other.
We updated to the latest Vue CLI 3.0 and improved linting in Vue.js template files. You can also write and run unit tests using the Jest framework.
We have added support for TypeScript 3.1.
SharePoint 2019 Support
We added new templates that allow you to create projects for SharePoint 2019. You will have the ability to migrate existing SharePoint projects from both SharePoint 2013 and SharePoint 2016 to the new project template.
Visual Studio Tools for Xamarin
Visual Studio Tools for Xamarin now supports Xcode 10, which allows you to build and debug apps for iOS 12, tvOS 12, and watchOS 5. See how to get ready for iOS 12and our introduction to iOS 12for more details on the new features available.
Xamarin.Android 9.1 includes initial build performance improvements. See our Xamarin.Android 15.8 vs. 15.9 build performance comparison for more details.
Tools for Universal Windows Platform Developers
The latest Windows 10 SDK (build 17763) is included as an optional component in the Universal Windows Platform development Workload.
We added support for creating .MSIX packages for both the Universal Windows Platform projects, as well as in the Windows Application Packaging Project template. To create an .MSIX package, the minimum version of your application must be the latest Windows 10 SDK (build 17763).
You can now build ARM64 UWP applications. For .NET UWP applications, only .NET Native is supported for ARM64, and you must set the Minimum Version of your application to the Fall Creators Update (Build 16299) or higher.
We made improvements to the F5 (Build + Deploy) speed for Universal Windows Platform applications. This will be most noticeable for deployments to remote targets using Windows authentication, but will impact all other deployments as well.
Developers now have the option to specify Control Display Options when using the XAML Designer while building UWP applications targeting the Windows 10 Fall Creators Update (build 16299) or later. Selecting 'Only Display Platform Controls' prevents the designer from executing any custom control code to improve reliability of the designer.
The XAML designer now automatically replaces controls that throw with catchable exceptions with fallback controls, rather than having the designer crash. Fallback controls have a yellow border to cue in developers that the control has been replaced at design time.
The Windows Application Packaging project now supports debugging background process using the Core CLR debugger type.
NuGet
NuGet Credential Provider Improvements
This release substantially improves the experience of using authenticated package feeds, especially for Mac and Linux users:
Visual Studio, MSBuild, NuGet.exe, and .NET now support a new Credential Provider plugin interface, which can be implemented by private package hosts like Azure Artifacts. Previously, only NuGet.exe and Visual Studio accepted Credential Providers.
Visual Studio editions (including the Build Tools edition) now deliver the Azure Artifacts Credential Provider with certain workloads, so that you can easily use Azure Artifacts feeds in the course of your development.To use these improvements, install the NuGet package manager or NuGet targets and build tasks components, or the .NET Core workload.
NuGet Package Manager Improvements
NuGet now enables locking the full package closure of PackageReference based projects, thereby enabling repeatable restore of packages.
The Visual Studio NuGet package manager UI now surfaces the license information for packages that use the new license format. The new license format embeds the license information as part of the package in the form of an SPDX expression or a license file.
NuGet Security
We have introduced NuGet Client Policies which allow you to configure package security constraints. This means you can lock down environments so only trusted packages can be installed by:
Disallowing the installation of unsigned packages.
Defining a list of trusted signers based on the author signature.
Defining a list of trusted NuGet.org package owners based on the metadata in the repository signature.
.NET Core Tools for Visual Studio
Starting with this release, the .NET Core tools for Visual Studio will now default to using only the latest stable version of a .NET Core SDK that is installed on your machine for GA releases of Visual Studio. For future previews, the tools will use only preview .NET Core SDKs.
Visual Studio 2017 version 15.9 Security Advisory Notices
Visual Studio 2017 version 15.9.15 Service Release-- released on August 13, 2019
CVE-2019-1211 Git for Visual Studio Elevation of Privilege Vulnerability
An elevation of privilege vulnerability exists in Git for Visual Studio when it improperly parses configuration files. An attacker who successfully exploited the vulnerability could execute code in the context of another local user. To exploit the vulnerability, an authenticated attacker would need to modify Git configuration files on a system prior to a full installation of the application. The attacker would then need to convince another user on the system to execute specific Git commands. The update addresses the issue by changing the permissions required to edit configuration files.
Visual Studio 2017 version 15.9.14 Service Release-- released on July 9, 2019
CVE-2019-1075 ASP.NET Core Spoofing Vulnerability
.NET Core updates have released today and are included in this Visual Studio update. This release addresses security and other important issues. Details can be found in the .NET Core release notes.
CVE-2019-1077 Visual Studio Extension Auto Update Vulnerability
An elevation of privilege vulnerability exists when the Visual Studio Extension auto-update process improperly performs certain file operations. An attacker who successfully exploited this vulnerability could delete files in arbitrary locations. To exploit this vulnerability, an attacker would require unprivileged access to a vulnerable system. The security update addresses the vulnerability by securing locations the Visual Studio Extension auto-update performs file operations in.
A XOML file referencing certain types could cause random code to be executed when the XOML file is opened in Visual Studio.There is now a restriction on what types are allowed to be used in XOML files. If a XOML file containing one ofthe newly unauthorized types is opened, a message is displayed explaining that the type is unauthorized.
For further information, please refer to https://support.microsoft.com/en-us/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml.
Visual Studio 2017 version 15.9.12 Service Release-- released on May 14, 2019
CVE-2019-0727 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability
An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector Service improperly performs certain file operations. An attacker who successfully exploited this vulnerability could delete files in arbitrary locations. To exploit this vulnerability, an attacker would require unprivileged access to a vulnerable system. The security update addresses the vulnerability by securing locations the Diagnostics Hub Standard Collector performs file operations in.
Visual Studio 2017 version 15.9.9 Service Release-- released on March 12, 2019
CVE-2019-0809 Visual Studio Remote Code Execution Vulnerability
A remote code execution vulnerability exists when the Visual Studio C++ Redistributable Installer improperly validates input before loading dynamic link library (DLL) files. An attacker who successfully exploited the vulnerability could execute arbitrary code in the context of the current user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights. To exploit the vulnerability, an attacker must place a malicious DLL on a local system and convince a user to execute a specific executable. The security update addresses the vulnerability by correcting how the Visual Studio C++ Redistributable Installer validates input before loading DLL files.
A remote code execution vulnerability exists in the Unity Editor, a 3rd party software that Visual Studio offers to install as part of the Game Development with Unity workload. If you've installed Unity from Visual Studio, please make sure to update the version of Unity you're using to a version that addresses the vulnerability as described in the CVE.The Visual Studio installer has been updated to offer to install a Unity Editor version which addresses the vulnerability.
A tampering vulnerability exists in NuGet software when executed in a Linux or Mac environment. An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user. If the current user is logged on with administrative user rights, an attacker could take control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights. Exploitation of the vulnerability requires that an attacker can login as any other user on that machine. At that point, the attacker will be able to replace or add to files that were created by a NuGet restore operation in the current users account.
.NET Core updates have released today and are included in this Visual Studio update. The security update addresses the vulnerability by correcting how NuGet restore creates file permissions for all files extracted to the client machine. Details about the packages can be found in the .NET Core release notes.
Visual Studio 2017 version 15.9.7 Service Release-- released on February 12, 2019
A XOML file referencing certain types could cause random code to be executed when the XOML file is opened in Visual Studio.There is now a restriction on what types are allowed to be used in XOML files. If a XOML file containing one ofthe newly unauthorized types is opened, a message is displayed explaining that the type is unauthorized.
For further information, please refer to https://support.microsoft.com/en-us/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml..
CVE-2019-0657 .NET Framework and Visual Studio Spoofing Vulnerability
.NET Core updates have released today and are included in this Visual Studio update. This release addresses security and other important issues. Details can be found in the .NET Core release notes.
Visual Studio 2017 version 15.9.5 Service Release-- released on January 08, 2018
CVE-2019-0546 Visual Studio Remote Code Execution Vulnerability
A remote code execution vulnerability exists in Visual Studio when the C++ compiler improperly handles specific combinations of C++ constructs. An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user. If the current user is logged on with administrative user rights, an attacker could take control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights. The security update addresses the vulnerability by correcting how the Visual Studio C++ compiler handles certain C++ constructs.
Visual Studio 2017 version 15.9.4 Service Release-- released on December 11, 2018
CVE-2018-8599 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability
An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector Service improperly handles certain file operations. An attacker who successfully exploited this vulnerability could gain elevated privileges. To exploit this vulnerability, an attacker would require unprivileged access to a vulnerable system. The security update addresses the vulnerability by ensuring the Diagnostics Hub Standard Collector Services properly impersonates file operations.
Visual Studio 2019 Release
Fixed Issues
See all customer-reported issues fixed in Visual Studio 2017 version 15.9.
Visual Studio For Mac Os
Known Issues
See all existing known issues and available workarounds in Visual Studio 2017 version 15.9.
Feedback
We would love to hear from you! For issues, let us know through the Report a Problem option in the upper right-handcorner of either the installer or the Visual Studio IDE itself. The icon is located in the upper right-hand corner.You can make a product suggestion or track your issues in the Visual Studio Developer Community, where you can ask questions, find answers, and propose new features.You can also get free installation help through our Live Chat support.
Blogs
Take advantage of the insights and recommendations available in the Developer Tools Blogs site to keep you up-to-date on all new releases and include deep dive posts on a broad range of features.
Visual Studio 2017 Release Notes History
Visual Studio For Mac 2017
For more information relating to past versions of Visual Studio 2017, see the Visual Studio 2017 Release Notes History page.