QxOrm 1.4.3 and QxEntityEditor 1.2.1 released : support CMake and new QxEntityEditor documentation
-
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.