PyroCMS 3.5-beta2

Ryan Thompson Releases


We have tagged our last beta for PyroCMS v3.5! A few small features, some performance improvements, and critical bug fixes included.

Try it out!

composer create-project pyrocms/pyrocms:3.5.x-dev

Be sure to run migrations and copy over the slight changes in composer.json as described here: https://pyrocms.com/help/developer-tools/cheatsheets/upgrading

Performance

The htmlcompress tag performance has been DRASTICALLY improved thanks to the work of @zvineyard. The tag is again included in the default layout scaffolding when creating themes.

We've improved the .htaccess box to improve out of the box speed testing and performance.

We've added a watch flag to the Asset class to easier control cache busting: https://github.com/anomalylabs/streams-platform/blob/1.4/resources/stubs/addons/resources/views/partials/metadata.twig#L43 When a forced non-cache request (hold shift while reloading for example) is made the flagged directory will be quickly scanned for newest file and the timestamp compared to the cache output file. This effectively makes LIVE_ASSETS obsolete though it has not yet been deprecated.

We have improved the Image manager with an inline method that leverages base64 encoded URIs.

The Accelerant admin theme has been updated to include it's assets inline rather than as separate requests.

We've improved versioning performance.

Features

Select and Checkboxes field types now support separator configuration. The separator has traditionally been forced to : when defining key: value options. This poses a problem if, say, you want to provide time options since time include the separator. You can now configure the separator to any character you like.

We've added a few settings in Settings > System > General for forcing SSL and normalizing the domain. Yes, we know this can be done with .htaccess however in restricted hosting environments and in multisite environments this just makes things easier. Just like other settings they can be locked with .env values as well.

The Redirects module has been bumped to v2.2 and now supports redirecting domains as well as paths.

Note: While realizing beta1 is not the best time for these features, client demand and uncertainty of a future v3.6 (see below regarding v3.6 vs v4.0) made the decision easier.

Bug Fixes

We fixed a bug with versioning that caused duplicate versions to be saved when entries are first created.

We also fixed a bug with versioning where deep nested relations such as blocks in blocks (or grids) would not trigger versioning to occur.

Going Forward

The 3.5 addon set and streams platform (1.4) is now in feature lock. I expect this to be a very short beta period as we've been using it in heavy development for a while. Final release soon!

I am unsure as to whether there will be a 3.6 or if we'll skip to 4.0. There a lot of crucial core changes to the platform regarding performance and many larger UI additions and changes to be done as well. I don't know if I can do a 3.6 version considering BC policy at this point. In general 3.6/4.0 will focus on large admin theme improvements allowing addons to leverage more complex UI tools. Most of this has been driven by the popularity of Grids and Blocks. Firstly though the next version will be about flat out performance. How and where I break things will lead to whether I can do a 3.6 or will have to jump to 4.0. The next MAJOR future release will also coincide with an all new documentation area and other site improvements.

I am working on a more grainular roadmap for the time being to share and get everyone on the same page!

- Ryan