|
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.
|