Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Version 1.31.0

Version 1.31.0

January 26th, 2004 12:00 GMT

Documentation

Downloads
PlatformFile
unixboost_1_31_0.tar.bz2
boost_1_31_0.tar.gz
windowsboost_1_31_0.zip

New License

A unified Boost Software License has been developed and will gradually replace the individual licenses for most Boost libraries. The new license offers better legal protection for both users and developers, and should speed user's legal reviews of Boost libraries. Dave Abrahams led the Boost effort to develop better licensing. The legal team was led by Diane Cabell, Director, Clinical Programs, Berkman Center for Internet & Society, Harvard Law School. Devin Smith, attorney, Nixon Peabody LLP, wrote the Boost License. Eva Chan, Harvard Law School, contributed analysis of issues and drafts of various legal documents.

Note: Many of the Boost libraries are still using earlier licenses, though all conform to the Boost License Requirements. After this release we will begin an effort to move toward uniform use of the new license.

Build and Installation

  • New Getting Started procedures ease download and installation, from Rene Rivera and others.
  • Improved support for libraries requiring separate compilation, from John Maddock and others.

New Libraries

  • enable_if: Selective inclusion of function template overloads, from Jaakko Jarvi, Jeremiah Willcock, and Andrew Lumsdaine. This is an important new technique which exploits the SFINAE (substitution-failure-is-not-an-error) principle.
  • Variant Library: Safe, generic, stack-based discriminated union container, from Eric Friedman and Itay Maman.

Updated Libraries

  • Compose: This library has been deprecated and will be removed in a future release. Use Bind or Lambda instead.
  • Date Time Library: A whole host of bug fixes, new features, and documentation improvements. See the Date Time Change History for details.
  • Filesystem Library: Several added functions, including improved checking for directory and file name portability.
  • Iterator Library: Major version upgrade, with interface as proposed for the C++ library TR, including an improved iterator_adaptor design plus several new components, from David Abrahams, Jeremy Siek, and Thomas Witt.
  • MultiArray: The multi_array class template now provides an element-preserving resize operation as well as default construction (see the reference manual for more information).
  • Python Library:
    • Support for Python 2.3 and Intel C++ on Linux
    • Container Indexing Suite added.
    • injected constructors and wrapped function objects.
    • wrapping static data members.
    • std::wstring conversions.
    • Improved keyword arguments.
    • Better error messages, including name demangling for GCC.
    • Simpler build procedure.
    • ...and more....
  • Random Number Library: Interface changed to match the C++ TR proposal, from Jens Maurer.
  • Regex: Completely new matching algorithm is now much faster than before, plus a selection of new features and enhancements.
  • Boost.Spirit 1.8.0:
    • Multiple grammar start rules
    • Multiple Scanner rules (no more scanner business woes)
    • More dynamic parsers
    • Predefined actors
    • Numerous bug fixes and QOI stuff
    • and more...

    Starting from Spirit v1.8.0, ill conforming compilers will no longer be supported. If you are still using one of these older compilers, please use Spirit v1.6.x. See [@http://spirit.sf.net Spirit's Site] for more details.

  • Test Library:
    • Free function template based test case
    • Custom exception translators support in execution monitor and register_exception_translator added for unit test framework
    • Added support for multi-module unit tests in automatic registration facility
    • Floating point comparison algorithm reworked (Is not backward compatible!!!)
    • Added support for custom users predicate returning both boolean result code and possibly error message
    • Documentation structure rework and update

    For a complete list of changes see the Test Library release notes.

Miscellaneous

  • Expanded testing and fixes for non-conforming compilers.
  • Web site hosting now provided by SourceForge.