[odb-announcements] ODB 1.5.0 released

Boris Kolpackov boris at codesynthesis.com
Tue Jul 26 03:36:24 EDT 2011


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

  * Support for the PostgreSQL database. The provided connection factories
    include 'new' (a new connection is created every time one is requested)
    and 'pool' (a pool of connections is maintained). The Boost and Qt
    profiles have been updated to support this database. For more information,
    refer to Chapter 13, "PostgreSQL Database" in the ODB manual.

  * New handling of the NULL semantics. Now, instead of being specified as
    part of the SQL type with the type pragma, there are separate null and
    not_null pragmas. The not_null pragma was used to control the NULL
    semantics of object pointers. Now the two pragmas are used consistently
    for object pointers and simple values (and, in the future, they will work
    for composite values and containers). To control the NULL semantics of
    the container's element values, the value_null and value_not_null pragmas
    have been added, similar to the value_type, value_column, etc., pragmas.
    For more information about the new mechanism, refer to Sections 10.2.3,
    10.2.8, 10.3.4, and 10.3.13 in the ODB manual.

    This is a backwards-incompatible change. Existing use cases that will
    require manual changes are listed below.

    For pragmas that apply to simple value types and data members of
    such types:

    #pragma db type("TEXT NOT NULL") => #pragma db type("TEXT")
    #pragma db type("TEXT NULL")     => #pragma db type("TEXT") null
    #pragma db type("TEXT")          => #pragma db type("TEXT") null

    For pragmas that apply to containers of pointers and data members of
    such types:

    #pragma db not_null              => #pragma db value_not_null

  * New pragma, default, allows the specification of the database default
    value. For more information, refer to Section 10.3.5, "default" in the
    ODB manual.

  * New pragmas, options, id_options, index_options, key_options, and
    value_options, allow the specification of additional column definition
    options. For more information, refer to Section 10.3.6, "options" in
    the ODB manual.

  * Support for database operations callbacks. Now a persistent class can
    register a callback function that will be called before and after every
    database operation (such as persist, load, update, or erase) is performed
    on an object of this class. A database operations callback can be used to
    implement object-specific pre and post initializations, registrations,
    and cleanups. For more information and an example, refer to Section
    10.1.4, "callback" in the ODB manual.

  * New option, --include-regex, allows the modification of the #include
    directive paths generated by the ODB compiler. This is primarily useful
    when placing the generated code into subdirectories and the #include
    directives have to be adjusted accordingly. The --include-regex-trace
    option is useful for debugging the expressions specified with

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:

3494e49d38aaaf26f7c087ab02e65e29fe59bd1d  libodb-1.5.0.tar.bz2
edcd8a934542c960c06da04fb8fc6a9a8aa21544  libodb-1.5.0.tar.gz
f87b424c2fabc651d5b5c30dda4bb46cf18b3210  libodb-1.5.0.zip
3b00efc7b8e43add78165ad6ef4a1b8ebb3a31f0  libodb-boost-1.5.0.tar.bz2
835b9448de0d4aeac7c0923a4e30efc9451f34e1  libodb-boost-1.5.0.tar.gz
edfea119f5d279e4b51ad004caa63d623a667e84  libodb-boost-1.5.0.zip
2b5a7bef9493b47bf82a7568c8369f6cd8e94253  libodb-mysql-1.5.0.tar.bz2
836d784f53552a9641d0cbaf870a2e6563e4eb7b  libodb-mysql-1.5.0.tar.gz
68e07e6c002f8c12826f5b3f15f2edfaa99ec9b0  libodb-mysql-1.5.0.zip
22f7cf7c8b689b68fc7ede5f76c8d31cffdc6e92  libodb-pgsql-1.5.0.tar.bz2
cfa7221dfa0ec28e2e45f285d8bf704ea7cb73e9  libodb-pgsql-1.5.0.tar.gz
64ac5c9dc841892c2fb76b2ae6d97d7b1d55a5fa  libodb-pgsql-1.5.0.zip
cfe802d549676fa2d1cf3d71ffbdf939df0a50b3  libodb-qt-1.5.0.tar.bz2
75fce37933d872f51a0ac565969750e9a6d5fa1f  libodb-qt-1.5.0.tar.gz
616f570e6cd81ef62e5fe667f130da824e360aed  libodb-qt-1.5.0.zip
524e5e8270e076d79980ccd00d23e4fd4ce309c4  libodb-sqlite-1.5.0.tar.bz2
13dd93d505250c8faa1fa00aa942ad01598e37d9  libodb-sqlite-1.5.0.tar.gz
4b5c43c12624e0dfe67cfd8fc52a1156b4d3840a  libodb-sqlite-1.5.0.zip
6610dc40b91eeb9e0af750e953b96ad68f17c521  libodb-tracer-1.5.0.tar.bz2
bf2f6e7f94536148099ebd27ff5e26b5529f0ff7  libodb-tracer-1.5.0.tar.gz
feb41d35e960654de148fdf79101622f61761719  libodb-tracer-1.5.0.zip
450c3865a647c820d7d342bd5d258901de484c74  odb-1.5.0-i686-linux-gnu.tar.bz2
6c183a8a92be4529fe578e399d0647e0187b00ab  odb-1.5.0-i686-macosx.tar.bz2
d09757b3937b34cbfee050a94ca981c96a0c7646  odb-1.5.0-i686-solaris.tar.bz2
5a1f1e467cfcee95de653718781be1948c1a1bd7  odb-1.5.0-i686-windows.zip
a5d8ad8c2464d5cbd703d78c81b96a1253310cc6  odb-1.5.0-sparc-solaris.tar.bz2
46c77261904407c4d6497f5c3dc6daaf15a3032a  odb-1.5.0.tar.bz2
17eb28531b33adb144ac48da9fa655d0618ead37  odb-1.5.0.tar.gz
a957777b57cc55d4a380358485b3e2ef91dc8c63  odb-1.5.0-x86_64-linux-gnu.tar.bz2
fc4744c369d08410b12c0914dd196b97c15ea726  odb-1.5.0.zip
34aa18ced8354778536f090cd393ffe60a428008  odb-examples-1.5.0.tar.bz2
5eb3aac99cb9d1021b39e70f42da371b81f5e968  odb-examples-1.5.0.tar.gz
b58715a23ce22f3833fe74b5831226a01a87b4a0  odb-examples-1.5.0.zip
bdc4bfde9224a2ab03fecf35b82887449b3d902c  odb-tests-1.5.0.tar.bz2
35c9ac71d8f403a68018d63d7e3b33cfb7525ec4  odb-tests-1.5.0.tar.gz
9a99081f4ab17ce900d0ffaf6e64f42dddb1a93c  odb-tests-1.5.0.zip


More information about the odb-announcements mailing list