Archived Forum Post

Index of archived forum posts

Question:

NuGet package chilkat-x64 version 9.5.0.59 not updated for the 4.6 Framework

Sep 26 '16 at 17:18

Hi Matt,

The NuGet package for chilkat-x64 version 9.5.0.59 contains an incorrect version (9.5.0.58) of the class library for the 4.6 Framework (and 4.6.1).

It might simply be incorrect file information, since I haven't tried to query the version from any of the internal methods. However the same NuGet package contains the correct version 9.5.0.59 for the other versions of .NET Framework. Hence my guess is that the class library for 4.6 was not updated.


Accepted Answer

It's actually 9.5.0.59. It's only the resource on the DLL itself that didn't get updated.

The actual assembly is v9.5.0.59. There are three places where version information exists in the .NET assembly:

  1. The resource. This is the ".rc" file that is in the Visual Studio project (for the Chilkat assembly) when it's built. This is what you see when you right-click on the DLL in Windows Explorer folder, select Properties, and then examine then select the "Details" tab. This is what didn't get updated.
  2. The Version property in the Chilkat API. This will be the correct version. It's a version embedded within the internal source of Chilkat, in a single place, and is the same for all builds across all operating systems, programming languages, etc. It's what you see in the LastErrorText. Whatever it reports is truly the version. If another "version" disagrees, then the Version property in the API is always to be believed.
  3. There's the version embedded in the AssemblyInfo.cpp internal source that's part of a .NET assembly build. Internally, it looks like this: "[assembly:AssemblyVersionAttribute("9.5.0.59")];"

Answer

Thanks! I did find out the reason it did not get updated. When Chilkat updates to the next new version, there is an automated procedure to edit all files that contain the version number in some way. This is for all possible builds across all programming languages, and therefore could involve project files, resource files, source files, etc. There is a master list of files where version numbers exist, and the Chilkat .NET 4.6 resource file was correctly in the list. HOWEVER -- the resource file happens to be stored using utf-16, and the search/replace was using utf-8, and therefore it was missed.. Now it is corrected, and future version changes won't get missed. Also, v9.5.0.60 is a patch that was just released, and this should have the version correct..