I am very pleased to announce the release of glFusion v1.6.5. Another milestone in our evolution and quest for stability with style! This release continues our focus on security, bug remediation and stability improvements. Many of the updates were driven by community input and as always, we really appreciate our users and their feedback. It is highly recommended that everyone upgrade their existing installation to the latest version.
glFuison has long used the excellent phpMailer library to handle sending mail in glFusion. Recently, there were several security vulnerabilities identified in phpMailer. Fortunately, these issues did not have a large impact on glFusion since glFusion filters all user supplied input prior to calling phpMailer. Regardless, we have upgraded phpMailer to the latest upstream version which includes all security patches. We've also enhanced the security controls and protections around mailing features as an extra layer of defense.
It just wouldn't be right to do a release without bringing some new or enhanced capabilities to our users. Below is a summary of the new and enhanced capabilities included in this release.
There is a new character counter that now appears on most text input fields so you know how many characters you can enter and how many you have left. Thanks to Buddilla for doing all the heavy lifting on this one!
Improved 404 - Page Not Found Handling
Sometimes folks reference something on your site that is no longer there, or possibly never existed in the first place. This happens from time to time as things move within a web site. To help you better manage missing pages, glFusion now logs all pages that result in a 404 - Not Found error. This can help you better manage your site by reviewing the logs and fixing the missing page / data.
glFusion v1.6.5 also includes the ability for you to create a custom 404 - Not Found page using a Static Page. This is a quick and easy way for you to create a unique and informational page to be displayed when content is not found.
For full details on how to setup and manage 404 - Not Found issues, please refer to the 404 - Not Found Handling documentation.
In previous versions of glFusion, you needed to manually edit the siteconfig.php file to enable some debug options. This just wasn't as convenient as we thought it should be. With this release, you can now turn on / off debugging in the Online Configuration for the following options:
- Root Debug - this forces very detailed error messages for all error - this should not be left on long term on production systems
- Debug OAuth - this provides very detailed logging of the remote authentication process and can be very useful when diagnosing issues with Remote Authentication
- HTML Filter Debugging - glFusion filters user supplied input to ensure that both safe and properly formed HTML is entered. glFusion uses a 'whitelist' approach where you configure what is allowed and the rest is removed. Sometimes it is helpful to see exactly what the filter is doing, enabling HTML Filter Debugging will provide detailed log messages on what is removed and why.
There is now a global configuration option to open external links from the Forum Plugin, signatures, etc. in a new window. This is very useful in ensuring that your users will stay on your site while still being able to browse links from your site that navigate to their sites. This new setting is located under Configuration -> Miscellaneous -> External Links in New Window.
Mass Story Move
glFusion can now move all stories from one topic to another. We've found over time, you may want to do some housekeeping or re-organization of your stories and moving items one by one from an old topic to a new one is very tedious. Under the Global Story Editor, you can now choose to move all stories to a new topic in one simple action.
Improved Plugin Upgrade
There are a few plugins that allow you to customize where the public directory resides. The DokuWiki Integration Plugin is an excellent example of this. The DokuWiki plugin allows you to specify a new location other than the default /dokuwiki/ directory for the public_html files. For example, here at glFusion.org, we use /wiki/ as the directory to hold our DokuWiki public files. The problem has always been when doing a DokuWiki Integration Plugin upgrade, you had to manually FTP the files to the custom location, the plugin installer / upgrade system did not know about the new custom directory. With glFusion v1.6.5, we've added the ability for glFusion to ask the plugin if there is a custom directory during the upgrade and use it to move the new files. This allows full use of the glFusion Plugin Administration system to upgrade plugins with custom directories.
Note: The Plugin must also have support for this new feature. The DokuWiki Integration Plugin has been updated to take advantage of this feature. You will still have to manually update DokuWIki by manually moving the files to the custom directory, but after this release and the DokuWiki update, all future updates will be automatic.
Speed & Scalability
Every few releases we spend a considerable amount of effort on profiling how glFusion runs, looking for areas where we can fine tune the code or the database queries to bring improved performance. With this release, we have implemented several code optimizations and database query optimizations to keep glFusion fast and nimble. In some cases, we find we are hitting the database multiple times to get the same information so we'll implement caching to speed things up. Other times we find we're pulling information that isn't used (it happens from time to time with a system that has been around as long as glFusion), so we'll remove the query. Overall, we made several updates this round to keep things humming along at a proper pace.
We have also updated the UIKIT Base Theme, Legacy Theme and Demo Theme to work with glFusion v1.6.5. You can download any of these themes in the Themes Download Area. For details on the theme updates, please check out the Template Changes wiki page for full details.
Forum Plugin Updates
Similar to how a Static Page can become the entire home page of a site, the Forum plugin now has the ability to become the home page of the site. If you select Replace Home Page under the center block options for the Forum plugin, when visitors hit your home page, the Forum Index page will be displayed. This can be very handy for sites whose main focus is a online community focused on collaboration.
Calendar Plugin Updates
The Calendar Plugin was not very mobile friendly, so we've updated the main calendar month view to work much better on smaller screens. We also rearranged the event entry screen to place all required fields grouped together at the top of the form making entry much more convenient.
Bug Fixes and Stability Improvements
One of the primary goals of these incremental releases is to fix bugs and make things work consistently and properly. We have implemented several bug fixes based on community feedback and expanded testing. This includes items such fixing the missing pagination on the Media Gallery index page, adding confirmation for cancel and delete actions in the story editor and static page editor, fixing some Forum text manipulations that did not use UTF-8 safe functions and several other fixes. For full details on all bug fixes and enhancements, please check out the What's New section of the glFusion Wiki.
Speaking of the wiki, we have continued to add new content and refine the glFusion Documentation Wiki over the past several months. We've expanded the Customizing glFusion section with new information on how to make your glFusion driven site your own. We've improved the organization and the format to make it easier to find the information you need. Check it out, we're always looking for feedback on improvements or omissions.
There are some big goals we're working on as we continue to evolve glFusion.
Our framework of choice, UIKIT, has release a beta version of UIKIT v3 which brings some major changes and capabilities. Buddilla is busy working on migrating all the templates to UIKIT v3. We'll be assessing its new capabilities as well to see where we can drive more value into glFusion.
glFusion v2 (or next generation or some other cool name) is still taking shape. This effort will drive some major changes to the glFusion code base, specifically moving to a more object oriented approach, looking at improved template handling and improved plugin integration. This effort will be a very long journey as I expect it will cause us to rewrite almost 100% of the code base.
glFusion v1.x will continue to stay very active as we continue to push bug fixes and small feature enhancements out to the glFusion community.
Remember, we strive to make glFusion a community driven tool - we welcome everyone's input. Check out the Get Involved page for details on how you can get involved with the glFusion community. Drop by our Gitter Room and say hello or jump into the discussions on the next cool thing. We welcome your involvement and appreciate everything you do!
Mark, on behalf of the glFusion Community