TDS Classic 5.6 Feature Spotlight - Prevent Deployment of Incorrect Assemblies

March 06, 2017 | Joe Hicks

How many times have you run into a solution that included a new project, one that relied on an assembly that didn’t match what your site was running?

In the case of Sitecore assemblies or latest Nuget packages, maybe someone on the team added a project with a different Newtonsoft dll than you were expecting. Or even worse, added a reference to an assembly that is sitting somewhere on their file system that doesn’t match the version on your site.

This feature, which is new in TDS 5.6, will prevent a solution from deploying unless all assemblies (except the excluded assemblies we allow you to specify) match what exists in your webroot. If the assembly does not exist there at all it can be deployed, but what we are doing here is making sure our core assemblies aren’t being changed without us knowing.

All you have to do is check the Enable Assembly Validation checkbox under the Environment Validation tab in your TDS project settings and you are good to go. You can add in a comma separated list of any assemblies you want to ignore in the box underneath.

TDS Classic Enable Assembly Validation Checkbox

What I have done here is include a reference to an older version of Sitecore.Kernel.dll in my project and have attempted to deploy the code.

TDS Classic Assembly Build Error

As you can see it has caused a build error and made us aware that the target assembly does not match the assembly we are trying to deploy. Basically, TDS checked the version of every assembly before deploying and because the assembly version was different than the assembly in the Sitecore instance, the build failed before deploying any files.

There are several new features in TDS Classic 5.6 that are geared toward improving developer productivity. Check out the posts on Quick Push and Project Item Report, or just skip to the best part and download TDS Classic 5.6 today.

TDS Classic TDS 5.6 development feature

Related Blog Posts

TDS Classic How-To: Disable Automatic Code Generation
Code Generation is automatically triggered after every change in the TDS Project tree. If a project contains many items, users can disable this feature for their convenience.
TDS Classic Sitecore Deploy Folder
Sitecore Deploy Folder is a setting, located in the build tab of the TDS Classic Project's Properties page, and used to tell TDS Classic where the webroot is located.<br>
TDS Classic Builds on Jenkins Build Server with NuGet Packages
Our simple scenario includes 2 developers using TDS Classic and checking-in changes to source control. The Jenkins build server takes the changes and performs the build, and then deploys the created package to two Sitecore environments.
Features to Improve Sitecore Development: TDS Classic Strikes Back
Each and every feature in TDS Classic is aimed at helping developers. Whether the feature is out front or running quietly in the background the goal is always the same: make the development experience better. &nbsp;&nbsp;
Feydra and the Virtual Sandbox
Feydra virtualizes all front end assets (css, js &amp; cshtml) of a Sitecore instance. With Feydra, front-end developers can commit their changes to Source Control without requiring the intervention of a back-end developer. We call it a virtual sandbox.&nbsp;
Feydra Frequently Asked Questions
Answering a number of excellent questions we've gotten from the community regarding Feydra, including how long it takes to set up a Feydra environment and how to install the product.&nbsp;
TDS Classic Features to Improve Sitecore Development
Each version of TDS Classic comes with the same goal: to make Sitecore development and, by extension, developers, lives easier. Every feature in our products is aimed at making the process better - some of these features aren't quite as well-known as others, but they all help smooth and improve the development experience.
Deployment Properties and the Deployment Property Manager
When working with TDS Classic, you will eventually need to deploy your items to a Sitecore instance and you might not want the default behavior of every item in your TDS project deploying every time. This is where the TDS Sitecore Deployment Property Manager comes in!
Feydra: A Front-End Assessment
Feydra allowed me to start building the front-end in a very short time with no Sitecore experience, and it let me use tools that I was comfortable and familiar with.
TDS Classic How-To: Use the HedgehogDevelopment.TDS NuGet Package
The HedgehogDevelopment.TDS NuGet Package allows you to build TDS projects, without the need of installed TDS on the build server machine.
Feydra: A Quick Start Guide
A step-by-step guide for installing, configuring and, most importantly, using Feydra from the front-end.
Feydra from the Front-End
Feydra eliminates common roadblocks for designers and front-end developers working on Sitecore projects by getting them up and running more quickly and allowing them to use the development environment and workflow tools they prefer.&nbsp;
TDS 5.6 Feature Spotlight - Project Item Report
This feature, new to TDS Classic 5.6, allows you to create a report of all items in the TDS Classic project.&nbsp;
TDS: The Evolution of Auto-Sync
Auto-Sync has been described as a new feature, but in reality has existed in TDS since 2010 and has taken a new form in TDS 5.5, due to be released March 22, 2016
Team Development for Sitecore Webinar
Our Sitecore MVPs Charlie and Sean recently did a demo of TDS to all Sitecore partners. We recorded the demo to share with the world.