|
The Boost web site provides free
peer-reviewed portable C++ source libraries. The
emphasis is on libraries which work well with
the C++ Standard Library. One goal is to
establish "existing practice" and provide
reference implementations so that the Boost
libraries are suitable for eventual
standardization. Several Boost libraries will be
included in the
C++ Standards Committee's upcoming
C++ Standard Library Technical
Report.
Although Boost was begun by members of the C++ Standards Committee Library
Working Group, membership has expanded to include nearly two thousand
programmers from the C++ community at large.
If you are interested in becoming a member of Boost, please do so by joining our
main developers mailing list. Discussions include both technical and
site-related issues, and members are encouraged to participate in formal
reviews of proposed libraries. There is also a users mailing list.
Both the main Boost developers list and the users list are also accessible as
newsgroups.
Search Boost
????? 2003 - Version 1.31.0
- A unified
Boost Software License has been developed
and will 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.
- Variant
Library added - Safe, generic, stack-based discriminated union container,
from Eric Friedman and Itay Maman.
-
Filesystem Library: Several added
functions, including improved checking for
directory and file name portability.
- Random Number Library: interface changed to C++ library TR proposal, from Jens Maurer.
August 19, 2003 - Version 1.30.2 (bugfix release)
- Boost Consulting is now
hosting Boost CVS mirrors - see our download
page.
- Backported changes to the config system,
to better handle new compiler releases.
- Bugs in regression reporting in subproject tests were fixed.
- Tests are now run in the context of the user's PATH environment settings
- msvc-stlport and intel-win32-stlport toolsets now
build static libraries with multithreading enabled, to be compatible with the
STLPort builds.
- intel-win32 toolset now
handles
wchar_t correctly when intel is installed over msvc6.
- Backported fixes from the main trunk which prevent errors building the Boost.Test library in its default
configuration.
- Backported portability improvements for checked_delete.
- Locale support for metrowerks (requiring a statically-linked runtime) is
more uniformly handled.
- Backported conversion/lexical_cast's
wchar_t fixes from the main trunk.
- intel-linux-tools: added
rt to FINDLIBS in order to make the clock_gettime()
function available (backport of a patch in CVS HEAD).
- regression/compiler_status.cpp:
backported fixes in error log links generation.
August 12, 2003 - ALERT
Significant problems were found in
the 1.30.1 release, so it has been
withdrawn from the website. These
problems mostly take the form of
missing files due to an error by the
release manager in using CVS to tag
the release. We expect to release
Version 1.30.2 in a few days. Stay
tuned.
Until then, you may want to get
the RC_1_30_0 branch
(which, with only very slight
modification, will become version
1.30.2) from our CVS
repository or the CVS
mirror at Boost
Consulting.
August 4, 2003 - Version 1.30.1 (bugfix release)
Fixes were made to the following libraries:
- The Boost.Lambda library is now
usable with gcc-2.95.2
- Boost.Spirit:
- Fixed. Using MSVC++6 (SP5), calling the assign action with a string
value on parsers using the file_iterator will not work.
- Fixed: using assign semantic action in a grammar with a multi_pass
iterator adaptor applied to an std::istream_iterator resulted in a failure
to compile under msvc 7.0.
- Fixed: There is a bug in the
range_run<CharT>::set
(range<CharT> const& r) function in
"boost/spirit/utility/impl/chset/range_run.ipp".
- Fixed: handling of trailing whitespace bug (ast_parse/pt_parse related)
- Fixed: comment_p and end of data bug
- Fixed: Most trailing space bug
- Fixed:
chset<>::operator~(range<>) bug,
operator&(chset<>, range<>) bug,
operator&(range<>, chset<>) bug
- Fixed:
impl::detach_clear bug
- Fixed: mismatch closure return type bug
- Fixed:
access_node_d[] and access_match_d[]
iterator bugs
- Fixed a bug regarding threadsafety of Phoenix/Spirit closures.
- The Boost Template Metaprogramming
Library (MPL)'s typeof implementation is now compatible with Metrowerks
CodeWarrior Pro8.
- Boost.Function: workaround for the
new Borland patch (version 0x564) and MSVC++ .NET 2003.
- Boost.Config, Boost.Format, and Boost.Regex have been adjusted to avoid
warnings with GCC-3.3, and Boost.Format also now works with string types other
than
std::string .
- Smart Pointers
checked_delete now works on more platforms
- Compatibility with the SunPro compiler
- Added missing
#include s.
- Boost.Python
- warning suppression for finicky compilers
- fixed a crashing bug in the
raw_function facility when no
keyword arguments were passed.
- Improved conversion of NULL
shared_ptr s to Python.
March 19, 2003 - Version 1.30.0
-
Filesystem Library
added - Portable paths, iteration over directories, and other useful filesystem
operations, from Beman Dawes.
-
Optional Library
added - A discriminated-union wrapper for optional values, from Fernando
Cacciola.
-
Interval Library
added - Extends the usual arithmetic functions to mathematical intervals, from
Guillaume Melquiond, Hervé Brönnimann and Sylvain Pion.
-
MPL
added - Template metaprogramming framework of compile-time algorithms,
sequences and metafunction classes, from Aleksey Gurtovoy.
-
Spirit Library
added - An LL (unlimited lookahead) parser framework that represents parsers
directly as EBNF grammars in inlined C++ source code, complete with semantic
actions, ASTs and much more, from Joel de Guzman and team.
-
Smart Pointers Library - cast functions are now
spelled static_pointer_cast
/ dynamic_pointer_cast
; enable_shared_from_this
added; shared_ptr::shared_ptr(), shared_ptr::reset(), weak_ptr::weak_ptr(),
weak_ptr::reset() no longer throw;
get_deleter added; weak_ptr::get() removed; make_shared is now spelled
weak_ptr::lock() ; intrusive_ptr
documentation added; some experimental undocumented shared_ptr features
have been removed; a page describing
some smart pointer programming techniques
has been added.
-
boost/assert.hpp,
boost/current_function.hpp, boost/throw_exception.hpp,
boost/checked_delete.hpp
have been documented.
- Date-Time Library - several fixes and small additions including an interface change to partial_date. See Date-Time Change History for more details.
- Function Library
- added support for assignment to zero (to clear) and comparison against zero (to check if empty).
-
Operators Library - now takes advantage
of named return value optimization (NRVO)
when available, from Daniel Frey.
-
Regression Tests - Much expanded, plus a
very nice
summary page from Rene Rivera.
- Test Library
- introduced following new facilities:
- Automatic registration of unit tests
- XML log format
- XML report format
- BOOST_CHECK_NO_THROW test tool
- BOOST_BITWISE_CHECK test tool
For complete list of changes see Test Library release notes
-
Many fixes and enhancements to other libraries.
October 10, 2002 - Version 1.29.0
-
Date-Time Library
added - Dates, times, leap seconds, infinity, and more, from Jeff Garland.
-
Dynamic Bitset added - A
runtime sized version of the std::bitset
class from Jeremy Siek and Chuck Allison.
-
Format Library
added - Type-safe 'printf-like' format operations, from Samuel Krempp.
-
Function Library: Major syntactic
changes have been made. Some old syntax and little-used features have been
deprecated (and will be removed shortly), and the syntax for the
boost::function
class template has been greatly improved on conforming compilers. Please see
the compatibility note
for more information.
-
Multi-array Library
added - Multidimensional containers and adaptors for arrays of contiguous data,
from Ron Garcia.
-
Preprocessor Library: Major
upgrade, from Paul Mensonides.
-
Python Library
- Version 2 is released, from Dave Abrahams and others. This is a major rewrite
which works on many more compilers and platforms, with a completely new
interface and lots of new features. Boost.Python v2 requires Python 2.2 or
later.
-
Signals Library
added - Managed signals & slots callback implementation, from Doug Gregor.
-
Test Library: Major new version,
including full unit test capabilities, from Gennadiy Rozental.
-
uBLAS Library added - Basic
linear algebra for dense, packed and sparse matrices, from Joerg Walter and
Mathias Koch.
May 15, 2002 - Version 1.28.0
February 5, 2002 - Version 1.27.0
-
Python Library: Scott Snyder
contributed inplace operator support.
-
Integer Library: Daryle Walker contributed
enhancements to the type selection templates,
and added new compile-time bit mask,
binary logarithm, and
extrema
templates.
-
Function Library: user may request that
boost::function objects store a reference to a function object
target instead of a copy, using ref .
Stateless objects are optimized so that they require no dynamic storage.
-
Quaternions: added support
for GCC 2.95.x.
-
Octonions: added support for
GCC 2.95.x.
-
Smart Pointers Library: Peter Dimov
contributed a new implementation that fixes some bugs and adds some features
including thread safety
when manipulating the use count,
custom delete functions, a new weak_ptr,
and shared_static_cast
and shared_dynamic_cast.
-
Preprocessor Library: changed
macro prefix from BOOST_PREPROCESSOR to BOOST_PP, added support for list data
structure manipulation, added examples, made library ANSI C friendly, added
generalized repetition and
iteration
primitives, improved reference manual.
-
Threads Library:
Mac Carbon implementation contributed by Mac Murrett.
-
Minor fixes to many libraries.
|