What’s with .42?

In one of my previous blogs, I mentioned the final build number for Visual Studio 2005 was 8.0.50727.42.

The way it worked in the past was our build numbers were 8.0.YMMDD.00.  When we came close to shipping, we froze the first three digits and then only incremented the last number (the dot number).  This allowed greater compatibility with previous builds and minimized the churn in our build and code.

What this means is on July 27th, 2005, we started the final push to the final build.  From there, we built 42 times which is how we came up with 8.0.50727.42.

One interesting tid bit.  The original code name for the .NET Framework was “Project 42”.  Coincidence that we ended up with .42? 🙂



Comments (6)

  1. atomic says:

    (I’ll be responding to other .42 bloggers with a similar message…)

    It appears that .42 was not a coincidence as there are little bits of evidence in the RTM release. For instance, the .NET Runtime Optimization Service v2.0.50727_X86 is actually named (internally) as clr_optimization_v2.0.50727_32.

    Now, unless the _32 refers to 32-bit (which would be odd considering the appropriate build number, and X86 reference), then it seems that RC was .26, and RTM was originally .32 but artificially pushed to .42.

    Hmm, something to think about…

  2. Quan says:

    I can assure you .42 was not an artificial number. Having been a part of some of the fixes between .32 and .42, we rebuilt the product 10 times because of some last minute issues we found.

    If we could’ve signed off on .32, we would have. 🙂

  3. Quan says:

    One more thing i just realized.

    Half our developer division team is in building 42 on Microsoft main campus 🙂

  4. RobertF says:

    The 32 in clr_optimization_v2.0.50727_32 does stand for 32 bit. If you take a look at the 64 bit service, you will see that it is called clr_optimization_v2.0.50727_64. Artificially pushing the build number up will require touching the binaries and require us to re-run test scenarios. This would be too costly for a product of this size.

    I’d preferred to have a build number of 41 as many of us are in building 41… 🙂

  5. Petermarcu says:

    Robert is correct. The _32 in the clr_optimization_v2.0.50727_32 is definitely for 32 bit. I put it there for that reason. On 64bit machines there are 2 CLR Optimization services running. One for 32 and one for 64 bit. It only makes sense to distinguish between the two by using _32 and _64. IT HAS NOTHING TO DO WITH THE BUILD NUMBERS :). It was this way when we released Beta 2 as well which was not .32 or .42.