Showing posts with label tfs. Show all posts
Showing posts with label tfs. Show all posts

Thursday, November 29, 2007

DLR Pad on CodePlex

Finally I have uploaded my DLR Pad application on CodePlex. I have delayed the upload due to two main reasons. First was the new version of Bookvar that we shipped yesterday (unfortunately the final code of the DLR Pad is not yet integrated into Bookvar, but this will happen in the next release). The second reason is that I wanted to refactor some of the code and make provider model for the available languages.

Show me your DLR language

As you just read DLR Pad now has a provider based architecture that will allow any DLR language to be added on the fly. What you need to do is just to write a new DynamicLanguneEngine implementation and override a single property that returns the appropriate ScriptEngine. For example here is the IronPython's implementation:

internal class IronPythonLanguageEngine : DynamicLanguageEngine

{

    public override ScriptEngine ScriptEngine

    {

        get { return PythonEngine.CurrentEngine; }

    }

}

Also you will need edit the config file to add your language implementation:

<add

    name="IronPython" description="IronPython engine."

    languageShortName="ipy"

    type="Avaxo.Scripting.IronPythonLanguageEngine, Avaxo.Scripting" />

For now only IronPython and IronRuby are added by default. However if you want you can register some other language - for example IronScheme (IronLisp) or Smalltalk. In the future when VBX and the new managed JavaScript implementation become available they can also be added to the DLR Pad.

Feel free to download DLR Pad and have fun with it. In my next post I will show you how go wild with it.

I want to say one more thing here.

CodePlex & SvnBridge rocks!

I have been using CodePlex previously for my InfoCardControl. As you may know CodePlex is using TFS to hold the source code. Till recently the most appropriate way to check-in source code was the Team Explorer extension for Visual Studio. Unfortunately I have uninstalled VS 2005 along with the Team Explorer and start to use VS 2008 only. So I have to install Team Explorer this time for VS 2008. And oh man its file size is 387 MB. So while downloading I decided to try the SvnBridge developed by the guys from CodePlex. And magically it worked. The tool is only 427 KB and basically sits between your local svn versioned files and remote TFS. Every svn operation you execute gets it mimic into TFS one. Combined with TortoiseSVN and you are ready to go to space :) I encourage anyone to try SVN Update DLR Pad for himself to see the SvnBridge in action.

That's it for now. Stay tuned as I will show you how to do crazy stuff with DLR Pad.

P.S.: Any comment about the code is welcome and encouraged.

kick it on DotNetKicks.com

Friday, October 19, 2007

Working with TFS offline / disconnected

If you have worked with TFS (stands for Team Foundation Server, not for Tradition Financial Services or Toronto French School) when the server is unavailable (if your server is down or your VPN connection has gone away) you have definitely experienced one thing:

Working with disconnected TFS sucks!

Yep. This is truth and the truth hurts. I have even recently heard developer saying "Fucking TFS. SourceSafe was better. It just worked". I did not want to comment on TFS vs SourceSafe - both hands up for TFS and its atomic change sets. I also did not want to comment on TFS vs Subversion, where Subversion just stand out in disconnected environment. MS are promising that this "mistake" will be fixed in the next version of TFS. But while we are waiting for it I will tell you (you maybe already aware of it already) how to make it less painful.

Team Foundation Power Toys (Tools) - TFS painkiller

Don't hesitate and go straight to the download link. TFPT consist of a bunch of useful tools and additions to TFS. Most interesting is the command line utility - TFPT.exe, which have a bunch of options. What we need is the option online of the tool. Here is sample how to use it:

tfpt.exe online /recursive /delete path_to_folder_with_solution

We need the recursive switch to recursively walk through the directories and search for changes. Delete is required if you have deleted items from the solution. This command will bring a popup windows that will display all actions that you will do. If you did not the window to show you can use the /noprompt switch. If you are uncertain what will happen you can use the preview switch:

tfpt.exe online /preview /noprompt path_to_folder_with_solution

This will show all the modifications that will be done, without actually doing them. Note that if you have renamed files the tool did not catch it. So it may sounds silly but don't rename while disconnected.

You can read more about the tool here and here or in the document that comes with the installation.

Hope this will help you leave the swearing from TFS to some other place. I can think about two or three of those places. What about you?