Changes in v3.0

This version of NCrunch introduces changes to the grid protocol. This means that grid node servers
must be updated before they can be used with the new version.

This is a major feature release. For details on the features contained in this release,
please refer to!.aspx

Fixes and Compability Improvements

Fixed grid node remote restart not working on grid nodes without .NET 3.5 installed.

Fixed a pinvoke stack alignment issue around CPU core affinity control in the IDE.

Fixed incorrectly labeled log verbosity - 'High' should have been 'Low'.

Fixed an issue that was preventing grid nodes from correctly cleaning up workspaces when clients
disconnected from the node.

NCrunch will now override any read-only file system attribute that has been applied to its settings
files if NCrunch configuration is changed.

Introduced a speculative fix to try and improve NCrunch's handling of solutions containing strange
project cross-references.

Fixed the XML export option in the Metrics Window not working at all.

Fixed an issue where specifying attributes on the get/set methods of properties or on the add/remove
methods could cause the assembly to be corrupted at IL level.

Added proper handling for satellite assemblies - these will now be copied into _ncrunchreferences
with their master assemblies when NCrunch is using them via assembly references.

Adjusted the left and right arrow handling so that these can now be used to navigate the tree
structure in NCrunch grids.

Fixed explicit tests being run by the 'Run all visible tests' option.

Fixed grid node kicking up internal errors when a project fails to correctly load on the client.

Added an environment variable to disable specflow internal parallelization.

Adjusted the test fixture batching threshold to improve engine responsiveness.

Added a warning in the Tests Window about detailed logging impacting performance when this is
enabled in NCrunch configuration.

Fixed an issue that could cause some projects to become 'stuck' in the tests window with an
incorrect status until the filters were reset.