vestawall60t.gif

Project Summary

Vesta is a precise approach to automated processing of inputs that change over time. The most obvious application is compiling source code during software development, but it can be applied to any non-interactive processing problem. Known uses include hardware design and web design.

The distinguishing features of Vesta's build system are:

These enable a variety of other unique capabilities:

To put it another way, Vesta is an advanced configuration management system that includes both version control and build automation components. The version control component of Vesta shares many features with other modern systems (atomic commits and distributed operation) and also has some unique capabilities (constant-time checkout operations and a virtual filesystem that provides immediate access to all existing versions).

Motivation

For substantial software systems (say, 500k source lines or larger), effective software configuration management (SCM) is a serious problem. The world is full of easy-to-use, small-scale configuration management tools and large-scale, hard-to-use ones. Unfortunately, many people either suffer under the failings of small-scale configuration management tools as their projects grow or spend significant effort re-inventing solutions to the same problems.

Vesta is a portable configuration management system that was originally targeted at supporting development of software systems of almost any size, from fairly small (under 10,000 source lines) to very large (10,000,000 source lines).

History

Vesta is a mature system. It is the result of over 10 years of research and development at the Compaq/Digital Systems Research Center, and it was in production use by Compaq's Alpha microprocessor group for over two and a half years. The Alpha group had over 150 active developers at two sites thousands of miles apart, on the east and west coasts of the United States. The group used Vesta to manage builds with as much as 130 MB of source data, each producing 1.5 GB of derived data. The builds done at the eastern site in an average day produced about 10-15 GB of derived data, all managed by Vesta. Although Vesta was designed with software development in mind, the Alpha group demonstrated the system's flexibility by using it for hardware development, checking their hardware description language files into Vesta's source code control facility and building simulators and other derived objects with Vesta's builder.

In the latter half of 2001, Vesta was released by Compaq under the GNU LGPL. Since then it has been in production use at Intel for microprocessor design on several different projects. Intel continues to directly support its on-going development.

Site Hilights