What's new in FinalBuilder 7?
FinalBuilder 7 sports a new IDE. The FinalBuilder 7 IDE is capable of opening multiple projects (whereas FB6 only allows 1 at a time). The new IDE includes docking, something that has been requested many times over the years, so you can lay out the IDE to suite your taste.
There are many little enhancements and tweaks in the IDE. The most requested feature that has been implemented is the renaming of variables. In FB6, when you rename a variable it does not rename references to it in the project. FB7 will attempt to find and rename all references
FinalBuilder is now compiled with a unicode aware compiler. The native internal string type is UTF16, and VSoft Technologies have worked hard to ensure that all actions that work with files respect the original files encoding.
In FinalBuilder 6 and earlier, all FinalBuilder variables are implemented as Variants. Those of you who have done some COM programming, or used Visual Basic 6 or earlier, or Delphi might be familiar with Variants. A Variant is a type that can store values of various types. Variants are very useful in many cases, but are not without their problems. For example, if you want to store a string "03" in a variant, you will have to put the double quotes around the 03, otherwise it is not known if it's not a number. To circumvent this problem, in FinalBuilder 7 you can specify the variable type.
When you specify a variable type, that is how the variable will be treated, so for example if you attempt to assign a string value to an integer variable it will fail. Typed variables also allow you to specify a format string, which will be used when the variable is evaluated in an expression. For example, if you have a build number variable, that you always want to use as 4 digits, with zeros padding out the left, setting the format string to %.4d will do this.
In addition to the existing variable scopes (environment, application,user, project) and action list parameters, FinalBuilder 7 includes a local variable scope. The Action Group Action has a new property page that allows you to define the local variables.These variables are only visible to child actions of the group. Since groups can be nested, this provides the ability to override variables locally, and define variables for temporary use.Local variables cannot be persisted and cannot be used as environment variables.
As with every new release there are a number of additional actions:
- NDepend Action
- Git Actions
- Plastic SCM Actions
- Check If Host Exists Action
- SetupBuilder Actions
- SecureZIP Actions
- Signtool Actions
- Hyper V Actions
- Mercurial Actions
- SSH Actions
- XML Node Exists Action
And many of the existing actions have had enhancements to them, support for filesets added to more actions.
What's New in FinalBuilder V6?
FinalBuilder V6 Core Improvements
- Action Logging: Action log output is now tagged and color-coded according to Errors, Warnings, Success and Information. It is possible to filter the log display in the IDE according to these output tags (for example, to show only Error & Warning output.)
- Hierarchical Logging: Actions now produce hierarchical log output, so related messages are grouped together in the log tree
- Performance: FinalBuilder is now faster to start up, and runtime performance has dramatically improved. Live logging performance has also increased markedly over previous versions
- Improved Output Quality: All frequently used actions have been visited and revamped, with a view to improving the quality and usefulness of log output
- Automatic Descriptions: Automatic descriptions for all commonly used actions have been revisited and improved. This make it easy to create a self-documenting build process
- Action Output Monitors: The new Action Output Monitor feature allows you to watch for particular patterns of log output from an action. The action's behaviour can be modified depending on the output, or specific messages can be captured or suppressed from the action log
- MSBuild Task: The FinalBuilder MSBuild task now outputs fully formatted MSBuild output, for use with MSBuild Loggers.
- Extra Team Foundation Support: Team Foundation support has been improved markedly for this release of FinalBuilder. FinalBuilder projects running inside Team Build now automatically export any MSTest results to the Team Foundation Data Warehouse. Statistics from other testing frameworks (NUnit, MbUnit, etc.) are also submitted to the Data Warehouse, and can be included in Team Foundation Reports such as the Build Quality report
- Visual Studio Team Explorer Integration: FinalBuilder now comes with an addin for Visual Studio 2008 Team Explorer. New Team Build definitions can be added which automatically use FinalBuilder as the build engine. There is also a new graphical Build Definition editor, integrated with Team Explorer. It is no longer necessary to edit the XML build definition file in order to add, edit and remove FinalBuilder projects
- Error Dialog Monitor: This new feature allows you to monitor a third party application for error dialogs popped up while running an action. Dialogs can be automatically dismissed, as appropriate. This is useful when working with poorly-written third party tools that display dialogs when running in an automated mode
- New user info file: The various user-specific .fbd,.fbw,.fbp files used in previous versions have been converted into one common .fbpinf file, with all user-specific data for the project. This file also contains information on the current layout of the project tree, which makes the project file more version-control friendly
Why use FinalBuilder - an automated build and release management solution for software developers and buildmasters?
Traditionally, developers have used DOS batch files or general purpose scripting tools to automate builds. Batch files and scripts are typically difficult to maintain, difficult for people to understand and suffer from a lack of proper error handling. It can often take a long time to evolve a batch file or script to the point where it is reliable enough for use, whereas automating the build process with an automated build tool such as FinalBuilder is quick and easy. Anyone can create, maintain, debug, and edit a build process with FinalBuilder.
FinalBuilder will help you to :
- Save time and money - automated builds are typically much quicker than manual builds, sometimes cutting something that took a day down to minutes
- Allow anyone in the team to run a build - FinalBuilder is so easy to use, so you won't need a "build guru" team member to run all your builds
- Improve the quality of your releases - FinalBuilder cuts the human error factor substantially, automating boring and repetitive tasks
- Have a record of what was built when - FinalBuilder logs the output from all the tools it calls, and the logs from previous builds are archived
Standard v Professional
For information about the differences between the Standard and Professional Editions please see the Feature Matrix in the Evals & Downloads section.
- Easy-to-use graphical interface - FinalBuilder's user interface has been carefully crafted to make it as easy-to-use as possible. Anyone in your team can use FinalBuilder to automate tasks.
- 600+ built in Action Types - FinalBuilder includes a broad range of action types that cover almost any task you might need to automate. Here are just a few:
- Compile applications from source code
- Compile setup/installer programs
- Work with Version Control Systems, to get, check out, check in & label files
- Handle versioning with ease
- Create & edit INI files & Windows registry keys
- Burn CD's & DVD's, or create CD/DVD images (ISO images)
- Zip & unzip files and other archive formats
- Run automated testing
- FTP files to/from servers
- Handle errors, run multiple tasks in parallel, and dynamically change the build flow
- Iterate over sets of files and other lists
- Compile help files
- Creating custom plugins. See ActionStudio below for more information
- Scheduled Builds- FinalBuilder provides tight integration with the windows scheduling service, which allows builds to be scheduled to run daily, weekly or whatever you wish.
- Advanced Flow control actions - FinalBuilder includes Try/Catch/Finally actions which allow localised structured error handling, and flow control actions such as If Then, Else, Switch/Case, While Loop.
- Integration with Version Control Systems/Source Code Repositories - Almost all automated build processes require some type of interaction with a Version Control System or Source Code Repository. FinalBuilder directly supports the following:
- AccuRev [AccuRev Website]
- Borland StarTeam [Borland StarTeam]
- CVS [Concurrent Version System]
- IBM/Rational ClearCase [ClearCase]
- JediVCS [JEDI Version Control System]
- QVCS [Quma Software]
- MKS Source Integrity [MKS Website]
- Perforce [Perforce Software]
- PureCM [PureCM Website]
- PVCS [Serena Website]
- SubVersion [Tigris.org]
- Surround SCM [Seapine website]
- Sourcegear Vault [Sourcegear]
- Team Coherence [QSC]
- Team Foundation Source Control [VisualStudio Team System]
- Visual SourceSafe (VSS 6 and VSS 2005) [Microsoft VSS 6, Microsoft VSS 2005]
- If your version control system is not directly supported - please contact ComponentSource.
- Built in Active Scripting Support - Each FinalBuilder action exposes a number of script events, where you have access to all the properties of the action using VBScript or JScript. In addition, the Run Script action allows you to perform specific tasks which might not be covered by the built in action types.
- Detailed Logging -Output from all actions in the build process is directed to the build log. The log maintains the same tree structure as the action lists, which makes it easy to find your way in the log file. Logs can be exported in HTML, XML or text formats.
- Variables -Using variables is the key to making your build process dynamic. Use variables to pass information from one action to another, and also to enable actions to use user specific or machine specific values.
FinalBuilder Plugin Architecture - ActionStudio
FinalBuilder ActionStudio is an IDE for defining and developing plugins for FinalBuilder. ActionStudio is included in both Professional and Standard editions of FinalBuilder and provides an easy way for users to develop custom actions to increase the functionality of their FinalBuilder projects.
ActionStudio creates an action package, which contains one or more custom FinalBuilder Actions. The action package file defines the action properties, events, options, and property pages in an XML file format. Actions written in Active Script are completely contained within the action package, whereas COM and .Net based actions refer to external dlls and assemblies for the implementation of the action.
Plugins can be developed in any of the following languages:
- Active Script (VBScript, JScript)
- .Net languages
What are FinalBuilder Plugins?
FinalBuilder uses plugins for the implementation and definition of its actions. They can be either compiled source code or custom plugins. The compiled plugins, which are shipped with FinalBuilder, can be viewed from the Tools->Package Manager dialog, whereas custom plugins are loaded automatically from the ActionDefs directory.
Unlike compiled packages, custom plugins are defined by an XML file. ActionStudio can load and save these action package XML files, or you can edit them manually (if you really want to!). These plugin definition files (with file extension .FBAP) are stored in the directory FinalBuilder\ActionDefs. FinalBuilder automatically loads any .FBAP files in the ActionDefs folder when it starts up. Depending on the type of plugin you are creating, you may require extra files alongside the action package file; for example, for a .Net based plugin the assembly must be stored in the Assemblies directory inside the ActionDefs directory so that FinalBuilder can find the referenced assembly.
FinalBuilder Professional edition includes a license for ActionStudio Professional. ActionStudio Professional has the extra capability to import and export protected action packages. A protected action package is encrypted with a password so that others cannot view the action package source. Both FinalBuilder Standard and FinalBuilder Professional automatically load up protected action packages and allow use of the included actions.
Software Assurance provides the purchaser with access to all Upgrades & Updates at no further cost for a period of 1 year. Usually upgrades are sold at a cost of around 35 - 60% of a full purchase, whilst Software Assurance is priced at 20% of a full purchase. This provides you with a discount on the next version of FinalBuilder should it be released within your software assurance period.
Software Assurance can only be purchased at the time you purchase or upgrade FinalBuilder. You will be able to renew your software assurance when your current software assurance expires.
Without Software Assurance you may : Download and use every minor update made available for the purchased version, for example if you purchased version 4.x, you can upgrade free of charge to 188.8.131.528, 184.108.40.2060, 220.127.116.110, 18.104.22.1680 etc
To upgrade to the next major release (eg. 5.0) will require the payment of an upgrade fee.
With Software Assurance you may : Download & use every minor update and any new Major Version made available within your Software Assurance Period, for example if you purchased 4.x, you can upgrade free of charge to 22.214.171.1248, 126.96.36.1990, 188.8.131.520, 184.108.40.2060, 220.127.116.11, 18.104.22.1680 etc.
In the above example, if version 5 is released within your Software Assurance Period then you would receive that upgrade at no extra cost.