YB.ORM 0.4.9

YB.ORM is a object-relational mapper for C++. It was inspired by Hibernate and SQLAlchemy and should be database-independent. It provides C++ code generation for domain objects, which can be synchronized with new table definitions as kept in XML meta files, but also provides JSON serialization. YB.ORM was tested with MySQL, Oracle, SQLite, Firebird, Postgres, MSSQL and can utilize ODBC, SOCI and other drivers.

Tags c++ orm database dao code-generator odbc
License MITL
State beta

Recent Releases

0.4.906 May 2019 03:15 minor feature: Support for building with msvc 2019. Support for mingw gcc 8.1.0. Support noexcept for clang 6.0. micro_http: use pool of worker threads. Support building on Ubuntu 18.04. Update Catch to v1.12.0. Switch back to sprintf for compatibility. Auth: Refactor micro_http a little. Auth: refactor HttpMessage; add Syslog support. Wrote a.spec file for building RPM.
0.4.812 Apr 2016 03:16 minor bugfix: Broken DomainObj::find(); warnings. Broken method Property::is_null(); More checks not to dereference NULL pointer. Possible buffer underrun. Sync micro_http with card-proxy. Problem with removing of non existent backup file. #28: ing defects found by Coverity Scan. #26: do not throw on saving a DataObject twice;. Check if logger is present in EngineBase. #25: for msvc. Resource exhaustion handling in main loop of micro_http listener. #25: apply aliases for generated SELECT statements. #25: generate short mnemonic aliases for tables. Move the interlocked connection opening logic from drivers to SqlPool. Make it optional #24: do not use placement new/direct destructor calls: gcc5.2.1 ?. Improve performance of operations with keys: optimized for int IDs. Micro_http: Support setting back log size on a listening socket. Adjust logger format. Simplify logic of SqlPool. Logger: get/set/check the log level. ElementTree: easy access attributes with @ pre Update micro_http server and TcpSocket wrapper class. Important: start a transaction on first select if explicit transaction is required;. Pool: reopen a DB connection when got a DB error and no activity seen yet on the connection;. Micro_http: added HttpHeaders class implementation in Auth example;. Micro_http: analyze Content-Type more correctly;. Micro_http: allow to set response body with no additional headers. XInclude processing for LibXML2. Broken object construction for explicit joins;. Rename class ObjectList - DataObjectList. Added test for explicit joins. do not thow from destructor even if a connection fails to rollback.
0.4.701 Mar 2015 09:25 minor feature: yborm_gen tools can be used to extract database schema and store it into XML format. yborm_gen can be used to manually create schema objects in database as well as to drop them in correct order. Proper support for 'LIKE' and 'IN' operators. Make use of std::tuple if it's available . Build-system fixes to allow easy selection of Boost instance. Fix Automake scripts to build YB.ORM with Qt5. Auth example: Fix possible endless loop in HTTP code.
0.4.624 Oct 2014 02:05 minor feature: New optional inline syntax for describing the mapping scheme within a class declaration, based on macros. Porting tut2 and tut4 examples to the new declaration syntax instead of using XML configs. Support .range() pager in queries for different SQL dialects, also add .first() filter based on that pager. Updated documantation. Simple constructor for Session that accepts the connection string. It's possible now to construct the Session with a native connection, for example soci::session. Logger can be set in Session, no need to explicitly create Engine object, in simple cases. Schema object can export its current configuration to XML or SQL. New options object for SQL generation procedure. Many fixes to the build scripts. Auth example: Fix TcpSocket::read*() to use select() and a buffer.