After five months of development, the first alpha release for pgModeler 1.1.0 is finally ready and brings some significant improvements compared to 1.0.x. The long-awaited code completion based on living database object names is now implemented in the tool. Also, pgModeler is now able to follow the system's color schema. Many other UI improvements were made attending to the users' requests. One of them is the ability to drag & drop .dbm files directly to the tool's main window to load models. In general settings, the database object shadows can be deactivated improving the rendering speed. The SQL execution widget and data manipulation form now support data exporting to CSV format besides the classic plain text format. In the SQL execution widget, when pasting SQL code coming from external IDEs, pgModeler will try to remove unneeded string concatenation characters in the clipboard text before inserting it in the input field. Finally, this version introduces the backup utility plugin, which implements a simple, user-friendly interface for the commands pg_dump, pg_dumpall, pg_restore, and psql. There's more to be detailed, don't let to read the full blog post!
The journey was really long, full of challenges that almost made me give up everything, but with the support from lots of people around the world, here we're, launching the long-awaited stable version of pgModeler 1.0.0! Since the early days of this project, seventeen years ago, I was anxious about this moment. This tool is the result of a dream of creating something really useful for the open-source community that I admire so much. I can't express in words how proud and joyful I'm about my hard work and the thousands of people that helped me so far. Thank you wholeheartedly to each one that reserved a bit of their time to make a contribution to this project. Your inestimable help was extremely important to keep this project alive and I hope to keep receiving all support needed to take pgModeler to levels even higher in the future! In resume, the development of pgModeler 1.0.0 took exactly, 398 days and 649 commits producing a total of 435 changes between new features, bug fixes, and improvements. In the UI, some parts were redesigned, new icons were created, and the long-requested dark theme support was added. In the code generation, the PostgreSQL 9.x support was dropped while PostgreSQL 15 was added. Also, the codebase was fully ported to Qt 6 and now pgModeler can take advantage of all improvements introduced by the framework. There were, of course, a bunch of bug fixes in practically all parts of the tool but the majority was applied to the reverse engineering and diff processes. The key changes of this version are detailed in this post, don't let to check it out!
This development iteration was mainly focused on code refactoring aiming for overall stability and code maintenance, but, as always, there were some minor fixes and changes in the user interface and in other core features. A new CSV parsing routine, improved reverse engineering, and minor adjustments in the design view are some of the changes in this release which are explained in the full post, don't miss it!
Following the path to the stable release, today I present to you pgModeler 1.0.0-beta. The main focus of this release is to remove the support for PostgreSQL 9.x which has not been maintained for over a year. This release also brings minor improvements in several parts of the tool. Now, the data dictionary displays information related to indexes, triggers, and sequences used in the tables, making the generated file much more complete from the documental point of view. Another improvement was the ability to generate SQL code split in the command line interface which allows generating SQL by objects in separate files. In the model design area, the magnifier tool has improved to allow better object interaction. As part of the continuous enhancement in the UI and usability, navigating through form fields using shortcuts and tab keys has been improved to be much more consistent and intuitive compared to previous versions. These and some other fixes and changes are detailed in the full post, don't miss it!
Since the main focus of this release was to improve even more the UI, we had to work on the refactoring of the codebase to use Qt 6 which has lots of enhancements compared to the previous major version. So, after 2 months of work, pgModeler is now completely ported to Qt 6. So, attending to some requests, pgModeler received the ability to change the icon sizes to fit different screens in a better way. Still in the responsiveness subject and using the Qt 6 improved high DPI screens support, pgModeler allows the use of custom UI scale factors which adjust the entire user-interface rendering depending on the screen that the tool is running. Another enhancement that is worth mentioning here is that the columns/constraints propagation mechanism was completely rewritten which resulted in a noticeable performance gain and now solves an old problem of columns/constraints created by identifier relationships not being added or even disappearing in certain circumstances. More details on the full post.
After four long months of working, we finally have the first alpha release of pgModeler 1.0! The main goal of this version was to boot up a series of deep improvements in the UI adding visual comfort while using the software. So that was done, this one brings redesigned UI elements and colors, a completely new icon set, and officially introduces the new project logo. As promised, pgModeler 1.0.0-alpha brings a responsive UI adapting the widget sizes and icons according to the screen's resolution. Also, we now have the support for color themes which can be toggled on-the-fly in the appearance settings. I'll explain more about what's new in the full post, don't miss it!
It was quite a challenge to develop version 0.9.4 during the year 2021 but we finally made it, the last pgModeler of the series 0.9.x is ready! This one has a vast set of improvements over 0.9.3, being 51 new features, 104 enhancements, and 73 bug fixes that will make a big difference in the overall usage of the tool. In this post, I'll make a recap of all key features introduced by the alpha and beta versions and talk about the end of the development cycle of the series 0.9.x and my expectations on the development of pgModeler 1.0 in the next year.
In preparation for the next major pgModeler release, the goal of this version was to bring only improvements and fixes to what was implemented until 0.9.4-beta, and thus it was done. pgModeler 0.9.4-beta1 brings a few entries in its changelog since we didn't have serious bugs reported in the past two months. So, I decided to make some polishing in several portions of the tool as explained in this post.
After two months of intense work, we finally made it! The last alpha release of 0.9.4 is ready bringing some important fixes, changes, and interesting new features. This version introduces the ability to export the database model in split SQL scripts either in GUI or CLI. Due to the introduction of a new syntax highlighting configuration, pgModeler now creates missing configuration files at startup avoiding breaking its execution, mainly when upgrading from an older release. The user is now able to drop databases quickly from the databases listing in the SQL tool without the need to browse them before performing the exclusion. Besides, a lot of changes were made in the files structure in preparation for pgModeler 1.0 that I'll start to develop right after 0.9.4. In this post I'll detail some key features of pgModeler 0.9.4-alpha1, so don't miss it!
After almost two months and keeping the spirit of polishing pgModeler's features during 0.9.3 development we're here to announce important fixes and some interesting new features in 0.9.3-alpha1. The first one is the capability of identifying and rendering relationships generated from foreign key constraints with the correct visual semantics. Also, pgModeler now allows the modification of objects generated by one-to-one and one-to-many relationships like columns and foreign keys constraints. Another great enhancement is the objects' filtering prior to the database reverse engineering, a handy feature if you constantly work on big databases by generating models from a subset of those databases. The tool also received support for some new PostgreSQL 12 features, now it is capable of handling generated columns while designing models, importing databases, and performing diffs. On the bug fixes side, some crashes were eliminated in different portions of the application. Also, relationships are now using correctly the provided global name patterns. Some other fixes were made on the system catalog queries and now running import and diff takes less time to complete. Don't miss the details on the full post!