|
|
Subscribe / Log in / New account

Development

The Boost C++ Libraries

December 6, 2005

This article was contributed by Matthew Vogt

Whatever type of software you develop, there probably exists an open-source C++ library that can help you avoid re-inventing the wheel. However, C++ offers no analog of Perl's CPAN or Java's extensive environment, so it can be difficult to find code of sufficiently high quality which can be easily integrated with code from other sources. In recent years, the Boost C++ Libraries have become the place where a C++ developer should look first when seeking quality open-source C++ components.

[Boost] Boost is the product of an informal group of C++ programmers developing free open-source libraries that are high-quality, portable and widely useful.

The Boost C++ Libraries provide components that can be employed in just about every development project. Boost libraries are among the most powerful and portable components in the world of C++ development. Whereas the quality of open-source code is often an unknown quantity, the standard of code distributed in the Boost distribution is remarkably high, owing to the extensive peer review process required to accept libraries into the distribution. Each library in the Boost distribution has been reviewed by the Boost developers and accepted through an open voting process, ensuring a consistently high level of quality, and an adherence to principles of the C++ community. Boost libraries are designed to work well with the C++ Standard Library, and other libraries designed around the principles embodied in the Standard Library. Boost libraries are loosely-coupled, and designed so that you can use only what you need, without trying to provide an all-encompassing environment.

Boost libraries are all released under the Boost Software License, an extremely permissive license which is designed to make the libraries equally useful to commercial and non-commercial developers. The Boost Software License is very similar to the MIT License, with the major difference that object code derived from Boost-licensed source code can be redistributed without the reproduction of copyright messages. This is required to permit all developers to use Boost libraries in all of their code, without concern over eventual distribution requirements.

The current version of the Boost Libraries is Version 1.33.1, released on December 5, 2005. It contains 63 libraries to assist C++ developers. Many of these libraries are useful in a broad range of application development, such as the threads library, the regular expression library, the portable filesystem library and the smart-pointer library. Other Boost libraries help to make C++ a more expressive and productive language in which to develop. These libraries include the generalized function and bind facilities, the signals library and support for named (rather than positional) function arguments. Finally, Boost also contains libraries that are designed to help C++ developers improve their own libraries; examples include the concept-checking library, the unit testing library, the library for developing iterators and that for accessing type traits.

Perhaps the best reason to use Boost, however, is because of its contribution to the C++ Standard Library: using the Boost libraries today is a foretaste of the next C++ Standard Library revision. The C++ standards committee favor the standardization of proposals that have proven their worth in real-world use. Boost is an ideal proving ground for such proposals, and this has been demonstrated in the Proposed Draft Technical Report on C++ Library extensions (PDF), known as 'TR1', the first specification of likely additions to the next C++ standard. Ten of the fourteen included proposals were implemented first as Boost libraries, and proven mature and robust in the Boost distribution. Other Boost libraries have been proposed for acceptance into the next Technical Report ('TR2'), open until October 1, 2006.

Boost development is ongoing, you can participate by joining the mailing list for development, or the boost-users mailing list to discuss using the Boost libraries in your development work.

Comments (30 posted)

System Applications

Database Software

LiteSQL 0.3.1 Released (SourceForge)

Version 0.3.1 of LiteSQL is available with bug fixes and other improvements. "LiteSQL is a C++ library that integrates C++ objects tightly to relational database and thus provides an object persistence layer. LiteSQL supports SQLite3, PostgreSQL and MySQL as backends. LiteSQL creates tables, indexes and sequences to database and upgrades schema when needed."

Comments (none posted)

PostgreSQL Weekly News

The December 5, 2005 edition of the PostgreSQL Weekly News is online. Take a look for new PostgreSQL database articles and resources.

Full Story (comments: none)

Interoperability

Samba 3.0.21rc2 Available

Release Candidate 2 of Samba 3.0.21 has been announced. "This is a release candidate of the 3.0.21 code base and is provided for testing purposes only. While this snapshot is *not* intended for production servers, we do believe that this will become the 3.0.21 final release. Your testing and feedback is greatly appreciated."

Full Story (comments: none)

LDAP Software

Announcing Fedora Directory Server 1.0

Red Hat has released version 1.0 of FDS, the Fedora Directory Server. FDS consists of an LDAP server and associated utilities. "This release marks a significant milestone for the open source community, who now have access to the code for the console and administration engine as well as the previously open sourced LDAP engine. This release uses the Apache httpd engine as its administration server, and includes mod_nss - a rewrite of mod_ssl which uses the Mozilla NSS crypto engine."

Full Story (comments: 6)

LAT 0.8 released

Version 0.8 of LAT, the LDAP Administration Tool, is out with a number of new capabilities.

Full Story (comments: none)

Libraries

Python OpenID library 1.0 announced

Version 1.0 of the Python OpenID library has been announced. "This library contains packages to support both OpenID consumers (relying parties) and servers. For back-end storage, it supports a variety of methods, including flat file, SQL, and MemCached. In our own work on making applications OpenID enabled, we've been reminded that every web framework is different. For that reason we've strived to make this library general enough to fit in to any Python web application."

Full Story (comments: none)

Mail Software

Bogofilter 1.0.0 Released

Version 1.0.0 of Bogofilter, a Bayesian email spam filter, is out. "This release is the culmination of 3 years of work that began after Paul Graham's article "A Plan for Spam". Bogofilter has now reached a sufficient level of capability, maturity, and stability that it is worthy of the "1.0.0" label."

Full Story (comments: none)

Fetchmail 6.3.0 released

Fetchmail 6.3.0 is out. This is the first major release of fetchmail since the Community Fetchmail Team took over maintenance of the program from Eric Raymond, the original author. "More than two years after the previous formal 6.2.5 release, this collects several dozen bug fixes, documentation, portability and IPv6 improvements and marks the beginning of a new 'stable' 6.3.X branch that will not change, except for bug fixes and documentation updates."

Full Story (comments: none)

Networking Tools

Nagios 2.0b6 has been released

Version 2.0b6 of Nagios, a host service and network monitoring program, is available. "Nagios 2.0b6 has been released to fix a few bugs present in the beta 5. You can download it here. The changelog can be found here. At the current rate, version 2.0 should see a stable release before the year's end."

Comments (none posted)

Printing

alternate pstops 1.93k released

Version 1.93k of the alternate pstops print filter for CUPS has been released. See the change log file for details.

Comments (none posted)

Security

Nepenthes 0.1.4 released (SourceForge)

Version 0.1.4 of Nepenthes is available with several bug fixes. "Nepenthes is a versatile tool to collect malware. It acts passively by emulating known vulnerabilities and downloading malware trying to exploit these vulnerabilities."

Comments (none posted)

Web Site Development

Apache HTTP Server 2.2.0 Released

Version 2.2.0 of the Apache web server has been announced. "Apache 2.2 offers numerous enhancements, improvements, and performance boosts over the 2.0 codebase. For an overview of new features introduced since 2.0 please see: http://httpd.apache.org/docs/2.2/new_features_2_2.html."

Full Story (comments: none)

Araneida 0.90 released

Version 0.90 of Araneida is out. "The new maintainer Alan Shields has merged to the official branch several changes he had previously maintained separately. Araneida is a small and extensible HTTP server written in Common Lisp. It is designed to sit behind a caching proxy, dynamically generates all content by calling user-defined handlers, provides advanced HTML generation facilities, and more."

Full Story (comments: none)

KnowledgeTree 3.0 Beta 2 released (SourceForge)

Version 3.0 Beta 2 of KnowledgeTree, a web-based cross-platform Document Management System, is available with a number of bug fixes.

Comments (none posted)

Two new Zope releases

Two new versions of the Zope web development platform have been released. Zope 3.2.0 beta 1 features a switch from ZServer to the Twisted server, among other changes, and Zope 2.9.0 beta 1 includes new versions of ZODB, Five, and more.

Comments (1 posted)

Analyzing Web Logs with AWStats (O'Reilly)

Sean Carlos uses AWStats for web log analysis on O'Reilly. "A crucial, if often overlooked, aspect of running a successful web site is the study of activity occurring within the site. The information gleaned provides valuable input to continuous improvement initiatives, ranging from site architecture and content enhancements to traffic generation. This is the first of a two-part series exploring how to use the open source tool AWStats to perform web server log file analysis. This first part shows how to prepare a sample web log file, perform a basic installation of AWStats, generate reports, and review web analytics terminology; the second part will focus on report interpretation."

Comments (none posted)

What's New in ModSecurity (O'Reilly)

Ivan Ristic introduces ModSecurity 1.9 on O'Reilly. "Two years ago, almost to the day, O'Reilly Network published my first article, Introducing ModSecurity. ModSecurity was stable and useful before the article went out, but it was not widely known. The publication of the article marked a new phase in the life of ModSecurity, introducing it to a much wider audience. As I write the second article, I can't help but feel another phase is about to start. I feel we are entering the phase of maturity."

Comments (none posted)

Desktop Applications

Audio Applications

Rivendell v0.9.62 released

Version 0.9.62 of the Rivendell radio automation system is out, it features bug fixes.

Full Story (comments: none)

Speex 1.1.11.1 Released

Version 1.1.11.1 of Speex, an open-source audio CODEC, is out. "This is a brown-paper-bag release fixing a pretty bad bug that affected the fixed-point port in 1.1.11. Architectures that use float were not affected at all. Architectures that use fixed-point had a big drop in audio quality. Only version 1.1.11 is affected. Sorry about the inconvenience."

Comments (1 posted)

CAD

Twenty-seventh release of PythonCAD now available

Release 27 of PythonCAD is out. "The twenty-seventh release contains primarily bug fixes and internal code enhancements. A long-standing interface problem where the display of selected entities was not clear has been fixed. When you select an entity it is redrawn in a highlighting color, making it clear which entities are selected at any one time. Also, the ability to deselect a selected entity has been added to the interface. The bug fixes included in this release address a few problems introduced in the previous release as well as various older issues."

Full Story (comments: none)

Desktop Environments

GNOME 2.12.2 is out

Version 2.12.2 of the GNOME Desktop and developer platform has been announced. "This is the second point release of the stable 2.12 series of GNOME and a lot of hard work has gone into making it more enjoyable for ur users and developers."

Full Story (comments: none)

GARNOME 2.12.2

Release 2.12.2 of GARNOME, the bleeding-edge GNOME platform is out. "Incorporating the GNOME 2.12.2 Desktop and Developer Platform, together with a host of third-party GNOME packages, Bindings and the Mono(tm) Platform -- this release irons out yet-more bugs, hopefully adds yet-more stability and ships with the latest and greatest stable releases."

Full Story (comments: none)

GNOME Software Announcements

The following new GNOME software has been announced this week: You can find more new GNOME software releases at gnomefiles.org.

Comments (none posted)

Bag of Software (GnomeDesktop)

GnomeDesktop covers three application updates in its Bag of Software series: "A new release of the Scribes text editor, introducing Super Slide Me an app for creating slide shows and tutorial for adding animation to a gtk-engine theme."

Comments (none posted)

The GNOME Journal, December Edition (GnomeDesktop)

GnomeDesktop has announced the availability of the latest issue of Gnome Journal. This issue features a story on the Macedonian deployment of over 5,000 GNOME desktops in its public schools.

Comments (1 posted)

KDE Software Announcements

KDE Software Announcements The following new KDE software has been announced this week: You can find more new KDE software releases at kde-apps.org.

Comments (none posted)

X11R6.9/X11R7 Release Candidate 3 ready for testing

Release Candidate 3 of X11R6.9/X11R7 is available for testing. "We are pleased to announce the availability of the third full Release Candidate (RC3) for the upcoming X.Org Foundation release of X11R6.9 and X11R7. RC3 includes many bug fixes and updates. We have tagged both the monolithic and modular trees and have prepared tarballs for you to test."

Full Story (comments: 1)

Electronics

XCircuit 3.5.1 released

Development version 3.5.1 of XCircuit, an electronic schematic drawing package, is out. The project now has stable (distribution) and development branches, a number of new features are included in this release.

Comments (none posted)

Financial Applications

Advanced Stock Tracking System 0.1.5 released

Version 0.1.5 of AST, the Advanced Stock Tracking System, is available. "Advanced Stock Tracking System (AST) is a web-based application for keeping track of stocks. It features a portfolio with dividend tracking, worksheet to keep track of prospects, a stock comparison utility, a search engine for the stock market and an alert engine to email you about key events in your securities."

Comments (none posted)

GUI Packages

Flightdeck-UI Library re-released under the LGPL

The Flightdeck-UI Tkinter library is now available under the Lesser General Public License (LGPL). "The goal of the Flightdeck-UI project is to apply ideas from aircraft instrumentation design to general purpose user interfaces."

Full Story (comments: none)

Interoperability

Wine Weekly Newsletter

Issue #300 of the Wine Weekly Newsletter is out with the latest Wine project news. Topics include: News: Nothing To See Here.. Move Along, wine.git, Direct3D & WGL, Linking libGL.so, Debugging Critical Section Lockups, Installing the Mozilla ActiveX Control, MSVCRT Clashes With LibC, and Quake 2 Evolved & Winelib.

Comments (none posted)

Music Applications

Amuc version 1.2 released

Version 1.2 of Amuc, the Amsterdam Music Composer, is out. "New in this version are the mono-synthesizers." A new demo song is also available.

Full Story (comments: none)

Office Applications

Diction 1.09 Released

Stable version 1.09 of Diction, an English and German language tool, is available. "This program includes both 'diction' and 'style'. 'Diction' identifies wordy and commonly misused phrases; 'style' analyzes surface characteristics of a document, including sentence length and other readability measures."

Comments (none posted)

Office Suites

OpenOffice.org Newsletter

The November, 2005 edition of the OpenOffice.org Newsletter has been published. Take a look for the latest OpenOffice.org news, announcements and more .

Full Story (comments: none)

Miscellaneous

Improvements in Nautilus search

GNOME hacker Alexander Larsson has posted a look at search-enabled Nautilus, complete with a large set of screenshots. Quite a few new capabilities ("smart folders" and such) have been added. This may be a useful development for people (or distributors) who do not want to work with Beagle. (Seen on FootNotes).

Comments (2 posted)

Nomad PIM preview build p20051130a released (SourceForge)

Preview build p20051130a of Nomad PIM is out with bug fixes and new capabilities. "Nomad PIM is a personal information manager. It allows you to keep track of your notes, schedule, contacts and money and to write a diary. In many places, only text input is supported by now, but it is planned to add more structure step by step in the future."

Comments (none posted)

OmegaT 1.6.RC4 released (SourceForge)

the Fourth Candidate Release of OmegaT 1.6, a Java-based translation memory application, has been announced. "RC4 is RC3 + a few bugfixes, the most important being two fixes in handling HTML files. Now OmegaT does not skip initial formatting tags (like, e.g., in "bold here") and respects the structure of HTML in output."

Comments (none posted)

Languages and Tools

BASIC

FreeBASIC v0.15b released (SourceForge)

Version 0.15b of FreeBASIC has been released. "FreeBASIC is an open-source, free, 32-bit compiler, with the syntax the most compatible possible with MS-QuickBASIC (including the GFX statements), but that adds new features such as pointers, unsigned data types, inline-assembly, a pre-processor and many others. New in this release: Unicode strings, OPEN for devices, complete Windows API headers, besides many bug fixes. Read the changelog for more details."

Comments (none posted)

Java

PMD v3.4 released (SourceForge)

Version 3.4 of PMD, a Java source code analyzer, is out. "It features thirteen new rules, an entirely new "migrating" ruleset for helping to migrate from one JDK version to another, new facilities for suppressing warnings with annotations, and lots of bug fixes and performance improvements."

Comments (none posted)

JSP

Tuning AJAX (O'Reilly)

Dave Johnson discusses AJAX performance tuning on O'Reilly. "Unless you live under a rock, you've heard about and likely even used AJAX. Asynchronous JavaScript and XML is becoming an increasingly pervasive deployment methodology, which necessitates that people start to both understand how it works and actually consider it more seriously as an enterprise-level development tool. To that end, I will try to illustrate one method of benchmarking your AJAX applications as well as point out some of the major performance pitfalls I have encountered while developing AJAX components and applications."

Comments (none posted)

Lisp

CMUCL 19c released

Release 19c of CMUCL (CMU Common Lisp) is out. "This version adds the possibility of saving cross reference information to fasl files, adds annotation support to the pretty printer, improves ANSI compliance, provides an improved build procedure, and more."

Full Story (comments: none)

GNU CLISP 2.36 released

Version 2.36 of GNU CLISP, a Common Lisp implementation, is available. "This version includes new configuration options, adds some functions and macros, improves FFI support and documentation lookup, adds the new charset BASE64, provides improved command line management, implements more CLX functionality, has better ANSI compliance, and more."

Full Story (comments: none)

ML

MLton 20051202 Released

Version 20051202 of MLton, an optimizing compiler for the Standard ML language, is out. "MLton is now under the BSD license, not the GPL. There is substantially improved documentation, based on the MLton wiki. We have added new platforms: x86/MinGW and HPPA/Linux. There are improvements to the FFI, ML Basis annotations, and new libraries: the ckit and SML/NJ library."

Full Story (comments: none)

Python

Dr. Dobb's Python-URL!

The December 2, 2005 edition of Dr. Dobb's Python-URL! is online with the latest Python article links.

Full Story (comments: none)

Dr. Dobb's Python-URL!

The December 7, 2005 edition of Dr. Dobb's Python-URL! is online with a new collection of Python articles.

Full Story (comments: none)

Ruby

Ruby Weekly News

The December 4th, 2005 edition of the Ruby Weekly News looks at the latest discussions from the ruby-talk mailing list.

Comments (none posted)

Tcl/Tk

Dr. Dobb's Tcl-URL!

The November 30, 2005 edition of Dr. Dobb's Tcl-URL! is online. Take a look for new Tcl/Tk articles and resources.

Full Story (comments: none)

Editors

TinyMCE 2.0 Final released (SourceForge)

Version 2.0 final of TinyMCE, a platform independent web based Javascript HTML WYSIWYG editor, is available. "TinyMCE 2.0 is now released as stable this means that we havn't found any more critical bugs and issues so we recommend that you replace your existing 1.xx versions with 2.0 version."

Comments (none posted)

Version Control

GIT 0.99.9l aka 1.0rc4 Released

Version 0.99.91/1.0 rc 4 of Git is out. "This is mostly fixes, with some improvements. As I said on the git list earlier, no more major feature/semantics changes after this is expected until 1.0."

Full Story (comments: none)

Miscellaneous

Signals as a Linux debugging tool (IBM developerWorks)

Madhavan Srinivasan uses signals for debugging purposes. "By focusing on the analysis of data captured using signal handlers, you can speed up the most time-consuming part of debugging: finding the bug. This article gives a background on Linux® signals with examples specifically tested on PPC Linux, then goes on to show how to design your handlers to output information that lets you quickly home in on failed portions of code."

Comments (none posted)

Page editor: Forrest Cook
Next page: Linux in the news>>


Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds