[odb-announcements] ODB 1.2.0 released

Boris Kolpackov boris at codesynthesis.com
Wed Mar 16 07:46:28 EDT 2011


We have released ODB 1.2.0. The NEWS file entries for this release are
as follows:

  * New profile, boost, provides persistence support for the Boost libraries.
    This version covers the most commonly used types from the smart_ptr,
    unordered, and date_time libraries. For example, now you can write:

    #pragma db object
    class employee

      boost::gregorian::date born_;
      boost::unordered_set<std::string> emails_;
      boost::shared_ptr<employer> employer_;

    The boost profile implementation is provided by the libodb-boost library.
    For more information refer to Chapter 11, "Profiles Introduction" and
    Chapter 12, "Boost Profile" in the ODB manual as well as the 'boost'
    example in the odb-examples package.

  * Support for embedded database schemas. The new option, --schema-format,
    allows the selection of the schema format. The valid values for this
    option are 'sql' for a standalone SQL file and 'embedded' for a schema
    embedded into the generated C++ code. The new odb::schema_catalog class
    provides support for accessing embedded schemas from within the
    application. For details refer to Section 3.3, "Database" in the ODB
    manual as well as the 'schema/embedded' example in the odb-examples

  * New exceptions: odb::recoverable, odb::connection_lost, and odb::timeout.
    The odb::recoverable exception is a common base class for all recoverable
    ODB exceptions. The other two exceptions plus odb::deadlock now inherit
    from this base. Refer to Section 3.5, "Error Handling and Recovery" for

  * Support for connection validation (ping) in MySQL connection_pool_factory.
    This transparently deals with the MySQL server closing connections after
    a certain period of inactivity.

  * New namespace, odb::core, contains using-declarations for the core ODB
    constructs, such as the database, transaction, etc. The primary use of
    this namespace is in the using-directives:

    using namespace odb::core;

    The above form should be preferred over the old variant:

    using namespace odb;

    The new approach brings all the essential ODB names into the current
    namespace without any of the auxiliary objects such as traits, etc., which
    minimizes the likelihood of conflicts with other libraries.  Note that you
    should still use the odb namespace when qualifying individual names, for
    example, odb::database.

  * New option aliases: -q for --generate-query and -s for --generate-schema.

  * Support for the default options file. Now, if configured, the ODB compiler
    loads the default options file (by default ../etc/odb/default.options,
    relative to the ODB compiler binary). This file can be used for
    installation-wide customization, such as adding extra include search

Source code and pre-compiled binary packages for this release are available
from the ODB download page:


SHA1 checksums for the files in this release are as follows:

366bb4fdd9c900a5b5cd47930ccab99d4f7120fa  libodb-1.2.0.tar.bz2
7ae7d005f58696df8ed787d95c7fdfa4fbac3ede  libodb-1.2.0.tar.gz
5a14afdacc489930dfbe2612c9c6f6f4e7a2d3c3  libodb-1.2.0.zip
e7b050ecf17a7b625b3356ca54c18122506c579a  libodb-boost-1.2.0.tar.bz2
79e3b68fe6512d03a9cf8b91bfcfe6d11b68455e  libodb-boost-1.2.0.tar.gz
bd1fee06f547a4b949e11dbf8904517ba7704d3c  libodb-boost-1.2.0.zip
a925cb169a08de6b3dab45c32119e61d6f6da4ce  libodb-mysql-1.2.0.tar.bz2
173c153065329425ed0c8ec8ab2b807ef1dbe271  libodb-mysql-1.2.0.tar.gz
486166a47d518324545bf2be3bb877db0a7d3a13  libodb-mysql-1.2.0.zip
ee5b18d06121d89463ab288c6a68bd95eae37491  libodb-tracer-1.2.0.tar.bz2
25131364958ce3197c7a62383e93564f7ee45fb2  libodb-tracer-1.2.0.tar.gz
c3b6f54cc205032ebfeeab25d9186b309c36d229  libodb-tracer-1.2.0.zip
a4ced7b0ed2dba6aca462022a59d2c2b16d15478  odb-1.2.0-i686-linux-gnu.tar.bz2
7ecc3ca9fcc9d3ae76c9f3cfa52839666af75ece  odb-1.2.0-i686-macosx.tar.bz2
0f4cc2cd35d31e61a7b5086522de4586b70b274f  odb-1.2.0-i686-solaris.tar.bz2
8883d7d72ca9233a74706c7da38f5c935d363b00  odb-1.2.0-i686-windows.zip
b6d3a92907bdc6895326a81209b8db83fb3d7ba8  odb-1.2.0-sparc-solaris.tar.bz2
b9b583f2c4aa0dc01110b184f4b481c17638aa41  odb-1.2.0.tar.bz2
2f3d83a44909d1efa7067db98acb7399e822e7b3  odb-1.2.0.tar.gz
88527ac892d56eac0593477b5c8718eeb3b89863  odb-1.2.0-x86_64-linux-gnu.tar.bz2
b0c28ef2f20fbcb00a7395432f9c71de84fbf681  odb-1.2.0.zip
8c709d0899bde23de6b106d13890e099791a0f71  odb-examples-1.2.0.tar.bz2
114241c511c180d9cafdb8e32fff2c5a2ef65475  odb-examples-1.2.0.tar.gz
b3e850d343274caaa25a5665314070b4243abcbb  odb-examples-1.2.0.zip
43afba35440584ba27a53e550c82fa18023df39f  odb-tests-1.2.0.tar.bz2
01b8357d750abc17cd3ed0a005f91dfd43f3b529  odb-tests-1.2.0.tar.gz
ce88fea1ed82417e949f4b7b7181eae4143d68f3  odb-tests-1.2.0.zip


More information about the odb-announcements mailing list