Note: this entry has moved.
If you're serious about working with TFS, and you fell the out-of-the-box experience (UI and command line) is lacking, you MUST go get these tools NOW.
In a nutshell:
Team Foundation Server is happy to announce the release of version 1.2 of Team Foundation Power Tools (formerly known as Power Toys). In this release we’ve added 2 new command line tools for the developer and 3 non-command line tools. This version includes some bug fixes to previous Power Tools, support for Vista, and adds the following new functionality:
· Workspace Command (tfpt.exe) - Use the workspace command for additional workspace operations not supported in the currently shipping Team Foundation Server command line (tf.exe).
· Treeclean Command (tfpt.exe) - Use the treeclean command to see and optionally delete files in the current directory and all subdirectories that are not under version control.
· Process Template Editor - A tool to provide UI for authoring work item types and some of the associated Process Template components.
· Check-in Policy Pack - A set of handy check-in policies to address needs customers have expressed.
· Build Test Tools Task - A tool that allows running unit tests by simply specifying the DLLs or even specifying a file name pattern in TfsBuild.proj, instead of using .vsmdi files to specify tests to run.
Please note that the Process Template Editor has some additional pre-requisites, they are identified on the download page.
You can locate the Team Foundation Power Tools V1.2 release here and you can get help on the forums for these tools here.
I'm very pleased to see the direction the XML team took with the new Linq to XSD preview. Basically, it's xsd.exe, but generating classes on top of Linq to XML (or XLinq, XElement and friends). This is pretty cool, because it gives you all the power and productivity of a strong-typed object model, while still allowing for the freedom of manipulating the underlying untyped XML.
The crucial point there is that the typed model is pretty much an adapter on top of untyped XML, therefore both will always be in sync. The semantics for the insertion and appending of content data to the underlying untyped model is sound and I'm sure it will be even better by the time it ships.
You can now transform the following:
(from item in purchaseOrder.Elements("Item")
(from item in purchaseOrder.Item
select item.Price * item.Quantity
The code generation is done with an MSBuild task, so you can always be sure that the XSD and its object model adapters are in sync, and your code always complies with it.
One question that remains to be seen is how/if this plays with the XStreamElement support. I guess they are orthogonal, but haven't checked.
Congrats to the team for a step in one very useful direction!