Improved Unit Testing with CodePorting.Native Cs2Cpp 19.7

CodePorting.Native Cs2Cpp is a porter application that quickly ports C# project to C++ with high accuracy. We’re happy to announce CodePorting.Native Cs2Cpp 19.7 release. We’ve made some major enhancement and fixes in this release responding to the issue reported in previous releases and feedback of our customers, that improved the performance and stability of the application.

In this release, we have reworked the System::Globalization subsystem to better match to .Net implementation and introduced a number of new encodings are added into the System::Text submodule. Now it supports all the encodings supported in dotNET 4.6.1 except “x-Europa”. There are some other notable fixes in this release along with above shared enhancements, those improved the Unit Testing in CodePorting.Native Cs2Cpp for fast and consistent results. To get complete details of the changes, please check the release notes.

Improvement and Fixes

These are other notable new improvements and fixes introduced in this regular monthly release:

  • System::Globalization subsystem is reworked to better match to .Net implementation
  • Multiple previously unsupported encodings are added into System::Text submodule
  • ValueSource NUnit attribute is supported by porter
  • Initializer list for user IList-implementing classes is supported in porter
  • Test methods alignment issues are fixed in ported code
  • A regression is fixed which is introduced in 19.6 version which broke porting of initializer lists with braces inside them
  • ‘generatedlist_template’ porter option is supported by porter making it possible to enlist generated files
  • Most VS warnings of /W4 level are fixed or suppressed for both library and ported code
  • Imaging::PixelFormat::Format32bppPArgb value is supported by multiple drawing algorithms
  • Porting of IntPtr initializers is fixed
  • System::Compare() method is fixed for NaN values
  • Behavior of Fix System::Decimal::Round() is brought in line with .Net one
  • Decimal behavior for corner cases (e. g. porting direct initialization) is fixed
  • System::BitConverter::Int64BitsToDouble() method is supported
  • System::Threading::ThreadInterruptedException class is supported
  • Metadata is added for System::Drawing::Imaging::PixelFormat enum
  • Assert.Inconclusive NUnit method is supported by porter
  • Some headers unrelated to .Net classes are dropped from package

Public API and Backward Incompatible Changes

  • Classes inside System::Globalization namespace are reworked. Implementation-specific details not matching .Net public API may have been removed
  • include/zip headers are dropped as they are not required for ported code to work

Try it Out and Share your Feedback

Still haven’t tried CodePorting.Native Cs2Cpp? The free trial is right here waiting for you to give it a try. All you need is to sign up with the and visit our developer resources for a quick start:

Don’t forget to share your feedback, your feedback helps shape our roadmap because it is important to us to always deliver a product that satisfies your needs.