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!
After bringing some important improvements on 0.9.2 it's time to start another round of polishing all features available in pgModeler. This way, 0.9.3 development will be more focused on improvements of what already exists than the creation of new features. Of course, this will not prevent that some new functionality on the tool can be implemented, they will be just less prioritized. This release brings some requests related to database model design, which includes, bulk objects' renaming, multiselection on object finder and model objects widget and the introduction of the objects' Z-stack handling, a.k.a, "send to back" and "bring to front". Several bugs were fixed which were mainly related to reverse engineering and diff processes, but some other small bug fixes were provided over all parts of the tool. There were some important changes too, many of them related to code refactoring that the users will not notice but will improve code maintenance since it reflects on fast response on bug fixes and new features. The deployment processes were improved too, the code now compiles without problems in Qt 5.14.x as well in previous Qt versions. Additionally, the installers were almost all rewritten in order to provide a better experience for users who depend on binary packages. More details on the full post!
This is the end of a long development cycle that started still in May 2018 when the stable 0.9.1 was released. Composed by 84 new features, 134 fixes, and 146 changes in total this last development iteration was intended to be just a fine-tuning of what was constructed in alpha and beta versions including only a new relevant feature which allows one to generate data dictionaries in HTML format from database models. The mentioned feature was a request from many users that needed an extra form of documenting their databases. The data dictionary generation feature is still considered experimental despite being a relatively simple functionality. So, there is always room for improvement. Additionally, this launch marks a new advance of this project: the introduction of the first third-party plugin. I'll explain everything in the full post. Don't miss it!
The development of this new version was strongly focused on delivering the support to foreign table objects. This way pgModeler is now capable of handling all foreign objects implemented by PostgreSQL. There was other important improvements including the support to diff presets which lets the user to configure a set of options enabled/disabled for the diff operations. Due to the release of PostgreSQL 12 some patches were applied to pgModeler in order to allow the users to connect to database servers of that version. This will allow all operations that depends on connections like export, diff, import to be performed on newer versions of PostgreSQL. Finally, lots of bugs were fixed too including crashes, false-positive results on diff feature and some problems on reverse engineering that was causing some kind of objects to be imported wrongly. All key changes of the release are fully detailed in this post. Keep reading!
This release brings a few improvements as we're starting to deaccelarate the development of new features and concentrating on minor changes and bug fixes until the stable 0.9.2 is done. The main focus was to improve the data manipulation form, fix some small UI problems and bugs detected previously on 0.9.2-beta. There were fixes on the file saving procedure as well to the diff process when dealing with timestamptz columns and minor changes to a small set of feature in the design view. See details in the full post!