VS2005 IDE Client with web projects driving me nuts
Moderator: SourceGear
VS2005 IDE Client with web projects driving me nuts
Vault 3.1.1
OK, back in the old days of VS2003, I heard that SCC API sucks, Vault IDE client not told what VS2003 was doing etc. "It's gonna be better in VS2005" was the mantra.
In VS2005 Beta 2 worrying signs are there, in web projects. They've completely overhauled web projects, unfortunately they seem to forgot that web projects uses source control as well... \bin directories was not being ignored was the big thing. "It's gonna be fixed on release" we were told.
So yesterday I installed VS2005 Team Edition for Software Developer (a bit too long for a title, isn't it... but I digress...). This is the release version. After a few hiccups unrelated to Vault (Note to self: don't trust beta uninstallers), I can load my solution. Straight to web projects. Now \bin and the referenced dlls in them are ignored. Confirmed that they don't appear in the GUI Client changelist and the "Pending checkins" box. A sigh of relief....
Then I noticed a little innocent "plus" sign on the referenced dll. Clicked on it. Oh, there's a file associated with the dll... it's a dll.refresh file... but there's an alarming yellow plus icon that means it's a newly added file to source control....
Arrrrgggg it is not ignoring the refresh file and it's going to be added to Vault!
Please tell me the definitive way of using web projects in VS2005 with Vault IDE client...
OK, back in the old days of VS2003, I heard that SCC API sucks, Vault IDE client not told what VS2003 was doing etc. "It's gonna be better in VS2005" was the mantra.
In VS2005 Beta 2 worrying signs are there, in web projects. They've completely overhauled web projects, unfortunately they seem to forgot that web projects uses source control as well... \bin directories was not being ignored was the big thing. "It's gonna be fixed on release" we were told.
So yesterday I installed VS2005 Team Edition for Software Developer (a bit too long for a title, isn't it... but I digress...). This is the release version. After a few hiccups unrelated to Vault (Note to self: don't trust beta uninstallers), I can load my solution. Straight to web projects. Now \bin and the referenced dlls in them are ignored. Confirmed that they don't appear in the GUI Client changelist and the "Pending checkins" box. A sigh of relief....
Then I noticed a little innocent "plus" sign on the referenced dll. Clicked on it. Oh, there's a file associated with the dll... it's a dll.refresh file... but there's an alarming yellow plus icon that means it's a newly added file to source control....
Arrrrgggg it is not ignoring the refresh file and it's going to be added to Vault!
Please tell me the definitive way of using web projects in VS2005 with Vault IDE client...
This is all Visual Studio, so the only advice we can give is:
1) See MS's new guide to converting web projects:
http://msdn.microsoft.com/library/defau ... tsvs05.asp
2) Add your vote to the bin folder bug here:
http://lab.msdn.microsoft.com/productfe ... 91d7e1e2d1
1) See MS's new guide to converting web projects:
http://msdn.microsoft.com/library/defau ... tsvs05.asp
2) Add your vote to the bin folder bug here:
http://lab.msdn.microsoft.com/productfe ... 91d7e1e2d1
Unfortunately this is a brand new project created within VS2005 itself... so not a conversion issue.dan wrote:This is all Visual Studio, so the only advice we can give is:
1) See MS's new guide to converting web projects:
http://msdn.microsoft.com/library/defau ... tsvs05.asp
Technically that bug is not exactly the same, as they seem to have fixed the dll and pdb checkin. But I voted for it anyway... I have entered another more precise bug :dan wrote: 2) Add your vote to the bin folder bug here:
http://lab.msdn.microsoft.com/productfe ... 91d7e1e2d1
http://lab.msdn.microsoft.com/productfe ... efb0ec1db5 Please vote for it
I don't know what good it would to do send a solution bound to my Vault server here. Or maybe it doesn't happen with SourceSafe or any other source control? Let's try if SourceGear can repro this. I'm sure you have access to at least a working SourceSafe installation. See attached screenshot. Notice how the refresh file is about to be added.dan wrote:I tried to vote on this, but there was a post from MS that they couldn't reproduce the error. I'd suggest providing them with some samples so they can reproduce it.
Steps to achieve the screenshot:
1. Create an empty working directory TestWSVS2005.
2. Web share it as TestWSVS2005. (This is so I can use http method to be as close to VS2003 as possible)
3. In VS2005 (I am using Team Edition Software Developer), create a new ASP.NET Web service project, selecting http as the method, pointing to http://localhost/TestWSVS2005. This should then populate the working directory above.
4. File->Source Control->Add Web site to Source Control. The relevant files will be in source control. So far so good.
5. Now try adding a reference to an external assembly dll, I used log4net in this sample. VS2005 then will proceed to creata bin folder, put the dll in there and a refresh file. The dll and its associated xml doc file seems to be ignored by source control, which is correct. But the refresh file is detected as new file.
If I commit the pending checkin, I can confirm that in Vault there will be a Bin folder with one log4net.dll.refresh file.
- Attachments
-
- VS2005 Screenshot
- vs2005bug.JPG (114.19 KiB) Viewed 9820 times
I have confirmed this problem does exists using other source code control applications. I have tested the same scenario using VSS 2005 and the issue still appears.I don't know what good it would to do send a solution bound to my Vault server here. Or maybe it doesn't happen with SourceSafe or any other source control? Let's try if SourceGear can repro this. I'm sure you have access to at least a working SourceSafe installation.
Please let me know if there's anything else that we can do.
Thanks,
Tonya Nunn
SourceGear Support
Tonya, thanks for the repro. Can you now please vote and validate the bug: http://lab.msdn.microsoft.com/ProductFe ... efb0ec1db5 maybe adding comment (if you can, it never seems to work for me on other bugs I am tracking!) that VSS is also affected.
Thanks again!
There is now a workaround: dump the web site model and use the Visual Studio 2005 Web Application Project model instead. I have verified that it fixes the references issue. No more bin folders in your source control!
There is now a workaround: dump the web site model and use the Visual Studio 2005 Web Application Project model instead. I have verified that it fixes the references issue. No more bin folders in your source control!
Ah, got the "it's not a bug it's a feature" reply:
Ah well, I'm happy now because they've acknowledged the need for web application model.
The explanation makes sense, but that makes me hate the Web Site model even more. They didn't seem to think about the implication of the Web Site model for source controlled project. If you looked at the original bug on this and similar issue when it was uncovered in VS2005 Beta 2, originally it was going to be ignored in the original Nov release!Thank you for your feedback. This is actually by design. If you are using source control, you do not want to store dynamically changing files such as a dll or pdb file. However, the refresh file contains information on where to get the dll and pdb, and should be saved. BTW, the presence of a refresh file indicates that the dll and pdb is dynamic and can change. If you do not have a refresh file, this indicates the dll and pdb are not dynamic. In this case, the dll and pdb *will* be checked into source control.
-Mike-
Ah well, I'm happy now because they've acknowledged the need for web application model.