June 2009 Entries

TortoiseSVN Missing Context Menu After Vista Upgrade from Home to Ultimate

Recently I upgraded Vista Home to Ultimate. I could not get the context menu back. I thought I was going crazy trying to get it back. I uninstalled and reinstalled many a time trying to get it back. I still couldn’t get TortoiseSVN to show up. So I uninstalled and started a rampage through the registry to find what I needed to remove. I came across this key: HKEY_CURRENT_USER\Software\... It had an entry for Context Menus (which I had modified). I backed the key up and deleted it. Then re-installed ......

Subversion 1.6, Tree Conflicts, and the Incompatibility of Subversion 1.5: What You Need to Know

NOTE: Subversion's new tree conflicts feature is something you need to learn about. Otherwise it will bite you later and you will be left with an uncommitted change and confusion about how to get it committed. Take a few moments to read this article. SVN 1.6 Client + 1.5 Server = "Error: Aborting commit: 'C:\SVN\source-branch\src\i... remains in conflict " and the file is gone. It's just gone! Subversion 1.6 has been out for awhile and quite a few of us just upgraded our TortoiseSVN clients ......

SQL Server 2005/ SQL Server 2008 - Rebuild or Reorganize ALL Indexes in a Database

I found this gem while looking at a database that needed all indexes rebuilt. I actually had to create the programmatic way of doing rebuilding all indexes in a database based on the information in these posts: http://blog.sqlauthority.co... http://www.sql-server-perfo... http://www.sqlservercurry.c... ......

UppercuT - TeamCity Integration - Part 4 (Code Drop / Artifacts of the Build)

In Part 1 we create a project. In Part 2 we set up the Build Configuration. In Part 3 we ran the build. Now we are just going to note how we get to our code. Code Drop / Artifacts TeamCity stores all artifacts in a database. So for every build, the drop location is not a physical disk location, it’s actually in a database. This is why we called zip.bat instead of build.bat. We have to download the items from TeamCity and want to just download the one file. If we download that file and unzip it, we ......

UppercuT - TeamCity Integration - Part 3 (Run the Build)

In Part 1 we create a project. In Part 2 we set up the Build Configuration. This time we will Run the build. Run the Build Project 1. Click on Projects. 2. You can see that the new project has not run before due to the question mark. 3. Let’s kick it off. Click {Run |…}. 4. The page refreshes automatically to show that we are running. 5. NOTE: The first build may fail due to folder cleaning that is happening at the same time. You will see a note in the build log that it is deleting items at the same ......

UppercuT - TeamCity Integration - Part 2 (Create a Build Configuration)

Last time we created a project. This time we will set up the build configuration with it. Create a Build Configuration 1. Click {add a build configuration} for this project. 2. In the [Name:] field, we need to add something descriptive. We are building the trunk on every change. Let’s call it Bombali Trunk CI. 3. In [Artifact paths:] enter code_drop/*.zip. 4. In the Fail build if: section, ensure that these settings are checked: a. build process exit code is not zero b. at least one test failed c. ......

UppercuT - TeamCity Integration - Part 1 (Create a TeamCity Project)

Integrating UppercuT with TeamCity is actually very easy. We will go through the steps to set up and run a build. Let's start with Creating a project. Create A Project 1. Log into TeamCity. 2. Go to Administration. 3. Click on create project. 4. Type a name for your project. Try to use an identifying name. In our example, we are using Bombali. We also add a nice description about the project. Choose what is most appropriate for you. 5. Click {Create}. Next we will create a Build Configuration. UppercuT ......

UppercuT - Automated Builds - Test Category Filters

I'm happy to announce that UppercuT now has test category filters. The NUnit Task had them by default. To get categories added to MbUnit Task, I had to go back to the source code and add them. I followed the same format that NAnt-Extensions used: <mbunit report-types="Html;Xml;Text" report-filename-format="${f... report-output-directory="${... halt-on-failure="true" failonerror="true" > <assemblies> <exclude name="${dirs.build}\*Databa... /> <exclude ......

UppercuT - Automated Builds - Getting Started Part 0 (Prerequisites)

In all discussion about how to get started, I didn't mention that there are prerequisites to using UppercuT. Well, really there is only one prerequisite. Prerequisites Source control command line tool on the path If you are unsure, open a command line and type svn to find out if you already have it installed. Download In our case Subversion Command line client. You can get that from Collabnet (you will have to register) at http://www.collab.net/downl... Note: If you have installed VisualSVN, ......

NDepend and CruiseControl.NET

NDepend is one of the best code analysis tools out there for determining code quality! It does so with some advanced metrics and I can say I still don't understand all of it, but we take advantage of the areas we do understand! It will help point you to possible problems with code during code reviews and it has some nice images to help visualize what's going on in your code. You can even hook it up to CruiseControl.NET (CC.NET) and see reports for NDepend per build. We are going to talk about how ......

UppercuT - Automated Builds - TeamCity Integration Coming

This is a quick update to note that TeamCity is on it's way to being supported. I was given a patch for this and I am about verify that it works (it came from a trusted source through, so I am pretty sure it will). You know what the greatest part of the patch was? It was one line of code. <property name="version.build" value="${environment::get-v... if="${environment::variable... /> We don't even need a setting to determine if the build server is ......