slow-cheetah
slow-cheetah copied to clipboard
Setup Project improperly names multiple transformed XML files when using slow-cheetah
Issue:
When a setup project is set to install the primary output of another project which has multiple XML files being transformed with SlowCheetah, the output file names for the transformed files will be a semicolon delimited list of all the file names together. This causes them to overwrite each other in the installation folder so only one file actually gets installed with the package, and it has the incorrect file name so it won't be properly referenced anyways.
The files will properly transform into their own project's output directory. It is only in the setup project that they will be named incorrectly.
When I tried this with only one transformed XML file, it functioned properly in the setup project.
NOTE: This did not seems to affect the app.config
file, though that could be because there is only one.
Tools Utilized
- Visual Studio 2010
- .NET 4.0
- SlowCheetah 2.5.5 and 2.5.10.3 (upgraded to try and remedy the problem, but it still exists)
Repro Steps:
- Make a windows application (I used a windows service for this one)
- Add at least two XML files to the main project directory
- Use SlowCheetah to add transformations for the XML files
- Add a Setup Project to the solution.
- Add the Primary Output from the windows application project into the Application Folder output of the Setup Project.
- Build and either check the Outputs from the Setup Project, or install the project and look at the install location.
Screenshots
With just one transform, working properly:
With two transforms, the target names get confused, even though the source paths point to the proper files.
Same Issue in Visual Studio 2013
I have Windows Service project with several .config files and Install Shield LE Setup project in my VS2013 solution, and if I use transformations on the config files then the Primary output in Setup project contains combined semicolon file names in ONE file name. I'm using 2.5.10 version of SlowCheetah
The build output in BIN directory is correct
but not for the setup project
Is this issue not going to be addressed?
I'm going to be retiring SlowCheetah soon....more details to come soon. I can no longer maintain this project. I need some time to figure out a plan that will work for the community. Stay tuned.
If anyone out there want's to implement it I will provide guidance & review/merge the PR.
I found a workaround to this issue. Its not ideal but it works. You can filter out the transformed xml files from the Primary Output on the setup project and then add the specific files to the setup project from the bin/[configuration] directory.
http://dotnetcatch.wordpress.com/2014/09/08/workaround-slowcheetah-bug-124-multiple-xml-transformed-in-setup-project/