SharpDX v4.0.0 Release Notes
Release Date: 2017-05-29 // almost 7 years ago-
Overview
๐ This new release of SharpDX contains:
- ๐ Several bug fixes, see the full list below
- ๐ท A migration of the build system to VS 2017
- โ Added support for the .NET Core Platform (
netcoreapp1.0
,netstandard1.1
,uap10
)
๐ This release is the dedicated work of external contributors, thanks a lot for their work!
The binaries are accessible on nuget.
๐ Changelog since v3.1.1
๐ Build
Comments
- โ Add inherit on basic disposes and tostring (changes)
- ๐ Fix include path in order to remove some warnings in visual studio (changes)
- ๐ Fix path on compositor (changes)
Direct2D1
- adaptation mapping (changes)
Direct3D11
- adaptation mapping (changes)
Direct3D12
- โ Add code comments and fix include path where relevant (changes)
Doc
- ๐ Fix documentation comments on function reflection. Add comment for return parameter (changes)
General
- ๐ Restored generate documentation (changes)
Misc
- โ Add desktop check and documentation to CapturePhotoConfirmation. (changes)
- โ Add inherit for Size2F ToString (changes)
- โ Add missing TypeExtensions file (changes)
- โ Add Rebuild target to SharpDXGen (changes)
- โ Add support for net40 target (issue #877) (changes)
- โ Added build output for .NET Core apps and UWP apps for the core SharpDX library. Refactored some of the common properties into MSBuild .props and .targets files. (changes)
- โ Added convenience mappings for capture sink methods that SharpGen didn't generate. (changes)
- โ Added documentation for wrappers. (changes)
- โ Added IFormattable to FourCC to provide customised string representation when building Media Foundation GUIDs. (changes)
- โ Added mappings for IMFCaptureEngine and related APIs. (changes)
- โ Added public Initialize method onto CaptureEngine. (changes)
- โ Added shadows and vtables for callback interfaces. (changes)
- โ Added useful constructors for the CaptureEngineClassFactory and the CaptureEngine. (changes)
- โ Added vswhere executable to repo. (changes)
- ๐ Changed all references to GCC Xml outside of the CastXml class to refer to CastXml. References in CastXml.cs stay because we are using the GCC-XML compatible output format. (changes)
- ๐ Changed base package to use new project system. Currently builds on .net45 and netstandard1.1 (changes)
- ๐ Changed SharpDX.Tests assembly to make tests discoverable in VS. (changes)
- ๐ Changed solution structure and SharpDX.build file to set up a build structure that generates NuGet packages in the Bin folder. (changes)
- ๐ Cleaned up project style and removed now-unused .nuspec file (package info is in the .csproj and .props files) (changes)
- ๐ Cleaned up SharpGen code gen for the different app types. Still a little glitchy, but is better than before (doesn't overwrite itself). (changes)
- ๐ Converted build script to a cmd file. (changes)
- Converted D3D10 to the new project system. (changes)
- Converted DirectComposition to the new project system. (changes)
- Converted SharpDX.Desktop to the new project system. (changes)
- ๐ CoreCLR support: replaced HandleRef by IntPtr in Pinvoke routines as HandleRef is not present in CoreCLR/CoreFX. (changes)
- ๐ Enabled binding APIs up to Windows 10 Redstone 1 (Anniversary Edition). Now bindings for all APIs available as of 3/16/2017 will be generated. (changes)
- ๐ Fix appveyor.yml (changes)
- ๐ Fix code comments for color, and add alpha description (changes)
- ๐ Fix sharpdx.DirectComposition project metadata. (changes)
- ๐ Fixed appveyor artifact path. (changes)
- ๐ Fixed artifact path for NuGet Packages (changes)
- ๐ Fixed Assembly mapping file checker to correctly detect changes and generate for the correct app type. (changes)
- ๐ fixed help text BoundingBox -> BoundingSphere (changes)
- ๐ Fixed paths in build script (changes)
- ๐ Fixed PtrToStringAnsi and PtrToStringUni to correctly return null-terminating string instead of always returning string with maxLength chars (changes)
- ๐ fixed readme.md (changes)
- Freeing allocated string in DebugName setter (changes)
- Fully populate derived structs (changes)
- ๐ Got CastXML working to process the headers. Only a few glitches here and there that need to be fixed. (changes)
- ๐ Improved CapturePhotoConfirmation mapping. (changes)
- Making progress on getting sharpgen's detection of not needed work (only gen when needed) working correctly again. (changes)
- Matrix3x2.Multiply now behaves like other Matrix.Multiply functions (changes)
- ๐ Moved AssemblyInfo into the .props file. (changes)
- ๐ Moved UWP support targets into SharpDX.targets (changes)
- ๐ Moved XAudio2 to the new project system. (changes)
- ๐ Moved XInput over to the new project system. (changes)
- Ported over DirectInput to new project system. (changes)
- Ported SharpDX.Mathematics over to the new project system. (changes)
- Ported SharpDX.RawInput over to the new project system (net45 only because of WinForms dependency). (changes)
- Provide mapping to IDWriteFontFallback::MapCharacters method (changes)
- Re added conditional code signing. (changes)
- RectangleF.Contains now includes right and lower border (changes)
- ๐จ Refactored code to use vswhere to find any compatible VS2017 or newer installation for the VC toolset location. (changes)
- ๐จ Refactored running SharpGen into a seperate MSBuild project because there were issues with the MSBuild glob includes finding the files if they were newly created before. (changes)
- โ Remove parameter mapping. (changes)
- โ Remove Windows 10 SDK requirement from the SharpGen batch script (this requirement is enforced with the Mapping files) (changes)
- โ Removed dead code in SharpGen. (changes)
- โ Removed GCCXML from the repo (changes)
- โ Removed unused (outdated) build scripts. (changes)
- โก๏ธ Update DirectSound to the new project system. (changes)
- โก๏ธ update maping on window 10 SDK 15063 (changes)
- update mapping for NTDDI_WIN10_RS2 (changes)
- โก๏ธ Update README to include requirements to build this branch (for when this is merged into master) (changes)
- โก๏ธ Update to new Reflection API that works equally well under both the .NET Framework and CoreCLR. (changes)
- โก๏ธ Updated appveyor.yml (changes)
- โก๏ธ Updated capture attributes to more accurate types. (changes)
- โก๏ธ Updated D3D11.Effects to the new project system. (changes)
- โก๏ธ Updated Direct2D1 project to new project system. (changes)
- โก๏ธ Updated Direct3D11 to the new project system. (changes)
- โก๏ธ Updated Direct3D12 to the new project system. Removed some unneeded props from a previous build change. (changes)
- โก๏ธ Updated Direct3D9 to use the new project system. Added in an MSBuild property to allow projects to opt out of SharpGen (i.e. when their code is not being generated). (changes)
- โก๏ธ Updated DirectManipulation to the new project system (changes)
- โก๏ธ Updated DXGI project to new project system. (changes)
- โก๏ธ Updated enumeration mapping. (changes)
- โก๏ธ Updated mappings to fix an issue in API partitioning that showed up with the new (multi-gen) code gen process. (changes)
- โก๏ธ Updated MediaFoundation to the new project system. (changes)
- โก๏ธ Updated project files to not refer to $(SolutionDir) so that dotnet restore would work. Added dotnet restore to the build script. (changes)
- ๐ Updated props file to make packages pre-release. Made base version 4.0.0 because of breaking backward compatibility. (changes)
- โก๏ธ Updated SharpDX.Animation and SharpDX.D3DCompiler to new project system (incl nuget package generation) (changes)
- โก๏ธ Updated SharpDX.Animation to use the new project system. (changes)
- โก๏ธ Updated SharpGen to generate different app configurations based on a command line flag. Modify targets and project files to utilize this flag and optimally build the code with the different APIs in a single build. (changes)
- โก๏ธ Updated variant.cs for issue #787 (changes)
SharpDX.Direct3D12
- โ Add constructor overload on StaticSamplerDescription, to take a SamplerStateDescription as input. (changes)
- โ Add overloads for SetDescriptorHeaps and SetVertexBuffers in GraphicsCommandList (changes)
SharpGen
- "bases" Attribute is optional (changes)
- "extern" attribute now only indicates an explicit extern storage qualifier. Use "inline" as it is equivalent for SharpDX, for now (changes)
- โ Add CastXML binaries (CastXML/CastXML@c6cf62a) (changes)
- โ Add fundamental type "bool" (changes)
- Anonymous declarations have empty names in CastXML (changes)
- Array types don't have "size" attribute anymore. "max" contains the correct dimension. (changes)
- Clang lists attributes in reverse order (GCC too?). Also, writable/readable are pre-conditions (changes)
- Correctly handle literals in Guids (changes)
- Execute CastXML instead of gccxml (changes)
- ๐ Fix path for include, to remove warnings as file was not found (changes)
- ๐ Handle format of C++ floating point literals (changes)
- In CastXML, init attributes contain expressions. Cast to correct type if necessary (changes)
- ๐ Use "annotate" instead of "gccxml" attribute (changes)