After 4 months of work, I'm quite happy to announce another release of our beloved PostgreSQL database modeling tool! This version brings 23 new features, 22 improvements, and 14 fixes since the release of the previous alpha. This time, some important decisions were taken to make the code base a bit less complicated to maintain, at the same time some other portions of the tool were refactored to allow plugins' development to be more flexible. New features and important changes are also included, and I hope they will improve the tool's usage. Briefly speaking, this release introduces some nice features that can help in productivity. In the database modeling process, 1.2.0-alpha1 introduces a new way to quickly configure and assign layers to objects. The SQL export operation can be executed in a transaction block for atomic command executions, reverting changes if a single error occurs. In the SQL execution widget (in the management view), the code completion widget is now triggered for ALTER/DROP commands. Also, we're presenting the support for query variables which facilitates the test of queries using different variable formats adopted by ORMs. Finally, the data handling form received an important patch and now reunites the browsed tables in tabs drastically diminishing the use of standalone windows which could be confusing for the users. Everything will be fully explained in the full post, don't miss it!
After a work of three months here we are announcing pgModeler 1.2.0-alpha which bundles 20 new features, 26 improvements, and 22 bug fixes. Most are not directly visible to the user but will enhance the overall experience when designing database models or managing live databases. This version brings important changes to the schema microlanguage, improving the code reusability when writing schema files for code generation. This new pgModeler also supports markdown data dictionaries and a redesigned routine that copies legacy configuration files. Finally, there were several improvements in the SQL code generation and bug fixes here and there. Everything is detailed in this blog post, don't miss it!
After one year, 98 new features, 165 changes/improvements, and 88 bug fixes here we are, with great joy, bringing a new major release of pgModeler! The journey was long, with tons of challenges, but the results are satisfying because now we have an even more optimized tool with plenty of new features that will make your database modeling and management jobs more pleasant, accurate, and faster! This version brings major changes in the database model design including the infinite canvas support allowing objects to be placed everywhere without restricting them on the origin point (0, 0). Also, the database model file loading speed was greatly improved, and models that previously were loaded in minutes now load in a few seconds. Another important change in the design view was the introduction of a simplified way to create views way more intuitive compared to previous versions. In the database management view, the code completion now retrieves names from living databases accelerating the creation of SQL commands. The UI theme management area, pgModeler now can follow the current theme defined in the OS by selecting the correct theme (light/dark) without the need for the user's intervention. Finally, the command-line tool has received the plugins' support and now the CLI version of pgModeler can receive user-defined features making it even more powerful. This post explains the mentioned features and many others in detail, don't let to read it!
The last release of 2023 is here and brings relevant patches for the tool's macOS port, which now makes pgModeler stable enough on that OS. The issue on macOS caught me by surprise and forced me to dedicate all my efforts to make the tool work again which was time-consuming, causing some minor fixes to be postponed to the development of the stable 1.1.0, which justifies the small changelog of this version. It's important to note that the application's behavior on the other operational systems was kept unchanged, working as expected and without any apparent bug or crash. More details are provided in the full post.
Almost two months after launching 1.1.0-alpha1, I'm pleased to announce 1.1.0-beta! This version is the last to receive new features in this development cycle, and from now on, until the release of the stable 1.1.0 only bug fixes will be done. That said, my main focus on this release was to work on two things that have always bothered me since the early days of pgModeler: the view creation process and the extension data types handling. Since the codebase was mature enough, it was time to change those two aspects of the tool. So now pgModeler has a simpler way to create views instead of that old clumsy interface to configure them in previous versions. The other improvement is related to extensions which can now have multiple child data types. Finally, as always, several improvements all over to tool were made as well as some bug fixes here and there. Everything is well explained in this post, so, don't skip it!
After working for four months, we are here to bring you the last alpha release of pgModeler 1.1.0. This version was mainly focused on improving performance on several parts of the tool. A lot of effort was put into refactoring lots of code which led to an amazing (almost unbelievable) result. Basically, pgModeler has improved by ~80% in the database model loading speed, validation, object searching, and other secondary operations. This release also brings some cool UI improvements and a new exclusive feature, named SQL session plugin, available on the paid version of the tool. Finally, as always, pgModeler received some patches that solved crashes and improved the existing features so the user experience could be more pleasant and the results produced could be more accurate with their needs. Everything is fully detailed in this post, don't skip this reading!
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!