v37.3.0 – CakePHP 3.6 Preparations

October 26, 2018

 Summary

The release of Qobrix v37.3.0 brings a variety of changes to prepare Qobrix for the CakePHP 3.6 upgrade.  It also improves Dynamic Templates, Duplicates, and a few other features.

Overview

CakePHP 3.6 Preparations

As mentioned earlier, we are working towards the upgrade of the Qobrix to CakePHP 3.6, with a later upgrade to CakePHP 4.  In this version we have merged all changes and updates from the CakePHP App Skeleton all the way to version 3.5.1.  Some of the composer dependencies were upgraded, reorganized, and moved to our CakePHP Utils plugin.  We have also adjusted the version requirements to make it easier to switch between CakePHP v3.5 and v3.6.  This allows us more control as to what is getting deployed to production, while allowing developers to work on the newer versions compatibility issues.  Additionally, we have continued the work on the issues identified by PHPStan static code analyzer.  These are always good fixes that make Qobrix more stable and reliable.

Dynamic Templates

Dynamic Templates functionality received a variety of fixes and improvements in this release.  In particular, the following:

  • Much improved export to PDF
  • A new layout for listing of the available templates
  • A fix for the issue with deleting old templates.

Duplicates Management

Qobrix v37.3.0 brings additional improvements to the Duplicates Management functionality.  Now, when deleting or merging the duplicate records, most of the related records will be reattached to the original record, before the duplicate is removed.  We’ve also significantly improved the test code coverage and fixed some of the edge cases.

Miscellaneous

As always, there were many other changes and improvements throughout the system in this release.  Some of these are:

  • Code cleanup.  We have removed some obsolete and no longer used chunks of code, in particular, around the Menu management and related tabs.
  • Scheduled Jobs.  Fixed some of the issues around job exit status codes, and possible infinite job runs.
  • Documentation.  Significant improvements to the code documentation everywhere.

Component Updates