Yeah, that's it... pgModeler 1.0.0-beta1 is finally here! This is the last beta release and I hope to start working on the stable 1.0.0 very, very soon! My main concern when working on this version was to make the codebase even more compatible with Qt 6 while fine-tuning some other portions of the UI. I'll avoid detailing here to make this post a bit less extensive, so if you're curious, you can check the 209 changelog lines or navigate through almost one thousand commits at GitHub! :D
Well, the first improvement to mention is the new implementation of the CSV parsing routine. Since the previous code to handle this kind of file was pretty complex and not so effective I decided to rewrite it from scratch using as a reference nothing less than the RFC 4180 which details how a CSV must be constructed. That move made a great difference in the loading speed as well as the reliability when working with CSV because pgModeler is now capable of parsing files generated by third-party software easily which improves the interoperability tools, and, consequently, the users' productivity.
Another change in 1.0.0-beta1 was the redesign of the light theme to make it fully light (see the image) compared to the same theme in previous alpha and beta releases, thus, you'll not notice a single dark element when using this theme. Still related to themes, a patch was applied in the loading routine and now pgModeler doesn't change randomly the theme color while the user previews the selected one in the appearance configuration. This bug was affecting the Windows and macOS ports of the tool.
In the design view, the magnifier tool received a dedicated action in the top actions bar which can be triggered with
F9 when the zoom factor is less than 100% (see below). Also, a bug that was causing the resetting of the fade-out state of the objects was fixed and now using the object finder widget or undoing/redoing operations over the database model will preserve the fade status of the objects.
Finally, there were some bug fixes in the database import process related to operators and functions having parameters composed of user-defined types arrays. This patch also affects the diff which depends on the reverse engineering, so both operations will now perform as expected in the mentioned situations.
Let's support this project!?
If you like the work that is being made to create a quality database design tool, please become our sponsor on GitHub. Any open source project needs financial support to keep the development alive, and this is not different with pgModeler. Go ahead, be a supporter in one of the offered sponsor tiers and receive rewards for being a friend of an open source project! :D
In addition to GitHub Sponsors, there's an active campaign whose goal is to acquire a new Mac Mini with the new M1 chip. So, if you are a macOS user and think pgModeler can be improved in that platform, please, consider supporting this campaign! ;)
What comes next?
Well, to be honest, I think pgModeler is ready for production, but just to be a little more cautious I want to work on a new development cycle. This time, aiming for the long-awaited 1.0.0 stable, I plan to work exclusively on bugfixes as well as start to create premium features that will be distributed with paid versions of pgModeler as explained here.
That's all! Please, don't forget to let your comments in the below section, and remember that bugs and feature requests can be issued on GitHub. Also, to keep up-to-date with all the project's news, follow us on Twitter or join the telegram channel @pgmodeler.
See you next time! :)