Web lists-archives.com

QxOrm 1.4.1 released : new documentation (user guide), and boost::serialization becomes optional


*QxOrm 1.4.1 just released !* <http://www.qxorm.com/>

Changes in version QxOrm 1.4.1 :
*!!! IMPORTANT NOTE ABOUT THIS VERSION !!!* : it is strongly recommended to
read the QxOrm.pri configuration file
<http://www.qxorm.com/qxorm_en/manual.html#manual_220> of this new version
(compilation options have changed compared to previous versions).
Now, by default, QxOrm library is a much lighter library : QxOrm depends
only on *QtCore* and *QtSql* (boost serialization is now optional and not
required by default).
By default, serialization engine is now based on Qt *QDataStream* class
(but you can still enable boost serialization defining *
_QX_ENABLE_BOOST_SERIALIZATION* compilation option in QxOrm.pri
configuration file).
So now, with default options :
 - QxOrm 1.4.1 is much easier to install because you don't have to deal
with boost serialization extra dependency ;
 - QxOrm 1.4.1 shared library is 3X smaller than 1.3.2 version ;
 - Generated binaries which depends on QxOrm library are 25% smaller ;
 - If you are not using serialization functions in current projects based
on QxOrm library, then you can define or not
*_QX_ENABLE_BOOST_SERIALIZATION* compilation option without changing any
line of your source code.

Here are all other changes of version QxOrm 1.4.1 :
 - Improve relationships engine : possibility to select columns to fetch
using syntax : my_relation { col_1, col_2, etc... }
<http://www.qxorm.com/qxorm_en/manual.html#manual_3850> ;
 - Improve QxTraits module
<http://www.qxorm.com/doxygen/html/group___qx_traits.html> to reduce
compilation times and build smaller binaries ;
 - Improve QxOrm website adding possibility to search and replacing the old
FAQ <http://www.qxorm.com/qxorm_en/faq.html> by a more organized manual
(user guide) <http://www.qxorm.com/qxorm_en/manual.html> ;
 - New compilation option *_QX_ENABLE_BOOST_SERIALIZATION* to enable boost
serialization dependency (read QxOrm.pri configuration file for more
details) ;
 - New compilation option *_QX_ENABLE_QT_NETWORK* to enable QxService module
<http://www.qxorm.com/qxorm_en/manual.html#manual_80> (transfer persistent
layer over network) : read QxOrm.pri configuration file for more details ;
 - New compilation option *_QX_NO_RTTI* to build QxOrm library without C++
RTTI type information ;
 - Support QDataStream Qt serialization engine
<http://www.qxorm.com/qxorm_en/manual.html#manual_600> (used by default
when *_QX_ENABLE_BOOST_SERIALIZATION* compilation option is not defined) ;
 - Improve qx_query class
<http://www.qxorm.com/qxorm_en/manual.html#manual_3600> (SQL queries) : new
method (named *customOperator()*) which gives the possibility to define a
custom operator (for example <@ for PostgreSQL ltree type) ;
 - Fix a program startup issue due to 'static initialization order fiasco'
creating singletons (it was an issue with some compilers during the shared
library link process) ;
 - New namespace qx::dao::throwable : same functions as qx::dao namespace
<http://www.qxorm.com/doxygen/html/namespaceqx_1_1dao.html>, but they throw
a *qx::dao::sql_error* exception when a SQL error occurred (instead of
returning a *QSqlError* instance) ;
 - Add a *qAssertMsg()* macro to put a more explicit error message when
throwing an assertion ;
 - Include all **.inl* files (template implementation) in QxOrm.pro project
file : QtCreator can now index these **.inl* files in its project treeview ;
 - Rename *QxStringCvt* to *QxConvert* : so if you persist custom types to
database, you have to rename from *QxStringCvt_FromVariant,
QxStringCvt_ToVariant* to *QxConvert_FromVariant, QxConvert_ToVariant*.

You can download latest version of *QxOrm library* and *QxEntityEditor
application* on QxOrm website. <http://www.qxorm.com/>


Lionel Marty - QxOrm library