The DTD (document type definition) structure of the database model file has changed since the last stable version 0.9.1. Models created in previous releases will certainly fail to load due to incompatibilities because some attributes in the XML code are not valid anymore on 0.9.2. So, before starting to load your database models in this new release, please, make a backup of them and follow the steps presented by the tool to fix the documents' contents. Not paying attention to this situation may cause irreversible data loss!
It's always an enormous pride and honor to announce another stable release of my project because it marks the apex of my dedication during the months. It may sound exaggerated but those are the feelings that my heart fills with! :)
pgModeler was a dream that I did accomplish as everyone that follows the project all these years know and releasing another version makes me even more motivated to keep working, polishing, creating new features, replying to users' requests in form of enhancements and so on. I'm pretty happy that pgModeler is now a reference to the PostgreSQL community when it comes to open source data modeling tool. You all have my thanks for the feedback that helped to improve the tool and patience for the patches that took too long to come out. ;)
Okay... making a small summary of the past 17 months pgModeler have received important changes and new features such as identity columns options, columns' aliases support, table partitioning, table collapsing and pagination, view columns, canvas layers, support to foreign data wrappers, foreign servers, user mappings, redesigned data manipulation form, table items multiselection, foreign tables support, diff presets and many others not less important. It may be a small list of improvements, but believe me, a lot of effort was put to make these things real!
Now, for the 0.9.2 specifically, we have introduced the data dictionary generation which consists of a process that takes all tables as input (views and foreign tables included) and produces an HTML representation of them, exposing more information that isn't able to be shown in the database model due to performance reasons as well to prevent the pollution of the database model with lots of additional info displayed in a single place. This summarizes the data dictionary feature and turns it another option for those who need to document a database model.
There's no secret in the generation of a data dictionary based on your model. Just open the export dialog (either by hitting
Ctrl + Shift + E or clicking on the left toolbar at main window) and select Data dictionary at the bottom. The data dictionary generation has some options that affect the way the output is generated. The first one
Standalone indicates that the data dictionary should be saved in one single file which means that all tables, views, and foreign tables will be stored in the same place (for huge models this can be a bit annoying). The counterpart of standalone generation mode,
Splitted, indicates that an HTML file should be generated per table (the best approach for a huge model, in my opinion). In the split mode, the resulting files are stored in a folder for the sake of organization. The last option
Include index generates an index that facilitates the navigation through tables. In the split mode a file
index.html is created and store the data dictionary index (as the name suggests). You can see the data dictionary generation below.
This release also introduces the first third-party plugin and it's a great extension! It's nothing less than a graphical query builder which will help either beginners and experienced users to create DML commands out of their database models and run them directly from the built-in SQL tool. The plugin is still in alpha stage and its author is calling out helpers to improve it! You can see all details about the plugin at the brand new official pgModeler's plugin repository. It's a great joy to see that pgModeler is motivating developers around the world to creating extensions. Here I thank Maxime Chambonnet for his such amazing work on that plugin. I hope more developers create their extensions too making pgModeler an even more versatile product! :)
Well, that's it! The source code of 0.9.2 is available here or if you prefer not to compile the tool by yourself there're compiled binaries for a fair price available here, this way you help to support pgModeler while you have access to ready-to-use installers! ;)
I hope you enjoy this version. Don't forget to leave your comments here, submit bug reports at GitHub or just say "hi!" at any of the communication channels! Now I'll enjoy the last days of my vacation and start to update the documentation and then work on 0.9.3 (or 1.0?) as soon as I return. I wish everyone a happy new year and that 2020 can be a great year for this project! :)
See you next time.