Modifications apportées à la bibliothèque QxOrm 1.4.2 :
- sérialisation JSON : toute classe C++ enregistrée dans le contexte QxOrm peut être sérialisée/désérialisée au format JSON (cette fonctionnalité nécessite Qt5) ;
- pour plus de détails sur la sérialisation JSON, rendez-vous sur le manuel d'utilisation de la bibliothèque QxOrm ;
- en combinant le moteur de sérialisation JSON et le module QxService, il est à présent possible de créer des services web de type REST (pour envoyer des données à un moteur JavaScript ou une page web par exemple) ;
- correction d'erreurs de compilation avec des compilateurs récents (et moins permissifs) et les dernières versions de boost et Qt ;
- correction d'une assertion à l'initialisation des relations dans un schéma complexe comprenant beaucoup d'entités ;
- amélioration du moteur de sérialisation QDataStream : plus rapide à présent, et correction apportée avec les dépendances entre instances ;
- correction des relations 1-n et n-n lorsque l'élément parent à récupérer est un conteneur de pile d'objets (ça fonctionnait avec des conteneurs de pointeurs ou pointeurs intelligents, par exemple : QList<blog> vs QList<std::shared_ptr<blog>>) ;
- amélioration de la fonction qx::dump() : possibilité d'afficher une instance C++ au format XML ou JSON.
Modifications apportées à l'application QxEntityEditor 1.1.9 :
- nouveau plugin d'import pour se connecter à une base de données MySQL ou MariaDB sans utiliser les pilotes ODBC ;
- nouveau plugin d'import pour se connecter à une base de données PostgreSQL sans utiliser les pilotes ODBC ;
- nouveau plugin d'import pour gérer un projet QxEntityEditor à partir d'un fichier texte au format JSON ;
- correction du plugin d'import SQLite pour gérer les clés primaires définies sur plusieurs colonnes ;
- amélioration du moteur JavaScript pour personnaliser les exports : nouveaux types disponibles par script pour gérer les fichiers et répertoires, et possibilité de récupérer des variables d'environnement (lire le fichier custom_script.js du dossier ./samples/ pour accéder à des exemples de scripts) ;
- amélioration du moteur JavaScript pour personnaliser les exports : nouveaux événements/actions disponibles par script (PLUGIN_EXPORT_START, PLUGIN_EXPORT_END, AFTER_CLOSING_FILE) ;
- nouvelle fenêtre lors d'un export pour la création automatique du répertoire d'export si ce dernier n'existe pas ;
- correction d'un problème avec la fonction d'historisation d'un projet *.qxee (Tag project state) : chaque étiquette doublait la taille du projet, à présent chaque étiquette est optimisée ;
- correction du plugin d'export de services C++ lorsque les fonctionnalités C++11 sont activées dans le fichier de configuration QxOrm.pri ;
- possibilité d'exporter un projet *.qxee dans un fichier texte au format JSON (peut être utile pour stocker dans un gestionnaire de code source comme Perforce, VSS, CVS, Git, etc.) ;
- possibilité d'utiliser une variable d'environnement pour définir le chemin d'accès à la bibliothèque QxOrm (en utilisant la même syntaxe que qmake, par exemple : $$(QXORM_DIR)).
Vous pouvez télécharger ces nouvelles versions sur le site internet de QxOrm et QxEntityEditor : http://www.qxorm.com/
Et vous ?
Qu'en pensez-vous ?