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

(125) Review
Visual Studio
2013, 2012, 2010
Download (189,184)
7/20/2014
2.5.11
View
E-mail Twitter del.icio.us Digg Facebook
Add to favorites
Description
Reviews (125)
Q and A (243)
Sign in to write a review
Sort by:

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

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

Please let me know. I am waiting for your response.

Sree

by jhjhkl758 | March 12 2015

ddd

by Cosmin Vana | January 19 2015

by Victor Lindsey | 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.

by Rehan Saeed | 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/

by Omar Gameel Salem | December 08 2014

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

by Josh Gallagher | 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.

by chris.morgan | 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.

by Thomas TwoAngel Rud Rasmussen | 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.

by Victor Pascual Villanueva | 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/

by Dmitriy N. Dokshin | July 08 2014

by Frank Fajardo | 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. :)

by dkehring | June 24 2014

Simply does not work with ClickOnce. I have not found any information that shows how to make XML transformations work with ClickOnce. You can run the transform preview and it looks correct, but the .config.deploy file generated by ClickOnce is the original, untransformed config file. Very frustrating and completely unusable in my situation.

1 - 20 of 125 Items   
Sign in to start a discussion


  • Build error with Slow Cheetah
    1 Posts | Last post June 04, 2013
    • I am trying to run msbuild on Hudson build server. The builds fail with following error - 
       D:\Hudson\jobs\MyProj\ASSEMBLIES\SlowCheetah\SlowCheetah.Transforms.targets(101,5): error : Name cannot begin with the '<' character, hexadecimal value 0x3C. Line 23, position 1. [D:\Hudson\jobs\MyProj\MyProj.csproj]
      
      The same project however builds from Visual Studio. Any idea what might be wrong here?
  • SlowCheetah does not transform during build
    2 Posts | Last post May 30, 2013
    • Slow Cheetah has worked perfectly for over a month. Now, all of the sudden, my builds are not transforming. I do have the configuration setup on multiple projects within the solution. Both projects have the associated Debug & Release configuration files associated with the parent app.config file.
      
      Here is an example of my transformation statement.
      
      <connectionStrings>
          <add name="MSSQL" connectionString="ConnectionStringHere" xdt:Transform="Replace" xdt:Locator="Match(name)"/>
        </connectionStrings>
      
      After building in either Debug or Release, I am checking the (ApplicationName).exe.config file. Here, the values do not change. I have even selected the "Preview Transformation" and the preview works without failure. It seems like Slow Cheetah is not getting the call during build.
      
      I have uninstalled and re installed the Slow Cheetah extension. No luck.
      
      Any recommendations on how to fix this problem?
      
      
    • ***Update
      I am able to create an entirely new project and the transforms work fine. It would appear something became corrupt or missing altogether. It seems odd that both projects would do this simultaneously.
  • Using SlowCheetah with edmx file
    1 Posts | Last post May 30, 2013
    • I'm trying to use SlowCheetah on an .edmx file to change an attribute of the Schema element from ProviderManifestToken="2008" to ProviderManifestToken="2005".
      
      But, before I can get even that far I created the most minimal transformation file which only includes the root element. Previewing the transform should result in no changes, but what happens is that the final section of the transformed EDMX files has been changed. It incorrectly changes the <Designer> element to <edmx:Designer>.
      
      Here's the transform file I'm starting with:
      
      <?xml version="1.0" encoding="utf-8" ?>
      <!-- For more information on using transformations 
           see the web.config examples at http://go.microsoft.com/fwlink/?LinkId=214134. -->
      <edmx:Edmx Version="3.0" xmlns:edmx="http://schemas.microsoft.com/ado/2009/11/edmx">
      </edmx:Edmx>
      
      I imagine this problem could be reproduced with any edmx file.
  • Slow Cheetah will not install using nuget package manager
    1 Posts | Last post May 30, 2013
    • I have installed SlowCheetah - XML Transforms and installed SlowCheetah using the Nuget Package Manager.  I am using Visual Studio Professional 2012 Update 2.
      I have an .net console application where SlowCheetah is working successfully for me.  I created a Release build of my .net console application and placed it in a different directory.  
      
      When I use Visual Studio 2012 to access this copy of the .net console application SlowCheetah does not show as an installed package.  I then attempted to install SlowCHeetah using the Nuget Package Manager.  A window appears with messages about the install progressing.  The window closes and the package does not show under the installed packages in Nuget Pacakage manager.  Because the installation fails the transforms are not working.
      
      Is there an installation log file that I can read to see if any errors happened during installation.  
  • config files in my web project are being transformed on build
    3 Posts | Last post May 23, 2013
    • Hi, 
        I have just installed slow cheetah. I have other config files such as connectionStrings.config in my web project. When I build they are getting transformed and updating the config files in my application route.. The default behavior is for them to only transform on publish? 
    • where can I download a previous version.. cant use nuget atm
    • Ok i have used nuget but can't figure out how to use slowcheetah version 2.5.1 without the plugin from this page.. 
      
      Any links to the 2.5.1 visx?
  • Slowcheetah keeps adding a 32bit log4net dll on building the project
    1 Posts | Last post May 23, 2013
    • If i have slowcheetah installed I keep getting a 32bit version of log4net added. This in turn breaks my app as I have a 64bit machine. 
      
      Is there any way round this?
      
      
  • How do You make this work on Web projects (MVC)
    2 Posts | Last post May 22, 2013
    • Hi, 
      
      I've been using this tool for windows apps and it works perfect.. 
      What I was expecting though - that after I add it to the WEB-MVC project and hit "F5" (as the picture above says - the transform would be applied. 
      
      How do I make this work for WEB projects ? 
    • I was expecting this functionality as well.
  • Config transform files are hidden in VS2012 ?
    1 Posts | Last post May 21, 2013
    • I'm running VS2012. After I add the transforms to either web.config or app.config, the only way to see the new transform templates is to "Show All Files" in solution Explorer. Why can't I expand the the .config files without showing all files? Am I missing a setting in VS2012 or ???
      
      Thanks
      Tony W
  • Transform based on machine name
    1 Posts | Last post May 14, 2013
    • Hi, we are looking for a way to create different config files for different developers that work on the same solution. Is it somehow possible to transform the config file based on the machine name?
  • Build Fails
    17 Posts | Last post May 02, 2013
    • I have WebApp I have been using  SC on successfully but after the 2.5.5 update the publish fails. I get "Could not write Destination file: access to the path******** denied.  The path is my connection.config file which as the transforms.  I remove the transforms and the build succeeds.  Is the 2.5.1 or 2.5.2 build available for download to see if the issue goes away?  I am using VS 2010
      Thx
      G
    • I've heard of this issue but have been unable to reproduce it. For a project which has this issue could you try the following. In the packages folder there is a SlowCheetah folder. Under that you will find a tools folder. Can you replace the SlowCheetah.Transforms.targets with the file at https://raw.github.com/sayedihashimi/slow-cheetah/1f90325f2d1a72f221fe116289c1a8c14c43ccfa/SlowCheetah/Resources/Install/SlowCheetah.Transforms.targets. After that close and re-open VS and see if the issue continues or not. If that fixes it I may ask you for some build logs to see what the difference is here.
    • I'm having the same problem. Worked on 2.5.3, but on 2.5.5 it fails for me. Also using VS 2012.
    • correction: VS2010
    • This seems to have worked.  I had to place the targets file under MSbuilds as I didn't have packages folder.   It did successfully build the solution and the transforms look correct.  I noticed a change of reference between the two targets files.
      G
    • Your recommendation for replacing the targets file did the trick. I saw that this file was using SlowCheetah.Tasks.dll vs SlowCheetah.Xdt.dll.
    • What version of VS are you guys running? From other reports this is happening on VS 2010 Premium. 
    • I'm using VS 2012 Premium Update 1 and 2.5.5 fails to apply the transform. Reverting back to 2.5.3 fixes the issue.  Did you want me to run any diagnostics?
    • Running VS 2010 Ultimate and just now getting the same error as reported above.  I did recently upgrade to 2.5.5 and this is the first deployment since the upgrade.
    • Sayid,
      
      This file: https://raw.git​hub.com/sayedih​ashimi/slow-che​etah/1f90325f2d​1a72f221fe11628​9c1a8c14c43ccfa​/SlowCheetah/Re​sources/Install​/SlowCheetah.Tr​ansforms.target​s
      
      It's not available.  I'm getting a 404 error on that site.
    • Has this been solved yet? I'm having the exact same problem. I have just setup xml transformation and on my first build on the build server I'm getting this access error.
      
      I'm using VS12 Update2. Changing that .targets file manually is not a solution for us because we are using package restore on the server. I don't want to check-in that slowcheetah package.
    • System: VS2010 Ultimate SP1, TFS 2010 (also build server), SlowCheetah 2.5.5
      
      On a brand new project, I added SlowCheetah 2.5.5 via NuGet to my web project.  As many others have stated, it did not build correctly when run on my MSbuild server.  It would continually error out with "... SlowCheetah.Transforms.Could not write Destination file: access to the path '(fullpath)\Application.Config' is denied."  Since I did not have a previous version also installed, I could not use the previously suggested .targets file since that requires the SlowCheetah.Tasks.dll library.
      
      Through the NuGet package manager, I removed v2.5.5 from my project and added SlowCheetah.Tasks.Unofficial instead.  After checking in all of the solution/project changes associated with switching versions and running a new build, the project built successfully.
      
      TL;DR: If you're using SlowCheetah 2.5.5 and getting the 'Destination file access denied' error, try switching to SlowCheetah.Tasks.Unofficial available in NuGet.
    • Addendum:
      
      After further testing, using SlowCheetah.Tasks.Unofficial was not correctly transforming files upon running MSBuild.  I reverted back to SlowCheetah 2.5.3.0 (via the package manager console), modified my build per http://sedodream.com/2012/12/24/SlowCheetahBuildServerSupportUpdated.aspx and everything is happy again - transforms work perfectly.
    • I'm still not able to reproduce this. I looked a log files from two different machines in which one works and the other doesn't and still was not able to see what the issue was. I was thinking that the issue was isolated to Visual Studio.
      
      This is the first that I'm hearing of this from a build server.
      
      Martin, could you help me out here? If you could that would be awesome. Could you produce a build log of a 2.5.5 project failing and then convert to 2.5.3 and succeeding?
      
      My email is sayedha@microsoft.com.
      
      Thanks,
      Sayed Ibrahim Hashimi
    • @Sayed-Ibrahim-Hashimi:
      
      Could this error be related as to whether or not you have 4.0 or 4.5 installed?
      
      I see this error on machines configured like mine using VS2010 Pro except that .NET 4.5 is installed on my and isn't installed on their machines (they have .NET 4.0 though)
    • @Sayed-Ibrahim-Hashimi:
      
      I think there might be an issue with .NET 4.5 not installed that is causing this.
      
      I did a clean install of VS2010, SP1, MVC 3, MVC4 and .NET 4.0.  The build wasn't working correctly with the MSBuild task for Slow Cheetah 2.5.5.   I then installed .NET 4.5 and the build started working fine with my setup and the MSBuild task for Slow Cheetah 2.5.5
      
      Please look into this if at all possible
    • I can confirm that this is an issue with .NET 4.5. I'm using VS2012 Professional with TFS 2010 as a build server. I checked in the SlowCheetah package and my build server got ""Could not write Destination file...." error. After installing .NET 4.5 on the build server the build is now working.
81 - 90 of 243 Items