Today we released VS/TFS 2010 SP1 Beta and .NET 4 Update Beta to MSDN subscribers.  On Thursday, they will be available to the general public.  The Beta comes with a "go live" license which means that it can be installed in a production environment.  Further, upgrading from the Beta to the final release of SP1, when it is available, will be very easy.

Download links for MSDN Subscribers (Note all 3 of these links are the same.  You’ll find the 3 downloads and more on the subscriber site at this link):

Download links for everyone else (available on Thursday):

All in all this service pack is "average" sized (if there is such a thing :)).  There are some very nice features in it, some good performance and memory improvements, a roll up of all hot fixes and some bug fixes for issues we've found internally but, in the end, it's not a huge service pack - particularly contrasted with VS 2008 SP1, which was a very large service pack.  Of course, we've developed other outlets for delivering new features to you - like the Feature Pack notion we started after the release of 2010.  The significant new features in this service pack include:

Local help viewer - We got ample feedback during the VS 2010 Beta 2 period that people really missed having a local help viewer.  The help team has been working hard and had some previews of a new local help viewer.  It is now incorporated into SP1.

Silverlight 4 tools - The Silverlight 4 tools are now included along with Silverlight 3 support.

Unit Testing on .NET 3.5 - In VS 2010, you can only run unit tests against .NET 4.0 and must rely on Framework compatibility to trust that your app will actually work if deployed on .NET 3.5.  While Framework compatibility is VERY good, it's not perfect and we've heard focused but strong feedback that unit testing on the actual .NET 3.5 Framework is a must.  In SP1, you can.

Intellitrace for 64-bit and Sharepoint - Intellitrace is the revolutionary new debugging technology in VS 2010 that allows you to move forward and backwards through a debug session.  With it being a V1 offering at RTM, we just didn't have time to make it work in all scenarios.  In SP1, we've rounded it out with a couple of important ones - 64-bit and Sharepoint.  We still don't have Silverlight or unmanaged C++ support but we'll continue to make progress on important scenarios.

Performance Wizard for Silverlight - With SP1, you will be able to profile your Silverlight code to tune your app performance.  Also, because so much of Silverlight is about rendering performance and a traditional code profiler is a blunt tool for tuning that kind of thing, we have included a number of higher level profiling abstractions to make is easier to understand where your app is really spending the time.

VB Compiler runtime switch (/vbruntime) – VB.NET relies on some VB specific runtime libraries.  In the past this has made support for VB.NET on new .NET platforms come to market more slowly than C#.  For instance support for VB.NET was enabled on Windows Phone 7 when we released the Visual Basic for Windows Phone Developer Tools.  This new switch and the underlying VB runtime refactoring will enable you to include the key VB runtime components as references in your application, making it easier for you to target new platforms as they are released.

Speaking of Feature Packs...  From a TFS perspective, the biggest component of SP1 is all of the core product changes needed to enable our Visual Studio Team Foundation Server 2010 and Project Server Integration Feature Pack that enables a great portfolio management collaboration between formal project management and dev teams.  You can learn more about the new feature pack (which we are also releasing a Beta for) in my next post.  I didn’t list those changes in the bug list at the bottom since they really only exist to enable the Project Server integration that I’m going to post about shortly.

In all, we fixed between 800 and 1,000 bugs across all the updates that were released today – many of them reported by customers either through customer service, Connect or through automated Dr. Watson reporting.  I’ve included at the bottom the list of TFS bug fixes that you might care about.

 

Summary

It’s great to be able to take all of the feedback we’ve gotten over the last 8 months or so and roll out a service pack Beta that addresses a significant chunk of it both in the form of highly demanded features and important bug fixes.  Of course it’s just the Beta and we aren’t quite done yet.  There’s probably another 100 or so bug fixes left to go – a few of which we already know about and the rest we hope we’ll learn about from you as you test out the service pack and let us know about any issues you hit.  Please submit any issues you find to our Connect site and, after you’ve used it for a bit, give us your feedback through our SP1 Beta survey.

Thanks and I look forward to your feedback

Brian

 

In the spirit of full transparency and in hopes that it will be useful to you, here’s the list of all TFS SP1 bug fixes so far that I think might be remotely interesting to you.  It’s 80 bug fixes in total.  I expect we’ll probably have fewer than 10 more before we are done (unless you let us know that we missed a bug of important stuff :)).

Admin, Ops and Setup

  • Add a tool to enable starting a service host if it is stopped
  • Upgrade from Orcas fails if @@SERVERNAME is NULL
  • Patch fails to install correctly if the configuration database is being mirrored
  • Installing a patch fails if one of the collections is not available

Build Automation

  • Cannot delete build drops if a controller goes down
  • Summary View: The first changeset in the list of 'Associated Changesets' show up twice (sometimes)
  • Ancient changesets being associated with build...
  • Memory leaks and performance drop on TFS 2010 Build Service under heavy load
  • Watson: Application buildnotification.exe; Exception system.argumentnullexception
  • Watson: Application tfsbuildservicehost.exe from Dev10 RTM; Exception 0xC000001D
  • Change the default in "Build Retention"->"What to Delete" from "All" to "All - Test Result"
  • Manually queueing a gated check-in build intermittedly disables the dropdown "what do you want to build?"
  • Build Definition Cache on the AT can become corrupt when multiple definitions map/cloak the same paths in the workspace templates
  • Undo in gated check-in does not remove unshelved adds from the disk leaving a cluttered workspace and allowing breaking check-ins to potentially make it through
  • Customer can inadvertently change build quality due to odd focus and scroll wheel interaction

Core Services

  • QueryActiveRequests shows requests without associated threads
  • QueryActiveRequests occasionally hangs and never returns
  • The Server Plugin Architecture Should Not Disable Plugins When They Throw An Exception
  • Watson: A transport-level error has occurred when receiving results from the server. (prov ...[trunc]
  • Watson: ExceptionType sqlexception.20.5; Category: DataBase; Src: FA9FE1469BCF7263; TargetSite: 7c64855d
  • Watson: SqlException - Failed to load Msxmlsql.dll.
  • Security service crashes when you have 2 paths, differing only by I casing on a turkish database.
  • Attach fails when custom instance groups are members of collection groups
  • Watson: Application tfsjobagent.exe; Exception SYSTEM.DATA.SQLCLIENT.SQL
  • Stopping the configuration service host fails if there is a running job that will take a long time to finish
  • A process that calls ApplicationServiceHost.BeginRequest may prevent the service host from stopping until the request context passed to that method is disposed
  • Can't Detach Offline Collection

Office Integration

  • [Outlook Send Mail] Add the Work Item ID and Title to the subject line of the email when exporting a single work item.
  • Non TFS project plan gets error TF80070 when changing work in Task Usage view side by side with bound project plan open
  • There is no way to undo sort in Excel Trees and clearing "Sort and Filter" could cause unexpected results when publishing
  • Excel: Disconnected client displays server not available error message for every table in the workbook.
  • TF208021 when I convert to a tree query which only contains one WI by Configure list
  • AV instantiating CLSID {23A20EA8-2DF0-40a6-A1FA-8143EDB7B172} S
  • If a filter is set on the Gantt View, work item can be incorrectly parented when brought into the project plan through a refresh on the Team Planner view.
  • MSProject: Adding additional resources to a summary task (already has resources) would not reset all assignment units to 0%

Reporting

  • Analysis Processing: TFSOlapProcessComponent's class ICancelable implementation need to call server.Disconnect(false) in addition to CancelCommand()
  • Stress: SQL deadlocks in prc_Dimension_DimFile_AddUpdate
  • Watson: Cannot insert duplicate key row in object 'dbo.DimFile' with unique index 'DimFile_FileBK'.
  • _LastUpdatedTime: jobs do not get deleted when Reporting is disabled, resulting in inaccurate data showing on reports
  • WIT Warehouse adapter should not rely on WorkItemsAre and WorkItemsLatest having the same [Changed Order] values
  • TFS 2010: AS warehouse processing fails with error "The trust relationship between the primary domain and the trusted domain failed"

Team Web Access

  • Web Access UI has not reacted to locked links
  • ENU: Click "View Log" can't show content when using Firefox3.5 browser.
  • Build web part queries WAY more data than it needs leading to a performance issue with lots of builds
  • Loc web access site points to ENU msdn pages for help content

Version Control

  • Support for QueryMergesExtended to query merge targets for a given item
  • Changes to baseless merge for deleted items / cherry picks
  • Fix for branch mappings would pick up the wrong mapping
  • Changes to make the comparison for get /remap to be case-sensitive.
  • 2 fixes for blocking problems on checkin and remove access control list
  • Product changes for remove redundant content
  • Merge, Unshelve bad query plans and rename merge bug
  • Query plan fix for checkin, fix for infinite merge loop
  • Syncing to a label which has a duplicate name but different scope in the system will lead to unpredictable results
  • After opening solution, database node in server explorer becomes fully expanded and I'm prompted to add database diagram
  • Comparing a file after renaming its parent does not work
  • BV: Can't tell one branch from another when they have the same name
  • A lock on a file is orphaned on checkin when the parent is renamed and checked in in another workspace
  • InvalidOperationException on message pump callback from PendingChangesFileList crashes VS when resolving multiple conflicts
  • Autoproxy contacts LDAP every time we process GetOperations when talking to a 2005/2008 server
  • Upgrade from 2005/2008 adds ACEs for shelvesets as well as for workspaces - can keep identities alive incorrectly
  • Turkish I bug on large checkins
  • Candidate delete is lost after merging in a folder rename

Work Item Tracking

  • Back compat verbatim error message needed
  • HTML control truncates stack trace that contains hyperlinks with quotes
  • Error on Work Item form in TFS - object reference not set to an instance of an object
  • Changing the reporting type of a field blocks WIT operations for up to 7 minutes.
  • WorkItem.aspx treats the default Description field differently than other longtext fields
  • Team Project Creation failing in PLOC because of Global Workflow Issue
  • Bypass rule attribute doesn't work with batch update
  • String fields should accept newlines and tabs,
  • System.History field does not display in query results view
  • WIT OM can't be loaded
  • Usage incorrectly identifies flags for WitAdmin ExportGlobalWorkflow
  • WitAdmin commands can't be run on an RTM client against an SP1 server
  • VSTSPioneer: witadmin deletefield caused TF237159: The query contains columns that are not valid.
  • SERVERDEFAULT from currentuser does not work with fields marked as SyncNameChanges=True
  • After upgrade, allowed values in fields marked as syncnamechanges=true may block WIT import.
  • Bypassing workflow rules is broken if you delete a field that existed prior to the last servicing operation.
  • The index on Title needs to be removed.