# SlowCheetah - XML Transforms

Free

## This package enables you to transform your app.config or any other XML file based on the build configuration. It also adds additional tooling to help you create XML transforms.. Written by: Sayed Ibrahim Hashimi, Chuck England and Bill Hiebert

(146)
Visual Studio
2013, 2012, 2010
(221,034)
7/20/2014
2.5.11
View
Description
Reviews (146)
Q and A (258)
Sort by:

| June 03 2015

| April 23 2015

by Tim Long | April 20 2015

5 stars, a genuinely useful tool whenever you need different connection strings, diagnostic logging (etc, etc) configuration for release vs. debug builds.

| March 17 2015

Hi Ibrahim,

Thanks for writing this great tool. I have a question regarding this tool.

Question 1:

How this tool will help if I am creating ONE setup project (msi project) for all my environments and have multiple configuration files ? How can I build and deploy in this case.

As far as I can see this tool works great if you are doing file copy deployment. It just does not make sense to create setup file (read msi) for each environment, if that route I am taking for this

Question 2:

I have 5 different applications (Three Console Applications, Two Windows Service and Two Web)

Can I keep a one master config file and update all these five applications without copying same settings to app.staging.confing likewise to all applications.

Again, it takes lot of time and create this tool, I myself struggled create such tool but it is far from the level you have reached.

Sree

| March 12 2015

ddd

| January 19 2015

| January 16 2015

I really like this tool for Visual Studio (both 2010 and 2013), and cannot understand Microsoft's reluctance to adopt this as a standard feature for all future versions of the IDE.

I found that for me, using the VSIXinstaller for each edition of Visual Studio I'm using, worked well to get it installed. And I have to make sure that custom XML-styled configuration files are marked with "Copy always" or "Copy if newer".

by 程湘之間 | January 06 2015

It's a very good add-on for Visual Studio.
Maybe making a formal part of Visual Studio will be a good idea.

| December 15 2014

Vote for this feature to be built into Visual Studio. Find out more here:

http://rehansaeed.co.uk/configuration-file-transforms-in-visual-studio-should-be-built-in/

| December 08 2014

| December 02 2014

Recently updated via nuget from :

<package id="SlowCheetah" version="2.5.10.3" targetFramework="net45" />

To

<package id="SlowCheetah" version="2.5.14" targetFramework="net45" />

and after this update, Slow Cheetah stopped transforming files within VS2013 Ultimate Update 4

I rolled back to 2.5.10.3 and it now works fine again.

| October 15 2014

The simple mechanisms for replacing parts of XML that are used by
msdeploy on web.config are equally useful with any other config files.
SlowCheetah does a great job of extending that functionality in a
transparent way to other files.

| September 04 2014

This extension has saved my countless hours setting up automated builds and continuous deployments. This is a must have if you need to do configuration file transforms during your build and deployment process.

by Gustin G | September 02 2014

Excellent tool - I use it in every project to achieve a clear configuration scenario.

| August 20 2014

Doesnt transforms, doesnt add new transforms, doesnt transform web.config as stated.

Soo, that's a no go im my environment

by Toons33 | July 21 2014

Terrific work -- the only problem with web.config can be solved with a little trickery (http://stackoverflow.com/questions/16225304/using-slowcheetah-config-transforms-on-web-config-in-a-3-5-web-forms-app).

THANK YOU SlowCheetah team.

| July 15 2014

Making things a lot easier for Selenium testing across different browsers:

http://testingisland.wordpress.com/2014/07/10/how-slowcheetah-can-help-with-your-selenium-tests/

| July 08 2014

| June 26 2014

Very useful. I like that it looks at the Publish Profiles, although be cautious when you rename a Profile, it does not rename the previously generated transform files. But you can always regenerate and delete the old.

by tomKober | June 24 2014

Works like a breeze. :)

21 - 40 of 146 Items

• Handling relative path
2 Posts | Last post September 16, 2016
• I like to use a relative path to publish to. Because it works well when tagging with SVN. But SlowCheetah don't seem to handle this? Or am I wrong?
• I mean it don't work with preview changes to Web.config..
• Previewing bug
1 Posts | Last post May 12, 2016
• There is a bug. SlowCheetah is unable to preview a transformation when the namespace declaration and the transformation are on the same element:

<someElement xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"  xdt:Transform="Replace" value="1" />

However the transformation happens successfully. So it's simply just a SlowCheetah bug
• Can slowCheetah handle external config files?
1 Posts | Last post May 11, 2016
• I noticed this was asked before with no answers.
If you have a few custom sections and you want to do this:

<section1 configSource="Config\section1.config" />
<section2 configSource="Config\section2.config" />
<section3 configSource="Config\section3.config" />

Then I couldn't get slowCheetah to handle this very simple transformation:

section1.config:

<section1
attribute1="1"
attribute2="YES"
/>

section1.Release.config:

<section1 xdt:Transform="Replace"
attribute1="2"
attribute2="NO"
/>

I think there is no root element to place the xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform" declaration.
I tried various things, all of them failed and made Slow Cheetah crash.

How does this scenario get handled?
• Is it possible to transform DOCTYPE?
1 Posts | Last post February 19, 2016
• I am applying transforms to a custom xml config file, but ran into a snag. How would I go about transforming this:

<!DOCTYPE ParameterSet [ <!ENTITY someValue "10"> ]>

into this:

<!DOCTYPE ParameterSet [ <!ENTITY someValue "20"> ]>

Thanks in advance for the help!
• .Config files and Source Control
2 Posts | Last post January 26, 2016
• Using TFS source control

The .config files used for Transforms do not appear to be under Source Control

NOTES
1. TFS is set up to include *.config files
2 app.config is in Source Control
• Hi,
having a TFS managed project with slow cheetah, too. Works without any problems. Have you checked the "detected adds" in your "pending changes"-view of Visual studio Team Exploer for your project? 
• How to remove slow cheetah from a project
1 Posts | Last post December 31, 2015
• Is there a way to remove slow cheetah from a project (ie. and not use app.config transorms)?
• SlowCheetah XML transform app.config at deploy stage
2 Posts | Last post October 19, 2015
• Hi all,

I use SlowCheetah 2.5.15 with VS2015 to manage an app.config file for a Win8.1 universal app in order to manage connectionStrings based on build config. Everything is ok about the transformation but at the deploy stage the wrong file is publish to the ..\AppX\ folder - i.e. the default app.config (with no transformation) is published ! Does anyone have a solution.

It seems that the target _ComputeAppxPackagePayload building _UnfilteredAppxPackagePayload and _CalculateInputsForGenerateAppxPackageRecipe list building _GenerateAppxPackageRecipeInput list contains the wrong file. This lead to have a HelloWorld.build.appxrecipe (my app is HelloWorld) with the wrong file - i.e. the app.config with non transformation !

Thx for your help. Let me know if you need the complete build log or HelloWorld.build.appxrecipe file.

• Hi opierrat,

Did you ever solve your problem?
• Transformed XML no longer deployed via Web Deploy
3 Posts | Last post October 19, 2015
• For years I've been working on project that uses SlowCheetah to transform XML files for on screen text.

During the Web Deploy process for Windows Azure - the files are transformed, copied to ASPNETCompileMerge, packaged and delivered to my Azure website. Nice and simple.

Recently this process has stopped working.

The files are clearly transformed and copied to the bin/app_data folder correctly. But when I take a look at the obj/BUILDXXX/Source/ASPNETCompileMerge/Source/App_Data I only see the untransformed version of XML document.

From there the wrong xml file is packaged and deployed to the server.

Any ideas? Comments? Anything? I've spent 5 full days trying to figure it out and I'm no closer now than when I started.
• Hi Justin,

I have the same problem!
Everything worked fine and now it stopped working.

Did you find a solution?

Thanks! 
• Sorry for the delay. Sorry, I never did find a solution. It's been a few weeks, did you find anything?
• How to configure for TFS2015?
1 Posts | Last post October 09, 2015
• Has anyone found any article explaining how to make this awesome product work on TFS2015 as part of a team build?
• Need SlowCheetah Installation Help
3 Posts | Last post September 22, 2015
• On a newly installed Visual Studio 2013 (Windows Server 2012), I have created a new Console project, then installed SlowCheetah 2.5.15 using the NuGet manager. I right-click on App.config file but I don't see the "Transform" menu option as I expect. The same happens in Visual Studio 2015. This has worked for me on other boxes. Any suggestions on how to debug this?
• fwiw, here is the Package Manager output after installing SC 2.5.15:

================
Attempting to gather dependencies information for package 'SlowCheetah.2.5.15' with respect to project 'ConsoleApplication1', targeting '.NETFramework,Version=v4.5.2'
Attempting to resolve dependencies for package 'SlowCheetah.2.5.15' with DependencyBehavior 'Lowest'
Resolving actions to install package 'SlowCheetah.2.5.15'
Resolved actions to install package 'SlowCheetah.2.5.15'
For adding package 'SlowCheetah.2.5.15' to project 'ConsoleApplication1' that targets 'net452'.
For adding package 'SlowCheetah.2.5.15' to project 'ConsoleApplication1' that targets 'net452'.
Adding package 'SlowCheetah.2.5.15' to folder 'c:\users\<name obscured>\documents\visual studio 2015\Projects\ConsoleApplication1\packages'
Added package 'SlowCheetah.2.5.15' to folder 'c:\users\<name obscured>\documents\visual studio 2015\Projects\ConsoleApplication1\packages'
Added file 'SlowCheetah.Transforms.targets' to folder 'Properties\SlowCheetah'.
Added file 'Properties\SlowCheetah\SlowCheetah.Transforms.targets' to project 'ConsoleApplication1'.
Added file 'packages.config' to project 'ConsoleApplication1'.
For adding package 'SlowCheetah.2.5.15' to project 'ConsoleApplication1' that targets 'net452'.
Executing script file 'c:\users\<name obscured>\documents\visual studio 2015\Projects\ConsoleApplication1\packages\SlowCheetah.2.5.15\tools\Install.ps1'...
Installing SlowCheetah to project [c:\users\<name obscured>\documents\visual studio 2015\Projects\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.csproj]

Name              : SlowCheetahToolsPath
Value             : $([System.IO.Path]::GetFullPath($(MSBuildProjectDirectory)\..\packages\SlowCheetah.2.5.15\tools\))
Condition         :
Label             :
Parent            : Microsoft.Build.Construction.ProjectPropertyGroupElement
AllParents        : {Microsoft.Build.Construction.Projec
• Its because that the Nuget package does not provide the Visual studio extension for previewing the transforms, it only provides transforms on build. In order to preview the transforms you have to install the visual studio extension called SlowCheetah found on visual studio gallery or using the VS extension manager.
1 - 10 of 258 Items