Saturday, January 09, 2010

TFS2010: And the tools are there too!

In my previous post, I was talking about using making your custom tools ready for TFS 2010 with SDK. But what about other tools, say you? And not to worry, here you go (and I included not only TFS but VS tools as well):


Mirror from my MSDN blog

Friday, January 08, 2010

TFS2010: And there is an SDK for that!

So may be now you have finally got your hands on Beta 2 of TFS 2010 (for example, using one of the excellent VHDs prepared by Brian Randell) and it is time to see how your custom applications written for 2008 fare (do not worry, you will be fine!). Here are few notes that should make your life easier.

1. Starting with Visual Studio 2010, SDK does not include samples and documentation. TFS SDK is located on Code Gallery, separately from VS SDK documentation.

2. The backward compatibility of the APIs in 2010 is very good; so if you had an application written against TFS 2008 OM the chances are it will compile and work. You will still have to change references to assemblies to 2010 versions. Additional things to keep in mind

  • You might want to know what version of the server you are working against. This helpful post from Taylor Lafrinere provides the necessary details
  • While 2010 Beta 2 APIs signatures are mostly identical to those in 2008, RC and RTM will have breaking changes that might require changes to your code. This post from Grant Holliday summarizes the changes
  • There were some classes that were made internal, and some classes that were reshuffled to different DLLs. You will know about those when you custom application does not compile
  • If you have used reflection, you are on your own. The chances are that you will have to do some more reflection in order to make it work in 2010 :)

3. New functionality available in 2010 is mostly related to the new features introduced, viz.

  • Project collections (see same post from Grant for the summary)
  • Changes to version control (branches etc. - Microsoft.TeamFoundation.VersionControl.Client namespace has it all; also see an update below)
  • Hierarchical work items (see a primer on the API from Ewald Hofman)
  • Test related work items in MTLM (see another primer from Ewald)

So be adventurous and take Beta 2 for a ride! Oh, and most probably for a while you will have heterogeneous environment with 2008, 2010 or may be even 2005 clients etc. This post from WIT team blog will help in figuring out what will and will not work: TFS Server 2010 Beta 2 vs. 2005/2008 TFS client 

And should you be in a tight corner (since currently existing documentation is somewhat meager) you might want to head to TFS 2010 Beta 2 MSDN forum.

Mirror from my MSDN blog

Update: There is a good summary on Version Control API changes (that I forgot to mention) at Michal Malecki blog: part 1 and part 2