# 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

(130)
Visual Studio
2013, 2012, 2010
(197,225)
7/20/2014
2.5.11
View
Description
Reviews (130)
Q and A (249)
Sort by:

| August 14 2015

Great Package.It reduces my lot of manual task for my windows application

| July 31 2015

Great plugin, a life saver :)

by ronnotel | July 18 2015

I've been coding large financial trading frameworks in VS/C# since .NET 1.1 days (12/13 years). From this perspective, I can affirmatively state that Slow Cheetah is by far the most productive package that is not currently integrated into the VS tool. I'm walking through a major rollout now involving five different staging environments and over twenty different server configs. Without Slow Cheetah, the other 35 people in the deployment team waiting on my builds would be left high and dry while I tried to manage the configs by hand. VS management - what the *hell* are you thinking? Integrate!

| June 30 2015

Excellent extension! Definitely essential to my VS toolbelt going forward. Works like a charm in VS2015 too. Just needed to tweak the vsextension xml inside the package :)

| 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.

1 - 20 of 130 Items

• Need SlowCheetah Installation Help
2 Posts | Last post Thu 5:28 PM
• 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
• VS2015 Support
2 Posts | Last post August 25, 2015
• Excellent project. Is there an e.t.a for VS2015 support?
• Visual Studio 2015 Support: https://visualstudiogallery.msdn.microsoft.com/05bb50e3-c971-4613-9379-acae2cfe6f9e
• Transformed XML no longer deployed via Web Deploy
1 Posts | Last post August 17, 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.
• VS2013 Update 5
1 Posts | Last post July 30, 2015
• Hi,

Does it support VS2013 Update 5 ?

Regards
Piotr
• VS2015
1 Posts | Last post July 21, 2015
• Is there an ETA when this will be updated to support VS 2015?
• Preserve format of original config file
1 Posts | Last post June 16, 2015
• Is there some way to preserve the format of the original config file?

We've got the VS option "Align attributes each on separate line" for XML files

But after running a web config transform, the replaced section goes back to a single line 
• TransformXml skipped due to false condition
3 Posts | Last post June 04, 2015
• I have a problem with log4net config files not being updated by SlowCheetah in Visual Studio 2010.  I'm using SlowCheetah 2.5.10.3.  When I look at diagnostic build output, I receive the message:

Task "SlowCheetah.Xdt.TransformXml" skipped, due to false condition; (Exists('%(RelativeDir)%(Filename).\$(Configuration)%(Extension)')
and '%(Link)'!='' ) was evaluated as (Exists('Log4Net.Prod.config')
and '' != '').

I have two questions:

1)  Where is SlowCheetah getting the "Prod" configuration from?  I'm using the "Release" build profile in Visual Studio 2010.

2)  In the csproj file for my project, I see no references to a "<Link>" element but the log4net config file is referenced in a "<None>" element.  Clearly Slowcheetah is finding the log4net.config file to attempt the transformation but won't the fact that there is no <Link> element always prevent the transformation from happening?

Thanks!

Tom
• Ok, since posting this, I answered my questions.  The above issue with the "<Link>" element isn't relevant to my problem at all.

Nevermind.  :)

Tom
• Hi Tom,

I am getting this same error. How did you fix it? Can you post your solution in this forum please for everyone's benefit?

Regards,
Pratik 
• Why "Debug" and "Release"?
4 Posts | Last post May 18, 2015
• I want to create transforms for each of our environments (e.g. "Dev", "QA", "Prod") and name them accordingly.  Having transforms named after the build configuration (e.g. "Debug" or "Release") doesn't work for us.  How can I set that up?
• You can name your build configurations "Dev, QA, Prod", once you have done that, then transform the app.config file and it will take the name of the build configs.
• Sorry Michael for the intrusion but I had the same issue.

Harag9,

I already did what you suggested but still only Debug and Release are getting transformed.  Once I use the environment specific config, the environment specific config files is just being copied instead of merging and transforming it with the main app.config.
• Apologies for the delay in replying. I'm like you and use 3 different configs (DEV,UAT,PROD) i create these in the build configuration, then right click on the app.config file to create the files app.dev.config etc (I then delete the debug & release versions & build configurations) so the solution only knows about the 3 configs I use, then to build I select the config "dev" and click build solution. This works for me and they seem to get transformed ok - I'm using VS2013.
• VS 2015 RC
1 Posts | Last post May 10, 2015
• Hi!
Visual Studio 2015 is RC now. Are you planning to support this VS version for this great extension?
Regards
Magnus
• Visual Studio 2015 CTP
1 Posts | Last post April 23, 2015
• Hi,

is a (beta) version of Slow Cheetah available for VS 2015 CTP already?
Will there be a version of Slow Cheetah for VS 2015 soon (after its release)?

Best regards
Markus
1 - 10 of 249 Items