Hello,

QxOrm library 1.4.3 and QxEntityEditor application 1.2.1 just released !
The Qt ORM library now supports CMake and provides a new QxEntityEditor documentation.

QxOrm library 1.4.3 changes log :
  • Support CMake : new CMakeLists.txt file added to build QxOrm library with CMake
  • Improve SQL error messages when qx::dao functions return a database error
  • New parameter in singleton class qx::QxSqlDatabase to log SQL bound values (setTraceSqlBoundValues) : by default, bound values are logged when an error occurred
  • New syntax to select columns to not fetch : -{ col_1, col_2, etc... }
  • New function qx::dao::call_query_without_prepare() to execute specific SQL queries without prepared statement
  • Improve QxModelView module : all QxOrm models (based on qx::IxModel interface) can be serialized to JSON format (including all relationships levels) : this is now another way to work with relationships and QML (thanks to JSON.parse() and JSON.stringify() javascript functions) without using nested models concept (so without using QxEntityEditor model/view generated classes)
  • Improve qxBlogModelView sample project and QxOrm manual to show how to access to relationships data in QML (nested models or JSON)
  • Fix a memory leak in qx::QxSqlRelation class
  • Reduce output binary size (~20%) and compilation times (~20%) to build persistent classes based on QxOrm library
  • Support unity build concept to reduce compilation times to build QxOrm library and C++ persistent classes generated by QxEntityEditor application : for more details, see _QX_UNITY_BUILD compilation option in QxOrm.pri or QxOrm.cmake configuration file
  • Improve QxConvert module : possibility to store in database complex QVariant properties which contain QVariantMap, QVariantHash or QVariantList types (JSON format)
  • Fix an issue with some databases when a foreign key is also a part of the primary key
  • Fix an issue with QSharedPointer and boost::serialization when a same raw pointer is shared by several QSharedPointer during deserialization process


QxEntityEditor application 1.2.1 changes log :
  • Support CMake : each C++ project generated by QxEntityEditor (persistent classes, services, model/view) provide a CMakeLists.txt file to build with CMake
  • New online QxEntityEditor manual (user guide) available at : http://www.qxorm.com/qxorm_en/manual_qxee.html
  • Improve Javascript engine to customize export generated files : add a parameter named 'output_location' to know where generated files are located + add functions to get a list of all entities/enums of a project (see ./samples/custom_script.js file for more details)
  • Improve database import process (SQLite, MySQL/MariaDB, PostgreSQL, Oracle and MSSQLServer) : fix an issue importing composite foreign keys + foreign keys embedded in primary key ==> so it is now possible to import more complex database schema
  • Improve DDL database schema export process : fix an issue with 1-1 relationship + manage composite keys
  • New menu "Naming convention" to provide a fast way to rename all entities/properties/enums (without breaking mapping to database) : support snake_case, camelCase and PascalCase (or upper camel case), this new menu can be useful after an import from database process for example
  • Each screen of QxEntityEditor provides now a fast access to the online manual (user guide) in its associated topic (new button "Documentation" + shortcut pressing F1 key everywhere)
  • New buttons undo/redo in the main QxEntityEditor toolbar to undo or redo actions done on entities, enumerations, comments, layout (undo/redo feature can be disabled to improve performance on large projects)
  • Support _QX_UNITY_BUILD compilation option to reduce compilation times of generated C++ projects (recommended with CMake which doesn't support natively precompiled headers)
  • Fix an issue importing a relationship where target entity doesn't have a primary key
  • Fix an issue with C++ services export plugin and JSON serialization : "Unable to create nude pointer for input parameter"
  • Fix an issue with abstract entities and C++ model/view export plugin and C++ services export plugin
  • Possibility to put hexadecimal values to define an enumeration
  • New Javascript sample file in directory ./samples/ named q_property.js to show how to add automatically Q_PROPERTY definition for each property generated by QxEntityEditor




You can download latest version of QxOrm library and QxEntityEditor application on QxOrm website.