|
May 23, 2006
IncrediBuild v2.50 has been released and is available for download here.
v2.50 features numerous performance enhancements, new UI features, bug fixes and general improvements over v2.42, as well as complete support
for Visual Studio 2005 and the Xbox 360 platform. For a full list of changes, see below.
Users evaluating IncrediBuild can install this version to reset the evaluation period to 30 days.
IncrediBuild 2.x users who are within their maintenance license period are entitled to a free upgrade to this version, and can use their IncrediBuild 2 license
file with this version. Upgrade terms for other users can be found in our pricing page.
Summary of Changes
Changes in Version 2.50
- Fixed bug that could cause library files in "Additional Library Directories" folders to be excluded from dependency evaluation.
- Minor internal changes.
Changes in Version 2.50 RC2
Performance
- Improved handling of network and disk access peaks during builds (compilation on local machine will be temporarily disabled).
- Improved general network layer (~10% improvement in general network performance)
- Added new option to disable compilation steps on the local machine.
Build System
- Added support for Xbox 360 XDK versions higher than November 2005.
- Added beta-level support for Metrowerks CodeWarrior builds.
- Added support for Xbox 360 builds in VS2005.
- Fixed bug that could cause "internal compiler errors" when mixing VC and IB files in the Xbox 360 platform.
- Fixed a dependency issue that could cause custom steps to run before they should.
- VS .NET: Fixed a bug that could cause errors when IncrediLink was used.
- Fixed a problem that could cause errors during Xbox 360 deployment phase.
- VS2005: Fixed bug that prevented Edit-n-continue from working in VS2005.
- VS2005: Assembly references are now properly copied to the output folder.
- VS2005: Added support for external manifest files.
- VS2005: Fixed bug that prevented output and intermediate folder definitions in local property sheets from being recognized.
- VS2005: Added support for environment variables in local property sheets.
- VS2005: Fixed manifest-related bug that could cause WinXP-style windows to appear in Win2k-style
- VS2005: Fixed bug related to /AllowIsolation linker option.
- VS2005: Fixed bug related to /CLRUNMANAGEDCODECHECK linker option.
- VS2005: Added support for CLRUnmanagedCodeCheck compiler option.
- VS2005: Fixed support for /AllowIsolation linker option.
- Fixed bug that could prevent the default /tlb option from being applied to the MIDL step.
- Added support for the /notlb MIDL option.
- Added support for /P compiler option.
- Added support for /showIncludes compiler option.
- "QueryBuilder Timeout" messages are now handled with 10 retry attempts.
- Fixed bug that could result in a ".pdb file not found" build system error.
- Fixed bug which could cause incorrect dependency calculation when source Files used the /FU compiler option.
- Corrected minor inconsistencies with /Ox compiler options.
- "#pragma once" related build system warning is now disabled by default.
- Fixed rare bug that could cause builds to fail if destination folder for .sbr files did not exist at the beginning of a build.
- In "Rebuild all projects regardless of errors" mode, if a project's link phase is skipped this is now regarded as a build error.
User Interface
- Added new "Network" column to Coordinator monitor which displays Agnets' network connection speed.
- Fixed bug that caused an incorrect "Starting a standard build operation while an IncrediBuild build is running is not recommended" message.
- Fixed various UI issues in "Network Connectivity Test" window.
- The "Cancel" button in the Build History window now works in all phases.
- VS2005: Fixed access violation when "Compile (current file only" option was selected when no project is open.
- Source files marked as "External" now display the source filename even when output is collapsed.
- The computer name is now displayed in the Coordinator monitor window caption when the monitor is activated from a remote machine.
Other
- Fixed incorrect memory detection for machines with over 2GB RAM.
- Corrected rare access violation in BuildConsole.exe .
- Fixed bug that could cause a "list index out of bounds" error in Coordinator monitor.
- Fixed bug that could cause a "This application has failed to start because the application configuration is incorrect." error message.
Changes in Version 2.50 RC
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 incorrect /Zc command line values to be used.
- Fixed bug that could cause a header file to be deleted in a clean operation (rare).
- Fixed incorrect detection of negative custom step return codes as errors.
- VC8: Fixed bug that caused incorrect command lines to be generated for the managed resource tool.
- 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.
- VC8: Fixed bug that could cause file-level overrides of the /clr option to be ignored.
- Fixed bug that could cause a build to fail if the project intermediate folder didn't exist before running a build.
- Fixed bug that in which a .lib source file with an empty custom step was incorrectly ignored.
- 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.
- Fixed unnecessary sensitivity to locale that could affect Agent assignment logic.
- 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.
- Fixed rare access violation during Visual Studio 7 add-in installation.
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.
- Windows installer version is now updated if necessary in order to support Visual C++ Runtime installation.
|