aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-02-28Handle C++11 movable object pointers such as std::unique_ptrBoris Kolpackov2-0/+49
2012-02-28Add support for object pointers with two template parametersBoris Kolpackov3-0/+127
Such as C++11 std::unique_ptr.
2012-02-28Remove allocator constructors and reset() from TR1 lazy_shared_ptrBoris Kolpackov2-43/+2
Those are not provided by TR1.
2012-02-28Support for C++11 std::shared_ptr/weak_ptr as object pointersBoris Kolpackov8-4/+1344
This includes odb::lazy_shared_ptr and odb::lazy_weak_ptr implementations.
2012-02-28Build infrastructure for C++11 supportBoris Kolpackov6-2/+62
2012-01-29Bump version to 1.8.01.8.0Boris Kolpackov2-5/+5
2012-01-29Update copyright yearBoris Kolpackov150-150/+150
2012-01-29Remove author field from file headerBoris Kolpackov150-151/+1
Too much effort to maintain.
2012-01-09Add note on disabling __declspec(thread) usage if loading libodb DLL dynamicallyBoris Kolpackov1-3/+15
Windows XP/Server 2003 do not support this.
2011-12-06Override second version of tracer::execute() to suppress Sun CC warning1.7.0Boris Kolpackov1-0/+11
2011-12-05Bump version to 1.7.0Boris Kolpackov2-5/+5
2011-12-05Add link to licensing overview pageBoris Kolpackov1-0/+6
2011-11-16Set proper permissions for configure scriptBoris Kolpackov1-0/+0
2011-11-15Add support for selecting threading implementationBoris Kolpackov5-2/+98
2011-11-15Remove generated file from repositoryBoris Kolpackov1-10/+0
2011-11-07Add support for SQL statement tracingBoris Kolpackov13-6/+298
2011-11-03Qualify details namespace with odb to help buggy VC++1.7.0.a1Boris Kolpackov2-3/+3
2011-11-02Bump version to 1.7.0.a1Boris Kolpackov2-5/+5
2011-11-02Add database::reload() overloads for pointersBoris Kolpackov2-0/+46
2011-11-02Add result_iterator::id() function that returns id without loading objectBoris Kolpackov1-0/+6
2011-11-02Optimize load_id(), load() sequence for SQLite and PostgreSQLBoris Kolpackov2-3/+9
In these databases both of these functions load the data into the object image. If there is no chance of image overwrite between these calls, then we don't need to load the image the second time.
2011-11-01Implement support for optimistic concurrencyBoris Kolpackov4-5/+34
New pragmas: optimistic, version. New test: optimistic. New database function: reload().
2011-10-27Make sure output directory exist before generating config.hBoris Kolpackov1-1/+1
2011-10-27Add support for persistent classes without object idsBoris Kolpackov7-77/+398
New pragma id (object). New test: common/no-id.
2011-10-26Correct typoConstantin Michael1-1/+1
2011-10-24Add commentBoris Kolpackov1-0/+5
2011-10-21Add support for const data membersBoris Kolpackov2-13/+43
Const data members are automatically treated as readonly. New test: const-member.
2011-10-21Add support for readonly membersBoris Kolpackov1-0/+10
New pragma: readonly. New test: readonly.
2011-10-21Do not allocate memory for buffer if constructed with zero capacityConstantin Michael1-2/+2
2011-10-21Allow specification of buffer capacity on construction defaulting to 256 bytesConstantin Michael1-2/+7
2011-10-19Mention autotools as prerequisite in INSTALL-GITBoris Kolpackov1-3/+9
2011-10-03Bump version to 1.6.01.6.01.6Boris Kolpackov2-5/+5
2011-09-22Make common result implementation instead of separate for views and objects1.6.0.a2Boris Kolpackov3-307/+173
2011-09-22Workaround for VC9Boris Kolpackov1-5/+13
2011-09-22Workaround for VC9Boris Kolpackov2-2/+2
2011-09-22Workaround for Sun CCBoris Kolpackov2-2/+2
2011-09-21Rework const object handlingBoris Kolpackov16-227/+216
Now objects are always loaded as non-const and the object cache in session treats all objects as non-const.
2011-09-20Bump version to 1.6.0.a2Boris Kolpackov2-5/+5
2011-09-20Change query syntax to use . for composite and -> for object pointer accessBoris Kolpackov1-0/+18
Also make non-inverse query columns act as both an object pointer and a normal column. The latter allows us to use natural expressions such as query<employee>::employer.is_null ().
2011-09-09New templated query_columns architectureBoris Kolpackov1-12/+13
We also now use the correct separate "role"-base join approach instead of having a single merged join for each table.
2011-09-05Support for views; native partBoris Kolpackov11-354/+893
2011-09-05Use more descriptive names in details/meta/Boris Kolpackov8-64/+67
2011-08-28Make sure underlying value is in default-constructed state if nullable is NULLBoris Kolpackov1-6/+3
2011-08-24Add support for transaction multiplexingBoris Kolpackov4-28/+71
Also delay getting a connection until after we do all the sanity checks (e.g., that there is no active transaction). Otherwise we are running risk of getting blocked rather than throwing an exception.
2011-08-22Bump version to 1.6.0.a11.6.0.a1Boris Kolpackov2-5/+5
2011-08-22Add database::erase_query() functionBoris Kolpackov3-0/+66
New test: common/erase-query. Documentation is in Section 3.9, "Deleting Persistent Objects". The current implementation does not work well with the session (no removal of the erased objects from the cache).
2011-08-21Add odb::connection classBoris Kolpackov10-7/+197
This abstract class represents a connection to the database. One can use it to start a transaction or to execute a native statement out of a transaction. Before we had concrete connection classes in the database runtime libraries (e.g., odb::mysql::connection). Now these classes derive from odb::connection.
2011-08-21Add support for multi-pass database schema dropBoris Kolpackov2-6/+24
2011-08-04Add support for value wrappersBoris Kolpackov4-0/+455
Wrapper is a class that wraps another type. Examples of wrappers are various smart pointers, holders, etc. A wrapper can be transparent or it can handle the NULL semantics. The new odb::nullable class template is a NULL wrapper that helps to add the NULL semantics to a value type. New test: common/wrapper.
2011-07-27Bump version to 1.6.0Boris Kolpackov2-5/+5