|
February 14, 2006
IncrediBuild v2.50RC is now available for download here.
This version has been in beta testing for the past few months and is considered stable. It features numerous improvements from v2.42, including full Visual Studio 2005 support, improved performnace, new UI features and more. For a full list of changes see below.
All users may install this version to reset the evaluation period to 30 days.
Users with an active maintenance service can download and upgrade to this version using their current license.
Version Highlights
- Visual Studio 2005 Support.
- Various performance improvements for all build stages.
- Partial Support for Edit & Continue.
- New "Solution Settings" dialog for easy access to per-project options (replaces .ib_ini file).
- Support for February 2006 Xbox 360 XDK.
What's New in Version 2.50RC
Build System
- Finalized Visual Studio 2005 support and integration.
- Support for Intel Compiler versions 9.0 and 9.1 added (including VS 2005 support).
- Edit & Continue is now supported partially (files that are to be used with the Edit-n-continue feature can be specified via the Solution Settings dialog; these files will compile on the local machine).
- Fixed various issues with IncrediLink feature.
- PDB allocation mechanism replaced with a more robust system.
- Added support for Xbox 360 February '06 XDK.
- Fixed bug that could cause the "/implib" linker option to be added incorrectly.
- Added new "IncrediBuildContext" environment variable that's automatically set to "1" whenever a build is run through IncrediBuild (for scripting needs).
- Added support for VC8 website projects.
- Clean operation for external project re-implemented to avoid various issues.
- Fixed dependency issue that could cause COM wrapper targets to fail incremental builds.
- Fixed bug that could cause manifest file not to be generated.
- Fixed bug that could cause an incorrect path to appear in the /FU compiler option.
- Added Solution Settings option that allows specific files to be compiled using the standard VC compilation command (instead of being distributed).
- Fixed issue related to parameter order in the linker command line.
- Added support for "Input*" and "SafeInputName" IDE environment variables at the project level.
- ".REGISTRY" resource type in .RC files is now correctly detected as a dependency.
- Support for project references between C++ and C# projects is now more robust.
- Added support for using non-default tools to build certain source files.
- Added support for user-defined C/C++ file extension list.
- Fixed bug that caused changes in dependent include files specified with the /FI option in the "Additional Options" field to be ignored in dependency calculation.
- Fixed bug that could cause an incorrect /Ob0 command line option to be added to compiler command lines.
- VC6: $(InputDir) is now always translated correctly instead of always translating into a relative path.
- Fixed bug that could cause misinterpretation of tool and include folders.
- Fixed bug that could cause a header file to be deleted in a clean operation (rare).
- Build System will not fail immediately if a response file is missing at the beginning of a build.
- Fixed bug that caused IDE environment variables not to be passed to batch file custom steps.
- Resources of type CTMENU in .RC files are now identified as dependencies.
- Fixed bug that could cause "DelayImpLib.dll" to sometimes not be referenced as it should.
- Fixed bug related to handling relative paths that exceeded the root folder level.
- Fixed bug that could cause a "Directory name cannot be an empty screen" Build System error message.
- References from C# projects to C++ projects is now supported.
- Fixed bug that prevented manifests from being embedded if the project file was missing the manifest section.
- Fixed bug that caused a parent project to be linked even if the "Build all projects regardless of errors" option is selected and a subproject fails.
- Fixed bug that could cause a "PCH not found" error if the PCH file path was different from a project's intermediate folder.
- /CL_REM can now correctly remove compiler options with input parameters such as /YX.
- Fixed bug that could cause a "Missing source file name" error in certain rare conditions.
- Errors in PCH-generating files no longer trigger a build system error, and are handled just like normal compilation errors.
Performance
- "Updating Dependencies" time is now 60% faster.
- Various performance optimizations for all build stages.
- New feature that doubles compilation of a file on a remote machine with a parallel compilation of the same file on the local machine (if currently available for compilation). Output
from the first machine to complete the compilation will be applied to the build.
- Compilation tasks that consistently do not receive CPU cycles are automatically terminated and re-assigned to another machine to avoid stalled builds.
- Added a few optimizations concerning output file network transfers.
- Fixed rare memory leak.
- Improved build cleanup speed.
Stability
- Fixed bug that could cause builds to stall when NVIDIA NView was installed.
- Fixed bug that could cause "Exception occurred in CreateProcessA" build system errors.
- Added automatic recovery from specific errors that are known to appear only in IncrediBuild builds. If a file fails with one of these known errors, it
will automatically compile using the standard VC compilation action.
- Fixed bug that could cause "zombie" instances of the vespawn.exe process to appear.
- Fixed bug that could cause compilation to fail due to an incorrect "file not found" error.
- Fixed bug that could cause "Permission denied" failures during builds.
- Fixed internal timeout scenario that could cause build to terminate with an error.
- Fixed bug that could cause "Failed to synchronize registry" compilation failures.
- Fixed bug that could cause interoperability issues between Win2k and WinXP machines.
- Fixed bug that could cause build service to shut itself down.
- Stabilized handling of remote computer shutdowns during build operations.
- Added automatic recovery from output writing errors.
User Interface
- New "Solution Settings" dialog (accessible via the Batch Build dialog and Visual Studio .NET/2005 IDE menus) that allows various per-project settings to
be easily applied.
- Revised Batch Build dialog now includes presets (configuration/project layouts which can be saved for easy future access from BuildConsole and the dialog).
- Added BuildConsole /OpenMonitor option (opens the Build Monitor window).
- Added option to resize file cache from the Coordinator application.
- Build progress calculation now only takes into account files that were actually built, and does not include files that were up-to-date.
- Added Coordinator Monitor option that allows remote modification of "Remote compiler process priority" Agent option.
- Build can now be halted during the "Clean" stage.
- Fixed bug with "Show command lines" option that caused command lines to sometimes appear out-of-order.
- Coordinator Monitor now always displays information showing the Coordinator that was selected in the Agent Settings dialog at the time the dialog was opened.
- Added new "CPU Information" column to Coordinator application.
- Added "Export..." and "Copy to Clipboard" commands to Build Time Statistics Coordinator window.
- The Coordinator display now highlights Agents that do not meet the minimal requirements for distribution (disk space, memory, etc.).
- The Coordinator display now recommends increasing the File Cache size for Agents that exhibit excessive swap-out activity.
- Improved Build History window initialization time.
- Idle CPU logic reimplemented with more robust code.
- Numeric columns in the Coordinator application can now be sorted correctly.
- Coordinator Monitor now always connects to the Coordinator specified in the Agent Settings dialog.
- Improved floating Build Monitor window Open performance.
- Fixed bug that could prevent the "BuildConsole /stop" from returning control after completion.
- Fixed minor issue with Build Monitor warning/error navigation.
- Fixed minor issue with Coordinator Monitor maximize/restore functionality.
- Added minor changes to About dialog appearance.
- Made a few changes to the "Status" column in the Coordinator monitor.
- Path to solution/project file added to the Build Monitor Summary window and to the Build History data.
Visual Studio integration
- Fixed several scenarios that could cause VC to relink/recompile files after an IncrediBuild build.
- If devenv.exe is started with /usenev, Builds started from the VS IDE will also inherit this setting.
- The "Debug project" IDE menu option now doesn't continue debug session if build errors were encountered.
- Added "Help" and "Contact Support" options to the IncrediBuild IDE menu (VC8 only).
- Fixed bug that could disable the ability to change the input language via the keyboard when the IncrediBuild add-in was loaded.
- Fixed bug with "Debug Project" IncrediBuild menu command that caused an error message to appear if executed during a debug session.
- Fixed bug that could cause incorrect detection of solution configuration and platform.
- The "Build Project" IDE command now builds the current project even if it is disabled in the current Solution Configuration.
- The "Compile with IncrediBuild" IDE command now compiles the selected file even if its project is disabled in the current Solution Configuration.
- Fixed notification messages describing reasons for skipping projects in a build.
Other
- The "process priority" options now control the process priority class and not the thread priority.
- Changed detection logic of number of logical/physical CPUs.
- Fixed bug that could cause an incorrect "Connection Failed" status to appear in the Coordinator display.
- All IncrediBuild processes now have valid version information.
|