What's new in BigTree 4.4 -- and what's to come!
Back to BlogWe're happy to announce the latest major release of BigTree is coming this week— much more quickly than the long wait between 4.2 and 4.3!
We're happy to announce the latest major release of BigTree is coming this week— much more quickly than the long wait between 4.2 and 4.3!
The BigTree 4.4 release will serve as the long term support release of BigTree 4 as we prepare the road for BigTree 5. Almost two years ago we wrote about the first plans for BigTree 5 and almost all of those plans remain the same with the exception of BigTree 4.2 being the long term supported version. We believe BigTree 4.4 provides a much more firm foundation for long term support of sites on BigTree 4. Without further delay, here's what's new in BigTree 4.4:
The largest change, by far, to BigTree 4.4 is that site configuration is largely moved out of the database and into JSON storage. This allows for easily porting your new modules, templates, callouts, settings, and more from your development and staging environments to production. After upgrading a site to BigTree 4.4 you will see a new directory created within /custom/ with the name "json-db/". Within that directory, your configuration will be stored and is able to be version controlled through git or your preferred version control software. Along with this new storage, you will see the following tables removed from your database:
In addition to the removal of the above tables, bigtree_settings will be dramatically modified to be changed from a table that stores site-specific configuration to only store the values of the settings. Other tables that contain environment specific data such as bigtree_pages and bigtree_resources remain unchanged. In the event of a failed upgrade, the tables that are being destructively modified will be backed up in your /cache/ directory as "backup-4.3.sql".
As a side effect of the change in storage of configuration, some extensions (such as Reusable Callouts) will need to be upgraded to function in BigTree 4.4. Any extension or custom code that modified or read those tables directly will need to be adjusted. Calls to existing methods in BigTreeAdmin or BigTreeAutoModule classes should remain backwards compatible.
BigTree 4.4 also introduces new hooks for extension developers to tie into, adding many new ways for customizing the BigTree experience in an easy to upgrade and non-code-invasive method. Extensions can implement the following new hooks:
Read more about Hooks in the developer documentation!
BigTree 4.4 brings several popular field type extensions into the core:
BigTree 4.4 also brings in other nice additions such as a CSV importer for 301 redirects, easier navigation of the Dashboard section, improvements to workflow with $bigtree["bar_edit_link"]
redirecting back to the origin page, an indicator to show that a page has children, duplicating pages (that are not top-level) as pending copies, and more!
One important backwards compatibility break is that Packages are no longer supported in BigTree 4.4. The move to JSON for configuration allows fairly easy migration of configuration and it was determined that Packages no longer served enough of a purpose to remain maintained indefinitely.
To see full release notes for BigTree 4.4, click here!