IncrediBuild Version History (versions 2.42 and older)

This section lists changes introduced in released IncrediBuild versions 2.42 and older:

Changes in Version 2.61 (Release Date: July 2, 2006)
User Interface Changes
  • Added additional system graphs.
  • Fixed Build Monitor appearance for display settings with a dark window background.
  • Build Monitor Progress page tooltips now show a graph legend (when system graphs are displayed).
  • Added fade in/out effect to Build Monitor progress page tooltips.
  • Batch Build dialog now shows name of project/solution file to be built.
Performance Changes
  • Improved directory synchronization performance.
  • Build System process now cannot be run in process priority lower than Normal, which could slow down disk performance.
Build System Changes
  • Fixed issue that could result in leftover idb/pdb files.
  • Fixed issue that could cause certain custom rules to be skipped.
  • VC7/8: Added support for $(SafeParentName) variable at the project level (e.g. prebuild event).
  • VC7/8: Added support for $(SafeRootnamespace) variable.
  • Fixed bug that could cause an Xbox 360 project to rebuild in a VC build after being built with IncrediBuild.
  • Fixed bug that could cause an incorrect include search path to be used when /FI was used in the compiler additional options field.
  • Fixed Xbox 360-related bug related to use of system variables in image name.
  • Fixed bug that caused missing reference errors to show up even if project was not selected in the current solution configuration.
  • Fixed bug that could result in an incorrectly name Xbox 360 DLL.
Other Changes
  • Added new "Build Groups" feature that allows independent groups of Agents to be defined, all using the same Coordinator.
  • Fixed bug that could cause the floppy drive to be used briefly when starting a build.
  • Fixed compatibility issue with Microsoft hotfix #918559.
  • Fixed bug that could cause BuildConsole to fail with an "exit code 256 returned" error.

Changes in Version 2.60 (Release Date: June 27, 2006)
User Interface Changes
  • Improved the Build Monitor Progress, Projects, Summary and Messages page looks.
  • Added new "system graphs" feature to Build Monitor Progress page, which allows visual monitoring of various system parameters throughout builds.
  • Build Monitor Progress page zoom in/out action is now smoothly animated.
  • Build Monitor Progress page now allows panning by holding the mouse button and moving the mouse.
  • Build Monitor Progress page now includes a time bar showing elapsed time throughout the build.
  • All dialog box graphic elements have been revised.
  • Projects that skipped linking because of a failed dependency are no longer marked as an error in Build Monitor.
  • Build Monitor files can now be saved before build has completed.
  • Added IncrediBuild logo to MS Visual Studio splash screen.
  • Added choice between building the entire solution and building the startup project before starting a debug session.
  • Fixed bug that could cause incorrect an warning/error count.
  • "Network Connection" Coordinator Monitor column now contains additional network adapter information.
  • Fixed bug that caused Intel-converted projects not to be displayed in Solution Settings dialog.
  • BuildConsole now supports devenv.exe-style "/projectconfig" command line argument.
  • Fixed bug that caused the Visual Studio IDE to freeze if closed while a build was running.
  • Fixed Bug that could cause the Build Monitor Expand/Collapse plus sign to show up misaligned with the correct warning/error line.
  • Tooltip is not shown immediately when mouse is held over Build Monitor left-pane menu icons.
  • Double-clicking on a "Linking" bar now skips to the build output text even if link step did not produce any output.
Build System Changes
  • VS2005: User macros in Property Sheets are now supported.
  • VS2005: Custom rules are now supported.
  • VS2005: Fixed bug that could cause incorrect Xbox 360 deployment.
  • Intel C/C++ Compiler precompiled headers are now supported (requires latest Intel 9.1 patch).
  • Fixed bug that could cause link failures when IncrediLink was used.
  • Fixed bug that could cause the compiler to fail to initialize in certain conditions involving differently-named Windows folders across machines.
  • Fixed bug that could cause miscalculation of __TIMESTAMP__ macro.
  • Fixed bug that could cause miscalculation of $(FrameworkSDKDir) macro if both versions 1.0 and 2.0 were installed.
  • VS2005: Fixed bug that could cause projects missing the win32 platform to fail.
  • Fixed bug that could cause the compiler to fail to initialize in certain conditions involving a third party build product.
  • VC7: Added new "Link library dependencies" option to Solution Settings dialog.
  • VS2005: Fixed resgen.exe command line bug.
  • Fixed rare bug concerning external compilation of PCH's that could cause endless bars if compilation failed.
  • Fixed bug that caused missing environment variables to be reported even if the projects triggering the error were not included in the built solution.
  • Fixed rare bug that could cause modification of C# project files in IDE-initiated builds.
  • Fixed bug that failed builds whenever an environment variable was specified without a closing parenthesis.
  • Solutions not containing any C/C++ projects are now supported.
  • Fixed bug that could cause certain warnings to be filtered from the build output on Windows 2003/Vista machines.
  • Fixed bug that could fail builds in solutions containing website projects.
  • Fixed bug that could result in partial execution of manifest step.
Other Changes
  • Added support for Windows Vista (beta 2).
  • Network Connectivity Test tool revised and improved.
  • Performed various internal performance improvements.
  • optimized file network transfer to multi-CPU remote machines.
  • Added new option to write output files to the disk in the background.
  • Build System shut-down is now more robust.
  • Fixed bug that could cause an Agent to turn into a Helper Agent randomly.
  • Fixed rare access violation in Coordinator service.

Changes in Version 2.50 (Release Date: May 23, 2006)
  • 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 Agents' 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.

Changes in Version 2.42 (Release Date: September 6, 2005)
  • Fixed bug that caused a decrease in performance, especially in large-scale builds.
  • Fixed bug that caused VC8 projects created in certain locales to be identified as VC7.1 projects.
  • Fixed bug that triggered a "Base path cannot be an empty string" error message when certain Build Monitor messages were double-clicked.

Changes in Version 2.41 (Release Date: August 31, 2005)
Build System
  • Added beta-level support for Visual Studio 2005. Note that while currently no IDE integration (toolbar, menu, etc.) is provided, it is possible to manually add a menu option that runs IncrediBuild builds.
  • Fixed bug that could cause random Internal Compiler Errors in Release builds.
  • Fixed bug that could cause source files that #include generated code to compile before their dependencies were built (common in environments using code-generation packages like QT).
  • Fixed bug that could cause incorrect Xbox360 image deployment.
  • Fixed bug that could cause a managed static lib project to be excluded from its parent's link command line.
  • Fixed bug that could cause a link error when lib filenames that contained a period were used.
  • Fixed bug that could prevent Whole Program Optimization from working correctly.
  • Fixed bug that could fail builds with "failed to duplicate handle: the parameter is incorrect" error messages.
User Interface
  • Added new "Agent Description" column to Coordinator Monitor.
  • Added "Export" and "Copy to Clipboard" functions to Coordinator Monitor Agent list.
  • Coordinator Monitor "File Cache" column now shows both the total and used size in MBs for every Agent.
  • Coordinator Monitor Memory amount columns are now displayed in MB instead of KB.
  • Coordinator Monitor Disk space columns are now displayed in GB instead of MB.
Other
  • "Automatic Compiler Termination" feature is re-written and now works in all cases.
  • "Standalone mode" changed and now allows builds to run using all local CPUs.
  • Fixed BuildService.exe memory leak that could occur with large source trees.
  • Improved project loading speed for large solutions.
  • Default File Cache size is now 512MB.
  • Improved Registry access performance.
  • Fixed bug that caused "Failed to handle synchronization request" error messages.
  • Fixed bug that could cause "File locked" errors for temporary .bat files.

Changes in Version 2.40 (Release Date: August 10, 2005)
New Virtual Environment Module
The major change in version 2.40 is a completely re-written VE (Virtual Environment) module. The VE is responsible for remote/local compiler execution and for file caching. The effects of this change are:
  • Improved performance (up to a 20% additional improvement in performance).
  • Improved robustness and stability (various issues related to environments with different operating systems, Managed Code builds and random "hanging" compilation bars are now eliminated).
Build System
  • Xbox 360 builds are now supported.
  • IncrediLink now includes subproject dependencies specified in the "Additional Dependencies" link setting.
  • New "Do not create libraries" option (available only when IncrediLink is used) saves additional time by skipping link steps of libraries whose object files are included in the EXE/DLL's link command line.
  • Added a new option to the .ib_ini file that allows specification of compiler or link options to be added or removed from IncrediBuild command lines.
  • ActiveX references and COM wrappers are now supported.
  • Fixed bug that could cause incorrect calculation of $(FrameworkDir) when both VC7 and VC8 are installed.
  • /base compiler option now allows use of environment variables.
  • Fixed bug that caused a build failure when an empty RC output filename was specified.
  • Fixed bug that could fail to build managed projects containing references to C# projects.
  • The AltID Xbox command line option now supports multiple values.
  • Fixed bug that could cause link command lines to fail for projects using MFC as a static library.
User Interface
  • Added new "Standalone Mode" that disables network distribution.
  • Fixed Visual Studio IDE crash when double-clicking an error with a non-existent line number.
  • Fixed Visual Studio IDE crash related to collapsed outlining.
  • Fixed bug that caused the About screen to generate an error on Coordinator-only installations.
  • Fixed bug that caused a "Project not found" error to be displayed when attempting to build projects using various profiling tools from the Visual Studio IDE.
  • CPU counters are now displayed along with Agent names on multi-CPU machines running a trial version.
  • Configuration names in the Batch Build dialog are now sorted.
  • Fixed bug that caused a "List index out of bounds" error in the Coordmonitor /StatusDump option.
  • The "Allow disable" Coordinator option is now inaccessible in the view-only Coordinator display.
Other
  • IncrediBuild now works on non-administrator accounts.
  • AMD Processor speeds are now correctly evaluated.
  • File Cache sizes higher than 1Gb can now be specified.
  • Fixed bug that sometimes caused the "Automatic compiler termination" option to miscalculate timeouts.

Changes in Version 2.30 (Release Date: May 4, 2005)
Build System
  • VC7: Added new "IncrediLink" option that dramatically speeds up incremental links.
  • Fixed bug that could cause projects using Managed Extensions and Project References to fail in certain conditions.
  • XBox: Fixed bug that caused build errors when specifying environment variables in intermediate and output folder paths.
  • Fixed bug that caused files to compile before a pre-build step in a sub-project is built.
  • VC7: Fixed bug that could cause duplicate symbol link errors in certain conditions.
  • New network parameter values that may reduce "build gaps" and improve performance.
User Interface
  • Added improved Build Monitor progress bar.
  • Added new option that controls mouse wheel behavior in Build Monitor Progress view. Available options are: zoom in/out, vertical scroll and horizontal scroll.
  • Added new Coordmonitor "/StatusDump" command line option that creates an XML file with the number of builds running and current Agent employment status.
  • Added new Coordinator application columns: "Visual Studio Version" and ".NET Framework Version".
  • Added new summary line in build output specifying the number of configurations that were built, skipped of failed.
  • VS.NET: "Debug Project" IDE command now builds the current Solution Configuration before debugging and not the current project configuration.
  • The Summary icon in the Build Monitor menu pane is now the last icon.

Changes in Version 2.21 (Release Date: March 16, 2005)
Build System
  • Added new circular dependency detection mechanism that warns when a circular reference between projects exists in a solution/workspace.
  • eVC4 support stabilized.
  • Intel compiler v8.x is now supported.
  • Fixed bug that caused .idb files to be left undeleted in intermediate folders.
  • Fixed bug that caused a "Directory name cannot be an empty string." when building certain non-C/C++ projects.
  • Fixed bug that caused build errors when configurations were of the format "Name (My Platform) - Something".
  • Fixed bug that could fail loading certain project files with a "List index out of bounds" error message.
  • Clean operation in Makefile projects is now identical to VC's behavior.
  • InputDir and InputPath now produce relative paths in VC6.0.
  • VC7: Fixed bug with projects having multiple /ASSEMBLYRESOURCE compiler values.
  • VC7: Fixed bug that prevented IDL files from being built in Static lib projects.
  • VC7: Fixed bug that could cause a "/U" compiler option to be ignored.
  • VC7: Fixed bug that caused incorrect configuration names to be built in certain multi-level project dependency hierarchies.
  • VC7: Fixed bug that could cause Managed Code projects having References to other managed projects to fail.
  • Fixed bug that caused binary source files running a custom step to be excluded from the link stage.
  • Fixed bug that caused a "source file not found" compiler error in certain projects.
  • Fixed bug that could cause the /nologo compiler option to be ignored.
User Interface
  • Changed Build Monitor looks to have an Outlook-style menu.
  • Fixed bug that could cause an access violation when double-clicking an error from the IDE.
  • Build Monitor Progress view now allows Zoom in/out using mouse wheel and +/- keys.
  • Added new feature that allows definition of specific Agents that will not be allowed to enter "Disabled" mode (from the Coordinator Monitor).
  • Fixed bug that caused build output to be truncated when building certain non-C/C++ projects.
  • Using BuildConsole without /prj to build VC7 projects is now equivalent to a "Build Solution" operation.
  • Fixed bug that prevented the Network Connectivity Test feature from being run from a View-Only Coordinator Monitor.
  • Added new tray-icon menu icons.
  • Fixed bug that caused "PCH not found" errors not to appear in the Projects pane.
  • Fixed bug that could cause the Windows taskbar and IncrediBuild tray-icon menus to be displayed simultaneously.
  • Double-clicking an error from the IncrediBuild output window will now also expand inlined source file text.
  • Fixed mix-up between Batch Build and Settings menu icons in VS add-in.
  • Fixed problems in the "Help" menu in the Network Connectivity Test window.
  • License Display slightly modified in About dialog.
  • Added informational text to Network Connectivity Test if run while no Agents are available.
Other
  • Fixed bug that could cause builds to stall.
  • Fixed bug related to loading of minilzo.dll.
  • Fixed .IDB file close/delete related errors.
  • Fixed crash during Setup procedure related to Windows Firewall.
  • Added new Coordinator option that allows a timeout to be specified for compilation tasks. Compilation tasks exceeding this value will be stopped and re-assigned to a new Agent.
  • Various Make System optimizations added.
  • Fixed bug that caused Recv times to be much lower than Send times.
  • Windows Firewall related messages are now clearer.
  • Fixed bug that could fail the Uninstall procedure because of failure to remove certain files.
  • Fixed bug that caused multiple-CPU settings to be reset in version updates.
  • Fixed bug that could cause a delay in remote Agent assignment.
  • Network Connectivity Test now works with Local Interprocess Communications mode disabled.

Changes in Version 2.20 (Release Date: November 23, 2004)
Build System
  • Support for MS Embedded VC 4.0 added (beta-level feature).
  • Fixed a bug that could cause builds to fail due to incompatible values between the /Gd (CDecl) compiler option used in source files and in the PCH.
  • Environment values specified in the VS IDE search path specifications (Tools->Options menu) are now supported.
  • Fixed a bug that could cause "Duplicate Symbol Definition" errors in certain conditions.
  • Certain DOS commands used in custom steps or build events are now identified and automatically treated as if the step included the "IncrediBuild_AllowOverlap" directive, potentially speeding up builds.
  • Added new /link_add and /link_rem BuildConsole options that allow overriding linker command line options at the command line level.
  • Intel compiler v8.1 is now supported (beta-level feature).
  • VC6: Fixed a bug that could fail builds when the output file name was surrounded by quotes.
  • VC6: Fixed a bug that prevented the /vms and /vmg compiler options from being used together.
  • VC7: Fixed a bug that could cause custom steps with more than one output file to always be rebuilt.
  • VC7: Fixed a bug related to compiler "Additional commands" property inheritance.
  • VC7: Fixed a bug where projects including LIB source files were not rebuilt properly when the .LIB file was changed.
  • VC7: 'Inherit from project defaults' is now supported in the Linker 'Additional Dependencies' option.
  • VC7: 'Version' property is now correctly supported.
  • Fixed a bug in which IncrediBuild failed to identify an .h file as an output file of an .IDL/.ODL file.
  • Fixed a bug that caused a link failure when the intermediate/output folder specification started with a backslash character.
  • Fixed a bug that could fail the Xbox deployment step in certain conditions.
  • Fixed a bug that could cause invalid debug information to be generated with some Xbox projects.
  • Fixed a bug that caused an "Invalid command line" message to be displayed when the /I switch was specified in the compiler additional options box with a single trailing backslash character.
  • Fixed a bug that prevented use of the /W0 compiler option.
  • Fixed a bug that caused C/C++ projects to be built twice if a non-C/C++ project dependent on these projects was rebuilt.
  • VC7: Fixed a bug that could fail builds when several response files were specified.
  • VC7: Fixed a bug that could fail builds when a source file name was specified with trailing spaces.
User Interface
  • A read-only version of the Coordinator Monitor is now included with the Agent installation.
  • VC7: The "Build Project" command can now either build the currently selected project or the Startup project.
  • Added a new "Build with IncrediBuild" option to the Windows Explorer context menu for .vcproj, .sln, .dsp and .dsw files.
  • The Coordinator application now persists its location and size between sessions.
  • Output for Non-C/C++ projects is now displayed gradually instead of only on completion.
  • BuildConsole /wait (wait for current build to complete) is now the default BuildConsole behavior.
  • Added new BuildConsole /nowait option (exit BuildConsole if a build is already running).
  • If a build is already running when a build is initiated, both BuildConsole and tray-icon-initiated builds display the currently running build's progress while waiting for it to complete.
  • Fixed bug that caused BuildConsole /wait to fail if two instances of BuildConsole /wait were run simultaneously.
  • "Windows 2003 Server" is now recognized in the Coordinator application "OS" column.
  • VC7: Wildcards are now supported in the /cfg BuildConsole option.
  • Coordinator Build Time Statistics columns can now be sorted.
  • Added 'Stop build' command to the floating Build Monitor 'File' menu.
  • Fixed color scheme glitch that would sometimes show unreadable white text over gray background.
  • Hiding the Build Monitor Projects pane columns is now possible.
  • Clean operations are now displayed separate bars in the Build Monitor Progress pane.
  • Build history window size and location are now persisted between sessions.
  • Fixed glitch that could cause the separation bar in the Build Monitor "Projects" page to disappear.
  • Added a 'Cancel' button to progress screen displayed while opening large Build Progress (.ib_mon) files.
  • The 'Open floating Build Monitor window on build start' option now works with the VS .NET add-in.
  • Fixed access violation error that appeared in some cases where incorrectly manually modified .sln files were used.
Other
  • Improved tolerance to certain network/Windows-related scenarios that could cause a build to 'hang'.
  • Added a new "Network Connectivity Test" feature that tests each Agent's network performance, to assist troubleshooting and optimization.
  • Setup now automatically adds IncrediBuild components to the NVIDIA nView ignore list (on machines running both software packages), to avoid possible build hangs.

Changes in Version 2.13
Build System
  • Support for MS Embedded VC 4.0 added (beta-level feature).
  • Fixed a bug that could cause builds to fail due to incompatible values between the /Gd (CDecl) compiler option used in source files and in the PCH.
  • Environment values specified in the VS IDE search path specifications (Tools->Options menu) are now supported.
  • Fixed a bug that could cause "Duplicate Symbol Definition" errors in certain conditions.
  • Certain DOS commands used in custom steps or build events are now identified and automatically treated as if the step included the "IncrediBuild_AllowOverlap" directive, potentially speeding up builds.
  • VC6.0: Fixed bug that could fail builds when the output file name was surrounded by quotes.
  • VC6.0: Fixed a bug that prevented the /vms and /vmg compiler options from being used together.
  • VC7: Fixed a bug related to compiler "Additional commands" property inheritance.
  • VC7: Fixed a bug where projects including LIB source files were not rebuilt properly when the .LIB file was changed.
  • Fixed a bug that caused a link failure when the intermediate/output folder specification started with a backslash character.
  • Fixed a bug that could fail the Xbox deployment step in certain conditions.
  • Fixed a bug that could cause invalid debug information to be generated with some Xbox projects.
  • Fixed a bug that prevented use of the /W0 compiler option.
  • VC7: Fixed a bug that could fail builds when several response files were specified.
  • VC7: Fixed a bug that could fail builds when a source file name was specified with trailing spaces.
User Interface
  • A read-only version of the Coordinator Monitor is now included with the Agent installation.
  • VC7: The "Build Project" command can now either build the currently selected project or the Startup project.
  • Added a new "Build with IncrediBuild" option to the Windows Explorer context menu for .vcproj, .sln, .dsp and .dsw files.
  • The Coordinator application now persists its location and size between sessions.
  • Output for Non-C/C++ projects is now displayed gradually instead of only on completion.
  • "Windows 2003 Server" is now recognized in the Coordinator application "OS" column.
  • VC7: Wildcards are now supported in the /cfg BuildConsole option.
  • Coordinator Build Time Statistics columns can now be sorted.
  • Fixed color scheme glitch that would sometimes show unreadable white text over gray background.
  • Hiding of Build Monitor Projects pane columns is now possible.
  • Build history window size and location are now persisted between sessions.
Other
  • Added a new "Network Connectivity Test" feature that tests each Agent's network performance, to assist troubleshooting and optimization.

Changes in Version 2.12 (Release Date: August 29, 2004)
Build System
  • Updating Dependencies time in the "Compile current file" IDE option is now substantially faster in solutions/workspaces containing multiple projects.
  • Added new "Project Priorities" feature that allows user-specified projects to be built before or after other projects in a solution/workspace.
  • Fixed a bug in v2.1/v2.11 that could cause the wrong configuration/platform name to be built in multi-project solutions using mixed configuration names.
  • Added support for the following Xbox project properties: Remote machine address, Suppress Preloading, Title info, Test Service, Test Media types
  • VC6.0: Fixed a bug that could cause a build failure when folder names where surrounded by quotes.
  • Fixed a bug that could cause a build failure when no value was provided for the project's intermediate folder.
User Interface
  • Added new "Debug" menu option to the VS.NET IncrediBuild menu/toolbar that builds out-of-date files and starts a debug session.
  • Added new "Status Window" to the Coordinator application, which displays a summary of all current Agent activity.
  • Added new Agent Settings option that controls whether IncrediBuild will continue to build remaining configurations after encountering a fatal error in a build.
  • Added new Agent Settings option that controls whether IncrediBuild will use local LIB, INCLUDE and PATH variables instead of the VS IDE paths.
  • Added new Agent Settings option to show the command lines IncrediBuild uses to build targets in the build output.
  • Added new Agent Settings option to show the time each target was built in the build output.
  • Added new Agent Settings option to show the name of the Agent that build each target in the build output.
  • Added new Agent Settings option to define WAV sounds that will be played when a build completes successfully, fails or is cancelled.
  • Fixed bug that prevented the Alt-F-S keyboard combination from being used.
  • Fixed bug in v2.1/v2.11 that caused a build failure when building projects that have been renamed through the VS.NET IDE.
  • Fixed error message shown when a Coordinator version update request failed.
  • Fixed bug in Output/Projects view that caused the text to scroll out of view in some cases.
Other
  • Fixed bug that required Administrator privileges for the Agent Settings dialog to run (in some cases).

Changes in Version 2.11
  • Fixed bug in v2.1 that could cause link step to fail when the space character was present in project names.

Changes in Version 2.1 (Release Date: August 17, 2004)
Build System
  • Fixed bug that could, in some cases, use incorrect optimization flags (when using the /O1 or /O2 options).
  • Fixed bug that could, in some cases, ignore file-level overrides for compiler and linker options.
  • Fixed bug that caused MIDL step dependencies to be calculated incorrectly in some cases.
  • Fixed bug that would cause IncrediBuild to ignore changes made to header files referenced with the syntax: #include <\path\file.h>
  • Fixed bug that could sometimes cause the /EHsc compiler option to be used incorrectly.
  • Fixed bug that sometimes caused compilations to fail with "fatal error C1086: Cannot seek precompiled header" messages.
  • Fixed bug that failed to handle projects using 2 .rc files that share the same output .res file.
  • VC7: allow files with the .cc extension to be compiled with IncrediBuild.
  • Fixed bug that would trigger an access violation when building C#-only solutions.
  • Fixed bug that prevented IncrediBuild from loading project files with a missing 'VCPostBuildEventTool' element.
  • Fixed bug that used the /ix86 compiler flag instead of /x86 in VC7 builds.
  • Xbox: The Additional Files project property is now correctly supported.
  • Added support for Signkey and AltID flags in Xbox projects.
User Interface
  • Added support for building the currently highlighted project in the VS.NET IDE (instead of the startup project).
  • Add option to play a custom sound when build completes successfully, completes with errors or is terminated.
  • Double-clicking warning and error messages in the VS.NET IDE integrated Build Monitor now shows the messages in the IDE status bar.
  • Fixed bug that would cause cursor to disappear in the Build Monitor Output and Projects display.
  • .DEF files can now be opened by double-clicking on errors/warnings from the VS IDE integrated Build Monitor.
  • VC7: Configuration summaries now specify the configuration name and not the configuration output filename.
Other
  • Added automatic configuration for use in conjunction with MS Windows XP firewall.
  • Fixed memory leak in BuildSystem.exe that could cause the process memory usage to grow continuously during a build.
  • Fixed bug that would cause mails sent using the "Contact Support" tray-icon option to bounce.

Changes in Version 2.04 (Release Date: March 5, 2004)
Build System
  • Managed resources are now supported.
  • Fixed bug that caused an .RC file to run before its dependent files.
  • Fixed bug that caused an unnecessary /def switch to be added in certain conditions to the linker command line.
  • Added support for the 'Register Output' linker option.
  • Fixed bug that failed Xbox image deployment stage.
  • Fixed bug that failed builds using drive names in the include search path.
  • Preprocessor parser for .cpp, .c, .rc and .idl/.odl files is now more robust.
  • MIDL step output files are now correctly determined in all scenarios.
  • $(FrameworkVersion), $(ReferencesPath) and $(FrameworkSDKDir) environment variables are now correctly supported.
  • Added option to ignore non-C/C++ projects (C#, VB, etc.).
  • Fixed bug that caused an import library's folder not to be automatically created if missing.
  • Fixed bug that caused certain projects to always re-link in debug configurations.
  • Fixed bug that prevented projects with a '.' character in solution/project configuration names from building with IncrediBuild.
  • Fixed bug that caused an invalid cl.exe command line to be generated when a folder name ending with a single backslash was specified with the /AI compiler switch.
  • Projects with an unsupported platform will now be built locally using devenv.exe /build.
  • Added new 'IncrediBuild_RunFirst' directive that forces a file-level custom step to run before all other steps in a project.
  • Added new setting that defines a threshold (in seconds) for source/output file timestamp checking.
  • '/insertfile' Xbox command line parameter now fully supported.
User Interface
  • Fixed bug that failed the BuildConsole /out switch in certain conditions.
  • Build System warnings now appear in the BuildConsole build output.
  • Fixed bug that caused compilation bars to appear in wrong offsets when re-opening Build Monitor.
  • A message is now given when a user does not have sufficient user privileges.
  • Added new 'Project format' column to Build History window.
  • Improved support for the 'Devenv /build' syntax support.
  • Added new line wrap option for build output.
  • Fixed bug in tray-icon recent build list option.
  • Added new 'Status' column to Build Monitor Projects view, which allows sorting of project configurations according to their current build severity.
  • Fixed unnecessary pop-up message that would occur in multiple-user and terminal services configurations.
  • Coordinator application highlighting of Agents that do not meet minimal machine requirements is now more eye-catching.
  • Fixed bug with Build Monitor and Build History windows sorting logic.
  • Build System messages now also include timestamps relative to the build start time.
  • Added warning when user attempts to connect directly to a Backup Coordinator.
  • Added warning for project's using Automatic pre-compiled headers.
  • Removed two unnecessary 'Cancel' dialog buttons.
Other
  • Slightly improved output file transfer performance.
  • Fixed bug that prevented using IP addresses in the Agent Settings dialog Coordinator location field.
  • CPU Hyperthreading detection logic fixed.
  • Added setting that controls process priority for 'BuildSystem.exe'.

Changes in Version 2.03 (Release Date: February 27, 2004)
  • Fixed bug that could cause excessive CPU usage to occur in trial licenses (processes "BuildService.exe" and "Coordservice.exe").
  • Fixed bug that caused a trial license to be installed when specifying a valid license file in the Setup application.
  • Fixed bug that caused an incorrect linker command line to be used when the project's output file name was enclosed in quotes.
  • Fixed bug that could cause the MSVC6.0 debugger to miss source file paths.
  • Fixed bug related to missing TLI/TLH files in the link phase.
  • Added support for cl_add/cl_rem BuildConsole directives (add/remove compiler options) in VC.NET.
  • Added support for BuildConsole response files.
  • Fixed bug that caused a TLI/TLH file to be missing when a compiler message referenced that file.
  • Coordinator application now highlights in red Agents with insufficient memory or disk space.
  • Updates run on remote Agents configured not to require user confirmations now close the Version Update window if update was successful.
  • Added new menu to floating Build Monitor, with 'Save as', 'Replay' and 'Send to mail recipient' options.
  • Added 'natural' sorting order to Build Monitor Projects view.

Changes in Version 2.02 (Release Date: February 19, 2004)
  • Fixed bug that caused compilation failures on Win2K machines that had Microsoft hotfix KB828028 installed.
  • Fixed bug that prevented extension packages from automatically becoming enabled when subscribing an Agent.
  • Fixed bug that could disable the Build Monitor CTRL-C keyboard shortcut in the MSVC.NET IDE.
  • VC6.0: C/CPP Source file extensions are now read from the registry.
  • Fixed bug that could cause compilation failures when #including files with paths longer than 256 characters.
  • Fixed bug that could cause two builds to open when opening a Build History item.
  • Progress bar added to long Build History/Build Monitor initializations.

Changes in Version 2.01 (Release Date: February 2, 2004)
  • Fixed bug that would cause excessive CPU usage by the process "BuildService.exe" when using an evaluation license under certain conditions.
  • Fixed bug that would sometimes cause the MSVC editor caret to disappear or change location when starting a build.
  • Fixed bug that would cause excessive CPU usage when using the MSVC.NET IDE to edit solutions containing unloaded projects.
  • The #import "libid:<GUID>" syntax is now supported.
  • Assembly references are now supported in managed code projects.
  • Improved hyper-threading detection logic for machines with more than 2 processors.
  • /FIXED linker flag is now supported.
  • Hyper-threading detection can now be manually overridden.
  • Fixed bug that caused a failure when building makefile projects with no output filename defined.
  • Fixed bug that caused a PCH filename to be incorrectly determined in some cases.
  • Fixed bug: Setting the Build Monitor to always open in the Summary pane wouldn't work.
  • Fixed bug: Under certain conditions IncrediBuild would give a "Directory name cannot be an empty string." when loading a .vcproj file.
  • Fixed bug: Under certain conditions IncrediBuild would give a "List index out of bounds (1)" when loading a .dsp file.
  • The Next/Prev Warning/Error Build Monitor actions now also navigate to secondary (indented) tool messages.

Changes in Version 2.00 (Release Date: January 18, 2004)
Build System
  • Xbox projects are now supported.
  • Intel Compiler v7.x is now supported.
  • VC.NET: Added support for Whole Program Optimization.
  • VC.NET: /clr (managed extensions) compiler switch now supported.
  • Fixed bug: Internal compiler errors would appear in certain conditions.
  • Fixed bug: MIDL-related output files would sometimes be incorrectly determined, causing compilation errors.
  • Fixed bug: The following error would sometimes appear: "Cannot load synchronized application: No executable path provided."
  • Fixed bug: Incorrect resource compiler command line would be used when MFC was set to be used as a shared DLL.
  • Fixed bug: certain debug-information-related errors would appear randomly.
  • Fixed bug: .SBR filenames weren't correctly determined in some cases.
  • Multiple pre-compiled headers in the same project are now supported.
  • VC6.0: File-level intermediate folder override now supported.
  • VC.NET: Property inheritance enabled for MSVC 7.0.
  • VC.NET: /heap, /stack, /include and /assemblymodule linker options are now fully supported.
  • VC6.0: /Gm- and /Gi- are now not automatically added to compiler command line when no PCH is used.
  • Fixed bug: /map linker option now fully supported.
  • Fixed bug: PDB location would sometimes be incorrectly determined.
  • Fixed bug: #include files and #import statements specified within the context of multi-line comments were scanned for changes. All commented out files are now ignored.
  • Fixed bug: opening certain project files would result in the following error: "Directory name cannot be an empty string.".
  • Fixed bug: A custom step defined on a source file would sometimes be executed unnecessarily.
  • Fixed bug: The /pdb option would sometimes be incorrectly added to the LIB tool command line.
  • VC.NET: Fixed various dependency-related bugs.
  • Configuration name currently being compiled is now shown in build monitor caption.
User Interface
  • New build output view now includes expand/collapse actions for warnings and errors (similar to the .NET editor), bookmarks and warning/error icons that highlight build warnings and errors. Additionally, the display no longer flickers when showing especially large outputs.
  • "Flashing" effect in IncrediBuild warnings and errors page can now be disabled.
  • Retry/Ignore/Ignore All/Cancel options now appear for all Coordinator multiple-Agent actions.
  • Agent "description" field appears in both Agent Settings dialog and Coordinator application.
  • BuildConsole.exe now supports msdev.exe and devenv.exe build command line syntax.
  • New Build Monitor toolbar buttons: Zoom in/out, Find, Next error/warning, Autoscroll.
  • New, cleaner look for Agent Settings dialog and Coordinator settings dialog.
  • "Swapfile size" column in Coordinator application now includes the number of physical fragments on the disk (for performance reasons: when high, run a defrag operation on that Agent's disk).
  • Added "Logging level" option to Coordinator application, that allows remote control of all Agent's logging level.
  • Fixed bug: certain options in integrated build monitor would not be persisted.
  • Fixed bug: keystroke in the Visual Studio IDE would be forwarded to the build monitor.
  • New Agent Settings dialog option allows specification of the Agent swapfile's location.
  • New "/wait" BuildConsole command line option will wait for a currently running build to complete and then start the new build (instead of failing).
  • New "Restart Agent service" option in Agent Settings dialog.
  • Build Monitor "Projects" view splitter bar position can now be adjusted.
  • Build Monitor "Projects" view project list can now be sorted according to configuration name and build progress.
Other
  • Multiple-CPU machines are now supported.
  • New Feature: Build History window keeps track of past builds.
  • New feature: Agent priorities allow certain Agents to run higher priority builds and receive more remote compilation resources.
  • New feature: Visual Basic, C# and Setup projects can now be built with IncrediBuild (will always run on local machine).
  • New feature: "Backup" Coordinator allows you to install another Coordinator that will automatically become active if the primary Coordinator becomes unavailable for some reason.
  • New feature: Support for installation alongside idle-CPU applications (like seti@home).
  • Fixed bug: IncrediBuild Agent can now be used with a Non-administrator user.
  • Dependency information is now persisted between builds. This improved subsequent build times.
  • Improved caching mechanism now shortens subsequent build times.
  • Various logging-related changes now make it easier to trace problems.
  • Agent's "Enabled/Disabled" state can now be persisted between system shutdowns.
  • Improved Agent assignment logic.
  • Build System process now runs in higher priority, improving overall performance.
  • Fixed bug: Build System process would stay up after build has finished.
  • Fixed bug: build log files (generated with the BuildConsole /log option) can now be opened before the build has completed.
  • Fixed bug: operation from within Terminal Services would sometimes fail.
  • Fixed bug: Setup would sometimes get stuck while installing MSVC add-ins.
  • Fixed bug: Build Monitor would sometimes take a long time to open.
  • Fixed bug: MSVC.NET IDE would sometimes crash during shut-down.
  • Fixed bug: a "Cannot load synchronized application" error would sometimes appear in mixed VC.NET 2002/2003 environments.

Changes in Version 1.31 (Release Date: August 14, 2003)
Build System
  • Added new /UseEnv BuildConsole switch that will force use of the process's PATH, INCLUDE, LIBPATH, and LIB environment variables instead of MS Visual C++ IDE paths.
  • VC.NET: Fixed bug that caused incorrect an /entry flag to sometimes appear in link.exe command lines.
  • The order of optimization flags in cl.exe command line is now fully compatible with MSVC.
  • VC7.1: Fixed bug that sometimes caused incorrect preprocessor symbols to be used when a file was set not to inherit preprocessor definition values from the project level.
  • Non-compilation steps will now correctly work with localized (non-English) folder paths.
User Interface
  • minor changes applied to Agent Settings dialog "Browse Information Creation" section for better clarity.
  • Improved clarity of warning messages in remote Version update sequence.
  • Improved clarity of warning messages shown when trying to build with either an unsubscribed Agent or an Agent without the proper Extension package.
Other
  • Fixed bug that caused "Internal Compiler Errors" to appear in certain conditions.
  • Fixed bug that caused the following error to appear in certain conditions: "Failed to complete program database update. Invalid stream position: 1701603914 (size is 174680)"
  • Fixed bug that caused the following build system warning to appear in certain conditions: "Error mapping view of file for reserved memory".
  • Fixed bug that sometimes caused an "error C2018: unknown character '0x10'" compiler message to appear for certain machines.
  • VC.NET: Fixed bug that could cause failure to load solutions containing non-c++ projects.

Changes in Version 1.3
Build System
  • Dependencies are now correctly evaluated for source files that are generated during a build.
  • Fixed bug with dependency binding between custom steps in dependent projects.
  • Fixed bugs several bugs related to file path syntax (.NET).
  • Added support for Tools->Directories paths that use $(env vars)(.NET).
  • Fixed bug that caused a project-level custom step not to be run in incremental builds (.NET).
  • Fixed bug that caused BSCMake to always be run in some conditions, regardless of Agent Settings.
  • Fixed bug related to MIDL steps that don't with an empty .TLB file value (.NET).
  • LIB files specified in "Additional dependencies" are now included in dependency evaluation (.NET).
  • Added support for Embedded IDL in link step (.NET).
  • Fixed capitalization bug in RC command line generation (VC6.0)
  • $(InputDir) VC variable is now dynamically evaluated (VC6.0)
  • 'Additional library directories' linker option now supported (.NET).
  • Fixed bug that could cause a wrong optimization command line parameter to be used when no value was specified in project file (.NET).
  • Unloaded projects are now ignored when building from the IDE (.NET).
  • Delayed DLL loading linker option now fully supported (.NET).
  • Unicode application settings folder paths now supported (.NET).
  • Fixed bug that caused custom build steps that require user input to run forever.
  • Added support for Project reference (.NET).
  • Added optimization to dependency evaluation in projects using Precompiled headers.
User Interface
  • Fixed crash sometimes caused by IncrediBuild add-in when building with MSVC from command line (.NET).
  • When a new Agent is subscribed with the "Auto-subscribe" feature, available extension packages will now be automatically assigned to that Agent.
  • Fixed bug that triggered an error message when one of the projects wasn't loaded in the IDE (.NET).
  • Fixed bug that caused IDE to crash when shutting down machine (.NET).
  • Changed MSVC add-in settings dialog look.
  • Added build time statistics support for MSVC.NET.
  • Fixed bug that caused incomplete text to appear in Build Monitor Progress page tooltips.
  • Added 'Format swapfile' option to Agent Settings dialog.
  • Added 'Format swapfile' option to Coordinator.
  • Added 'Format swapfile' option to BuildConsole.
  • Added new Coordinator option that prevents machine running the Coordinator application from entering standby mode while the Coordinator service is running.
  • More file types are now compressed, resulting in improved performance.
Other
  • Added further optimization to Agent Assignment logic.
  • Fixed bug that caused 'Internal compiler errors' when building with Windows 2K SP4.
  • Fixed access violation that occurred when a file was modified while being cached.
  • Fixed bug that triggered an error when 'vccomponents.dat' file wasn't found.
  • Fixed bug that caused builds to fail when one of the building Agents is shut down.
  • Added support for machines with both MSVC.NET 2002 and 2003 installed.
  • Added 'Keep-alive' mechanism that prevents broken network connections from making builds run infinitely.

Changes in Version 1.21
Build System
  • Added support for MSVC.NET 2003 (Beta-level feature).
  • Solution configurations are now supported in MSVC.NET builds.
  • Fixed bug that prevented directories specified in the Tools->Directories dialog from being taken into account in MSVC.NET builds.
  • Response files are now supported in MSVC.NET builds.
  • Fixed bug that caused command line errors in MSVC.NET builds because of a quoted folder path ending with a single backslash character.
  • Renamed projects are now supported in MSVC.NET builds.
  • Pre-Build events will cause compilation of source files in the same project to wait for its completion, unless the "IncrediBuild_AllowOverlap" directive was used.
  • Slash characters are now converted to backslash characters in intermediate and output folder paths.
  • Intermediate and Output folder paths can now be specified using all environment variables.
  • Fixed bug with header files referenced in .RC files sometimes not being taken into account in dependency evaluation.
  • Fixed bug with .IDL files sometimes always getting rebuilt in incremental MSVC.NET builds.
  • Stopping builds while a pre-compiled header file is being built now does not wait for the file to complete compilation.
User Interface
  • Skipped configurations are now shown in the Build Monitor Projects view along with text explaining why they were skipped.
  • Fixed bug with Build Monitor sometimes showing an incomplete progress bar at the end of a build.
  • Fixed bug that caused an invalid warning/error count to sometimes appear in build output.
  • The number of Agents employed in a build is now displayed in the Coordinator "Work Power" column.
Other
  • Fixed bug with IncrediBuild setup trying to stop non-existent Coordinator or Agent Windows service on clean setup.
  • Improved robustness when transferring large output files over the network.
  • Added new licensing UI.
  • Fixed rare condition that required MSVC installation on a remote Agent machine.
  • Fixed bug that, in rare cases, caused builds to hang indefinitely.
  • Machines will now not automatically enter standby mode when compiling for another machine or while running the Coordinator service.
  • Fixed thread-creation-related bug that could cause an access violation on very fast machines.

Changes in Version 1.2 Beta
Build System
  • Added support for Microsoft Visual C++ .NET projects.
  • Better compression logic may improve performance in some environments.
  • Added 'fast interprocess communication' option that may speed up communications between local IncrediBuild components.
  • Added 'Optimize Build Order' option that attempts to run link steps as early as possible in the build.
  • Improved handling of large output files transferred over the network.
  • Fixed bug that caused Agents to "Blink" when used as remote compilation resources.
  • Added warning for a project #imports the module it generates
  • Added warning for a project that #imports a binary instead of a TLB file.
  • Added warning for a project that #imports a module generated by a project that isn't defined as its sub-project.
  • Added warning for #import statements that cause an implicit recursive dependency.
  • #import statements are now taken into account in inter-project dependency calculation.
  • Fixed bug when handling Unix-style paths.
  • Fixed bug with too many chars in generated linker response file lines (added NL chars between segments).
  • Fixed MSVC6.0 bug that prevented post-build steps from running in certain cases.
  • Fixed MSVC6.0 bug that removed /Op and /Op- cl.exe flags when the /O2 or /O1 flags were used.
  • Fixed MSVC6.0 bug that caused .tlb file always to be built.
  • preprocessor statements including spaces after the '#' character are now taken into account when evaluating dependencies.
User Interface
  • Added Microsoft Visual Studio .NET IDE Integration.
  • Added UI option to restart Agent Service when required.
  • Added new 'About' dialog look.
  • Added new Build Log system
Other
  • Added new section in user manual for further improving build speed with IncrediBuild.

Changes in Version 1.14
Build System
  • Fixed bug that caused an invalid MIDL command line to be generated when some flags appeared in DSP as having empty values.
  • New PDB allocation sub-system
  • Fixed bug with RC command line include path.
  • Fixed bug with unnecessary '\' at the end of /i RC command line switch that caused an invalid command line syntax error.
  • /dll linker switch now fully supported when used in conjunction with a "Win32 Application" project.
  • More efficient space reclaiming logic in Agent swapfiles.
  • Fixed bug that caused an "Error synchronizing registry values" error.
  • Fixed bug related to dsp "SUBTRACT" directives parsed in a case-insensitive way.
  • Fixed bug with MIDL output files sometimes not being transferred when using 'Minimal Directory Synchronization' mode.
  • inter-process communication mechanism changed.
  • Coordinator now will not assign Agents to a Build initiated by an Agent with an incompatible version.
  • Fixed handle leak of 'AliveEvent' in Build Monitor and add-in.
  • Fixed allocation bug in Agent caching mechanism.
  • BuildConsole /log will now force creation of the logfile directory.
  • New console switch: /compile=, will compile only specified source files.
  • Added new Build system warning for source files not built during a selective build (files that aren't in the active configuration).
  • New setting to control whether output files are flushed to disk immediately after being compiled.
User Interface
  • New add-in option to compile currently edited file in MSVC(similar to CTRL-F7)
  • New add-in option to compile all open files in MSVC.
  • New Build progress bar column added to Coordinator application.
  • New Agent status icons in Coordinator application.
  • New Agent status icons in Agent tray icon display.
  • Build monitor view settings (zoom, etc.) are now persisted.
  • Tray icon display now shows build progress percentage when Agent is building.
  • Fixed Font alignment problem that would happen in some displays.
  • Added keyboard shortcuts to Coordinator commands.
  • Modified arrangement of pages in Agent settings dialog.
Other
  • Version on remote Agents can now be updated without user intervention.
  • Version updates can be sent to remote Agents directly from the Coordinator application.
  • Version updates can be pulled from the Coordinator using a new "Update version..." tray icon menu option (available only starting from the next update).
  • Setup application will now correctly modify relevant Start menu shortcuts when running a version update.
  • New Logging level option added to Agent settings.

Changes in Version 1.133
  • Problem with IncrediBuild sometimes unnecessarily rebuilding certain files fixed.
  • Local Agent consumes less CPU while building.
  • Build Monitor consumes less CPU.
  • Total Processing Power is now displayed correctly in Build Monitor Summary page.
  • Various performance-related optimizations.
  • Problem with local Agent sometimes appearing twice in Build Monitor progress page (rare) fixed.
  • /out MIDL command line option now fully supported.

Changes in Version 1.131
  • Changed "Unsupported Compiler" error to a warning.
  • Fixed bug with dependency evaluation for incorrect include file paths.
  • new /nolink BuildConsole switch, now allows for all build steps except linking to be carried out.
  • Coordinator now has 3 columns for CPU info (CPU Speed, Avail Power, Avail CPU).
  • Builder now handles well projects with custom step files that depend on themselves.
  • Fixed Header in Build Statistics dialog.

Changes in Version 1.13
Build System
  • Various internal changes and optimizations improve stability and performance.
  • Substantially improved caching (swapfile) mechanism is now faster and more robust.
  • Intel Compiler is now supported (beta-level feature).
  • New (optional) secure mode prevents remote source files from being stored persistently on Agent machines.
  • TargetName, TargetPath, TargetDir, ProjDir, IntDir and MSDevDir environment variables are now fully supported.
  • Minimal directory synchronization mode added, which significantly improves build times when source files reside on slow file systems (source-control databases, slow file-servers, etc.).
  • New IncrediBuild directives - IncrediBuild_OutputFile/OutputDir/OutputDirTree/OutputReset, which let you specify build steps' output files (for use in conjunction with minimal directory synchronization mode).
  • DSP parsing code simplified and optimized.
  • Improved multiple-project assignment logic.
  • Fixed bug with non-existent output directories that weren't always created.
  • DSP parsing now correctly handles quotes in property values.
  • "rem IncrediBuild_*" commands now recognized even when there are multiple spaces after the "rem" directive.
  • IncrediBuild_AllowOverlap can now appear on any line of custom step (used to be first line only).
  • Fixed Build System shutdown bug occurring when BuildSystem.mon was read-only.
User Interface
  • Build Monitor Projects view now displays a per-project progress bar, colored according to current highest compiler message severity.
  • Build time statistics dialog added to coordinator monitor, to display the amount of time spent building on each machine.
  • Build Monitor progress bars for each file now end after output is actually received.
  • Build Monitor progress bar tooltips now contain the operation's start/finish time.
  • Build Monitor Projects view now persists split-bar position and table column widths.
  • Build Monitor handles very small bars better.
  • Fixed Build Monitor bug that resulted in a sometimes-messy display.
  • Sending messages and terminating an agent from the Coordinator application while using different IncrediBuild versions is now supported.
  • Build Monitor integrated (docking) window now closes when debugging begins.
  • Build Monitor default error-only navigation shortcut keys changed to F8 and Ctrl+F8 (note - for clean installation only; will not affect version updates).
  • Added new option: Don't open Build Monitor window when starting a build from the add-in.
  • Added new option: Open floating Build Monitor window when starting a build from the add-in.
  • Fixed bug with error-only navigation in the add-in (will now open files in editor).
  • Clicking on the Build Monitor progress bar will navigate to next warning/error, if any.
Other
  • Fixed update bug when updating a computer with only a Coordinator installed.
  • Fixed bug with Build Monitor not restarting after setup/update.
  • Improved error messages when DSP parsing errors are encountered.
  • IncrediBuild services are now installed with "Interact with desktop" option disabled (note - for clean installation only; will not affect version updates).
  • Default max no. of agents is now 12 (note - for clean installation only; will not affect version updates).

Changes in Version 1.12
Build System
  • Agents with very low memory/disk space will not be assigned to builds (configurable).
  • Added support for include directories defined in response files.
  • Added option to run build/rebuild/clean operation only on specified project configurations, ignoring sub-projects.
  • The //{{NO_DEPENDENCIES}} keyword is now taken into consideration when evaluating dependencies
  • Circular dependencies between projects in workspace are now detected.
  • /incremental linker switch is now always used correctly.
  • Updating dependencies stage is more error-tolerant.
  • Fixed bug that sometimes made the linker tool run instead of the lib tool.
  • Allow referencing files from intermediate folders (in #include and #import statements, for instance).
  • Added option to always generate .SBR files according to information in DSP file.
  • Added option to disable/enable compression of certain file types for network transfer.
User Interface
  • Added Ability to send pop-up messages to Agent machines from the Coordinator application.
  • Added navigation between errors only (skipping warning messages) in build Monitor, using F2/Shift F2 keys.
  • Build Monitor will open up faster.
  • Added "Enable screen-saver detection" option to Agent settings dialog, that will disable Agent screen-saver behavior altogether.
  • When the Agent service fails to start, clicking the tray-icon display will show the last error.
  • Added configuration of minimal level of disk space/free memory required for an Agent to participate in a build (in Coordinator Settings dialog).
  • Added IP address & port column to coordinator application.
  • Added Free/Total available disk space column to Agents list in Coordinator application
  • When jumping to an error in a source file, the error line will be centered in the editor
  • Fixed problem with filename/line numbers with whitespaces in compiler output.
  • Fixed problem with error navigation and especially long output lines.
  • Fixed bug in Build Monitor display that may cause certain steps to appear incorrectly.
  • Fixed Build Monitor window caption bug.
  • Added new tray-icon graphic for "service not running"
  • Added new tray-icon graphic for tray-icon initialization.
  • Added "Display unavailable Agents" checkbox option to Coordinator view menu.
  • Added "Display unsubscribed Agents" checkbox option to Coordinator view menu.
  • Improved Build Monitor error handling.
  • Added new add-in commands: "Build Active Project Only", "Rebuild Active Project Only" and "Clean Active Project Only".
  • Added Agent Settings option to override Build Monitor keyboard shortcuts.
Other
  • Dramatically more efficient memory usage, will now:<
    • Speed up builds.
    • Make Agent machines more responsive when performing local and remote builds.
  • Fixed memory leak in Build Monitor.
  • Fixed memory leak in tray-icon display.
  • Fixed crash related to detection of performance data on Agent machines.
  • Service will show a message box when failing to start
  • IP addresses rather than computer names are now used to connect between network components

Changes for Version 1.11
Build System
  • Added support for response files containing command line flags.
  • Preprocessor statements in IDL files are now taken into account when determining which files will be rebuilt.
  • Bug concerning spaces at end of custom step commands was fixed.
  • Linking problem concerning different USE_DEBUG_LIBRARY values in DSP files was fixed.
  • Environment variables used in DSP files without being defined now result in a warning.
  • Building projects that share intermediate directories will now produce a fatal build system error.
  • TLH files can now be included from source files (unless residing in the project's intermediate folder).
  • Problem with certain values of /base and /entry linker switches fixed.
  • Build won't fail when project contains configurations of unknown target types (like "Xbox Application").
  • Problem with default listing file location fixed.
  • Fixed problem that produces message: '/Gm' requires '/Zi or /ZI'; option ignored'.
  • Multiple target types in a DSP file now supported.
  • Fixed bug: Building a DSP file from console, with /cfg=<config that doesn't exist>.
  • $(WkspDir) now returns the correct value.
  • Warning given for file-level intermediate directory overrides is now given only for non-custom source files.
  • Problem sending the correct /incremental linker flag fixed.
  • Problem with the output file of LIB sub-projects being included as a source file fixed.
  • Crash when building a makefile project with an empty command-line fixed.
  • Search path for MSVC tools now fully compatible with MSVC.
  • Fixed build system error when building PCH outside the project's intermediate folder.
  • No warning is given when projects that don't run cl.exe (Makefile and Utility projects) share intermediate folders.
User Interface
  • Fixed error message that occurred when workspace referenced a project that doesn't exist in the workspace, or a project that's currently unloaded.
  • Fixed problem with F4 key navigation to non-compiler errors in Build Monitor.
  • Added option to manually specify TCP/IP ports used by Agent.
  • "Updating dependencies..." is now written to output immediately as build begins.
  • Number of subscribed Agents now appears in the Coordinator application status bar.
  • Agents' memory statistics can now be displayed in the Coordinator application.
  • Coordinator application now persists window size and column status.
  • Fixed problem with verifying toolbar existence.
  • Added port setting to coordinator settings dialog.
  • Added Support for localized German version of MSVC.
  • Agent Settings dialog now allows suppressing certain system warnings.
  • Agent Settings dialog now remembers the last page viewed.
  • Added new arrangement of pages in agent settings.
  • Added to Agent Settings dialog: "Attempt to create toolbar"/"keyboard shortcuts" for add-in.
  • Testing a connection to a non-existent coordinator now fails.
  • Coordinator Settings dialog now persists the last opened page.
  • Warnings count in the Build Monitor's Projects and Output page will no longer include Build System warnings.
  • Batch Build settings per workspace are now not erased whenever a project is added or deleted from a workspace.
  • Exception handling in MSVC add-in made more robust.
  • Added new informational flags for BuildConsole: /ShowTime, /ShowAgent, /ShowCmd
  • All functions on the Agent Settings dialog IDE integration page will be disabled on machines with no MSVC installation.
Other
  • Reduced network strain in Agent connection to Coordinator.
  • Project files are now loaded faster.
  • LIB and EXP files are now cleaned properly.
  • Agent and Coordinator port setting separated.
  • Setup application file size reduced using Xoreax compression technology.
  • Setup application will not install unless run from an Administrator user account.
  • Problem obtaining performance data in some systems that caused Agents to remain in the "Initializing" phase fixed.