microsoft / DirectXTK

The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++
https://walbourn.github.io/directxtk/
MIT License
2.57k stars 511 forks source link

Retire Windows 8.1 Store, Windows phone 8.1, and VS 2013 projects #47

Closed walbourn closed 6 years ago

walbourn commented 8 years ago

At some point we should remove support for these older versions in favor of UWP apps

DirectXTK_Windows81.vcxproj DirectXTK_WindowsPhone81.vcxproj DirectXTK_XAMLSilverlight_WindowsPhone81.vcxproj

This would also be a good time to drop VS 2013 entirely:

DirectXTK_Desktop_2013.vcxproj DirectXTK_Desktop_2013_DXSDK

Please put any requests for continued support for one or more of these here.

char1estan commented 8 years ago

Please continue support for DirectXTK_Windows81.vcxproj. If the NuGet Package is removed, please give a link for project to project references. As for my part, I would pull the 30 June 2016 as backup also. Thanks.

walbourn commented 8 years ago

Why are you targeting Windows 8.1 Store rather than Windows 10 UWP? For games, for example, Windows 10 is at 43% (not including any Xbox One devices), while Windows 8.1 is at 11%.

In any case, when we retire support for older platforms the existing NuGet packages and older releases will still be available. it just means future updates won't include those older platforms. For example, the Windows phone 8.0 NuGet is still online.

char1estan commented 8 years ago

Yes, eventually we will upgrade to it. FYI, we are now converting DirectX 9 codes (which uses the Legacy DirectX SDK) to DirectX 11 (Win32), mostly done. It would be hard for us to migrate from DirectX 9 to DirectX 11 (Windows 10) straight away. This transition is required in order to finally upgrade to Windows 10 UWP. We just need more time. Glad to hear that the existing NuGet packages will still be there.

You had provided me an useful statistic which I could propose for our next transition phase for next year. Thanks Chuck for the prompt reply!

walbourn commented 8 years ago

Note the data is from the Steam hardware survey. It's a pretty good indicator of the PC gaming market mix, although not representative of all market particularly enterprise.

walbourn commented 7 years ago

Based on NuGet telemetry, Windows Store 8.1 and Windows phone 8.1 packages are still getting picked up, so I'll likely keep VS 2013 around until whatever VS after 2017 comes out.

walbourn commented 7 years ago

Note that according to the Microsoft lifecycle website, mainstream support for Windows phone 8.1 ended July 11, 2017.

walbourn commented 6 years ago

This change would let me use more brace initialization in cases that don't currently work for VS 2013, as well as remove a few _MSC_VER guards because VS 2013 doesn't support =default for move ctors

walbourn commented 6 years ago

The upcoming April 2018 release will likely be the last one that supports Visual Studio 2013, Windows Store 8.1, or Window Phone 8.1

walbourn commented 6 years ago

I can also replace the throw() usage with noexcept added in this commit when VS 2013 support is removed.

In C++17, throw(...) and throw(x,y,z) usage have been removed (they were deprecated in C++14 in favor of noexcept). The standard still requires throw() to be considered an alias of noexcept. Since noexcept is not supported until VS 2015, using throw() solves the issue.

walbourn commented 6 years ago

See this blog post

walbourn commented 6 years ago

Can use %zu instead of %Iu for printf format strings as well with the VS 2015 minimum.

walbourn commented 6 years ago

See this pull request