This is a migrated thread and some comments may be shown as answers.

Partially different build numbers

14 Answers 187 Views
Installer and Visual Studio Extensions
This is a migrated thread and some comments may be shown as answers.
Heiko
Top achievements
Rank 1
Iron
Veteran
Heiko asked on 03 Feb 2016, 05:45 PM

Hi!

I just installed the latest release of UI for WPF (Q1 2016) via control panel. What I noticed is that most of the installed assemblies are compiled on 01/12/2016, however some of them are compiled on 01/06/2016. This also means that the assemblies have different product versions.

Example (from Binaries.NoXaml/WPF45): Telerik.Windows.Control.dll (2016.1.112.45), Telerik.Windows.Documents.Core.dll (2016.1.106.45).

This never happened before, all files of a release normally had the same build date. Since I build my projects using special target files including the version number of each assembly this is very annoying. Please correct this in the next build.

Regards
Heiko

14 Answers, 1 is accepted

Sort by
0
Boby
Telerik team
answered on 04 Feb 2016, 08:12 AM
Hi Heiko,

Document processing libraries (DPL) - RadWordsProcessing, RadSpreadProcessing, RadPdfProcessing - which Telerik.Windows.Documents.Core is part of, were originally started as part of the WPF/Silverlight suite. Then we realized that the project is essentially cross-platform and customers on other platforms (ASP.NET, WinForms, etc.) could benefit from it. 

As part of the effort to re-use the binaries among the platforms, Document Processing builds was separated from the main WPF build, thus the difference in the versions.

We plan to extend this (for DPL assemblies) by fixing the AssemblyVersion for each release (e.g. something like 2016.2.0.0 for 2016 Q2, 2016.2.1.0 for 2016 Q2 SP1) and modifying just the AssemblyFileVersion based on the date of the build.
 
Let us know what you think of the planned changes, and would they interfere with your current process.

Regards,
Boby
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
0
Heiko
Top achievements
Rank 1
Iron
Veteran
answered on 04 Feb 2016, 10:09 AM
Hi Boby, and thanks for the reply.

Let me explain how this affects my build process. To make the whole project clearer I split it up into many modules; each module is a separate project. Now each project has references to many assemblies like the ones of Telerik. When a new version of Telerik assemblies comes out it means checking each project for the right references and updating them. To simplify this I created a file called "telerik.targets" and define some variables like this:

01.<?xml version="1.0" encoding="utf-8"?>
02.<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
03.  <PropertyGroup>
04.    <IsPrivate Condition=" '$(IsPrivate)' == '' ">False</IsPrivate>
05.    <TelerikPath>D:\DotNetTools\Telerik\UI for WPF Q1 2016\Binaries.NoXaml\WPF45\</TelerikPath>
06.    <TelerikVersion>Version=2016.1.112.45</TelerikVersion>
07.  </PropertyGroup>
08.  <ItemGroup>
09.    <Reference Include="Telerik.Windows.Themes.Office2013, $(TelerikVersion), Culture=neutral,...">
10.      <HintPath>$(TelerikPath)Telerik.Windows.Themes.Office2013.dll</HintPath>
11.      <Private>$(IsPrivate)</Private>
12.    </Reference>
13....


You see that in lines 5 and 6 I define where to find the referenced assemblies and the version number, and I use these variables later on in the <Reference>...</Reference> part. In each of my projects I have a single line to include all necessary Telerik assemblies:

<Import Project="..\telerik.targets" />

Moving to a new version now is very easy: I just have to change one line to the new version number in the "telerik.targets" file, then all of my projects are up-to-date. 

When Telerik starts to change the versioning scheme it a) should be documented in the release history and b) at least be unique. Maybe there is a better solution then someone can point me into the right direction.

Regards
Heiko
0
Accepted
Boby
Telerik team
answered on 05 Feb 2016, 11:47 AM
Hi Heiko, 

I can understand the problem now. From now on, you should expect the version of the DPL libraries - that is the following:
- Telerik.Windows.Documents.Core
- Telerik.Windows.Documents.Fixed
- Telerik.Windows.Documents.Flow
- Telerik.Windows.Documents.Flow.FormatProviders.Pdf
- Telerik.Windows.Documents.Spreadsheet
- Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml
- Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf
- Telerik.Windows.Zip
- Telerik.Windows.Zip.Extensions

to be slightly different than the version of the other WPF libraries.

We decided that the change is too small (and kind of internal) to be included in the release notes, but looking at your scenario I consider this decision wrong. We will carefully document and include in release notes any subsequent changes in the assembly versioning.

To this particular case, I guess you could add two different variables - TelerikVersion, and TelerikDplVersion, and use the latter only for references to the aforementioned assemblies.

Regards,
Boby
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
0
Heiko
Top achievements
Rank 1
Iron
Veteran
answered on 05 Feb 2016, 12:22 PM

Hi Boby,

thanks for your answer. The "TelerikDplVersion" was the trick I already used. :-)  If I know that these libraries havedifferent version numbers I can take this into account for my build process.

Regards
Heiko

0
EDILSON MARTINS
Top achievements
Rank 1
answered on 22 Aug 2016, 06:02 PM
Hello Heiko,

I wonder how was your code because'm having the same problem.

I developed a page to read a .xlsx file that uses the Telerik.Windows.Documents.Spreadsheet.dll version 2016.2.606.45 WPF and to generate a .xlsx from a PivotGrid it uses Telerik.Windows.Documents.Spreadsheet.dll Ajax \ AdditionalLibraries version 2016.2.421.45.

Thank you very much in advance.

Regards,
Igor Spadoni
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 22 Aug 2016, 07:16 PM

Hello Boby,


How can I reference two versions of the same Telerik.Windows.Documents.Spreadsheet.dll?

I developed a page to read a .xlsx file that uses the Telerik.Windows.Documents.Spreadsheet.dll version 2016.2.606.45 WPF and to generate a .xlsx from a PivotGrid it uses Telerik.Windows.Documents.Spreadsheet.dll Ajax \ AdditionalLibraries version 2016.2.421.45.

Thank you very much in advance.

Regards,
Igor Spadoni

0
EDILSON MARTINS
Top achievements
Rank 1
answered on 22 Aug 2016, 07:17 PM

Hello Boby,


How can I reference two versions of the same Telerik.Windows.Documents.Spreadsheet.dll?

I developed a page to read a .xlsx file that uses the Telerik.Windows.Documents.Spreadsheet.dll version 2016.2.606.45 WPF and to generate a .xlsx from a PivotGrid it uses Telerik.Windows.Documents.Spreadsheet.dll Ajax \ AdditionalLibraries version 2016.2.421.45.

0
Boby
Telerik team
answered on 24 Aug 2016, 11:58 AM
Hi Igor ,

You can achieve this using the "extern alias" construct. A good tutorial is this one.

As a whole, we are trying to keep the suites in sync - e.g. ASP.NET AJAX and WPF to use the latest Document Processing version, but ASP.NET AJAX didn't manage to update on time for this particular version.

Regards,
Boby
Telerik by Progress
Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 24 Aug 2016, 01:02 PM
Hello Boby,

Good Morning.

Thank you for attention.

I realized these changes, but Visual Studio will not let me add the two dll as is reported in the tutorial. The following image of error. I removed the references and tried to add them at the same time and the error is the same.

The problem is because I use the Telerik.Windows.Documents.Spreadsheet (2016.2.606.45) to load an .xlsx for RadGrid and version (2016.2.421.45) to extract to .xlsx one RadPivotGrid using the "ExportToExcel".

I was unable to execute the command line of the first link.

Regards,
Igor Spadoni
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 24 Aug 2016, 01:21 PM
Image
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 26 Aug 2016, 11:16 AM
Hello Boby,

Is there any other solution to the problem? I can not add both versions to the visual studio project itself blocks the addition.

I still can not understand how to reference the two dll in the project file, as you suggested in response "To this particular case, I guess You could add two different variables - TelerikVersion, and TelerikDplVersion, and use the Latter only for references to the aforementioned assemblies. ". This is a possibility?

Regards,
Igor Spadoni
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 26 Aug 2016, 12:35 PM
Hello Boby,

Good Morning.

I managed to solve the problem. I do not know if you said that at some point, but follow the procedures I realized.

I referenciei project in the DLL's WPF and installed in the GAC all DLL's that are in the AdditionalLibraries AJAX.NET folder. That way everything went perfectly.

Thanks for listening.

Regards,
Igor Spadoni
0
Tanya
Telerik team
answered on 26 Aug 2016, 12:42 PM
Hi Igor,

Another option to add the different assemblies to the references of your project is by modifying the .csproj file. You can add them manually and set an alias as demonstrated below:
<Reference Include="Telerik.Windows.Documents.Spreadsheet, Version=2016.2.421.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <SpecificVersion>True</SpecificVersion>
  <HintPath>C:\Binaries\WPF\Telerik.Windows.Documents.Spreadsheet.dll</HintPath>
  <Aliases>NewSpreadsheet</Aliases>
</Reference>
<Reference Include="Telerik.Windows.Documents.Spreadsheet, Version=2015.1.0225.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <SpecificVersion>True</SpecificVersion>
  <HintPath>C:\UI for WPF Q1 2015\Binaries\WPF40\Telerik.Windows.Documents.Spreadsheet.dll</HintPath>
</Reference>

Regards,
Tanya
Telerik by Progress
Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
0
EDILSON MARTINS
Top achievements
Rank 1
answered on 26 Aug 2016, 02:16 PM
Tanya,

Good Morning.

I had already made this change, but it did not work. When I opened the Visual Studio appeared two versions of the DLL tab of references, but one of them was with warning sign, with reset and without the correct path version.

I managed to solve the GAC installing all DLL's of AdditionalLibraries the Ajax.Net folder.

Thank you.

Hugs,
Igor Spadoni
Tags
Installer and Visual Studio Extensions
Asked by
Heiko
Top achievements
Rank 1
Iron
Veteran
Answers by
Boby
Telerik team
Heiko
Top achievements
Rank 1
Iron
Veteran
EDILSON MARTINS
Top achievements
Rank 1
Tanya
Telerik team
Share this question
or