News

Joomla! 3.5 What’s in store for us?

Many users are always looking forward to a new version of their favorite software because it could bring them new shiny things to play with. Many website maintainers are less fond of new versions as they wonder what will break this time round. As a software developing and using community we believe the responsibility is in all our hands and not just of those creating the release. We ask for your active participation in testing all 3.5 pre-releases. This will ensure we can move smoothly to this new version.

Release Leader

The PLT is pleased to announce Roland Dalmulder as the Joomla 3.5 release leader.

The release leader works to encourage contributions for a particular release, drive attention to the patches needing to be tested, and ensuring that the features identified by Joomla on the roadmap for that particular release are addressed by volunteers eager to get involved.

Features

The big question is, what is new in Joomla 3.5? We have the following possible features:

Update emails plugin by Nicholas Dionysopoulos

https://github.com/joomla/joomla-cms/pull/6886

Joomla! issues bug fix and security updates every few weeks. However, many (most?) of its users are completely unaware of this fact unless they log in to the back-end of their site and notice the update nag message at the top. This PR adds a plugin which periodically checks for updated Joomla! versions and, when one is found, emails the Super Users of the site to remind them.

Router improvements by Hannes Papenberg

https://github.com/joomla/joomla-cms/pull/5444

This PR implements a new base class for component routers, which can be used to create rules based routers that are dynamically extendable.

Plugin to gather basic anonymized data as an opt-out feature by Don Gilbert

https://github.com/joomla-extensions/jstats-server

https://github.com/joomla-extensions/jstats-plugin

In order to better understand our install base and end user environments, this plugin has been created to send those stats back to a Joomla controlled central server. No identifying data is captured at any point.

One of stated goals for the last couple of years has been to try to understand our users better. In line with that goal, we want to better understand the sort of environments and platforms that people are using to install and run Joomla. This will enable us to make more informed decisions about which platforms we need to support, minimum version requirements, the pace at which we can encourage people to upgrade, and so on.

In order to gather this information we will be including a new plugin with the Joomla 3.5 release that will automatically gather some very basic data points, noted below. This plugin will be enabled by default, but can be disabled at any point in time. A post-install message will be shown to make site owners aware that the plugin has been installed and will include instructions for disabling it.

The privacy of all Joomla users is important to us and we want to allay any fears that we are collecting personally identifying information. The source code for both the plugin and the server code that gathers the data can be seen in our GitHub repositories https://github.com/joomla-extensions/jstats-server and https://github.com/joomla-extensions/jstats-plugin . The plugin configuration screen will also show exactly what information is being shared by the plugin.

Access to the raw data collected will be restricted. Only statistical results extracted from the data will be published on the developer.joomla.org website. Categories with small numbers of entries will be gathered into an "Other" category. The unique id used to prevent duplicate entries will be carefully generated to ensure that it cannot be used to deduce the identity of any individual site. These measures should ensure that individual websites cannot be identified from the published data.

The plugin will collect anonymously the PHP, Database Type and Version and Joomla Version a user is running so that the project can set PHP and MySQL versions more accurately for future Joomla Versions.

Count items by Peter Martin

https://github.com/joomla/joomla-cms/pull/6916

https://github.com/joomla/joomla-cms/pull/6934

https://github.com/joomla/joomla-cms/pull/6938

https://github.com/joomla/joomla-cms/pull/6936

This PR adds the number of published, unpublished and trashed articles in the Category Manager for the articles, banners, contacts and newsfeeds.

Added site and admin links to Module User Status by Rick Spaan

https://github.com/joomla/joomla-cms/pull/7174

Adds switches to the mod_status module to show/hide links to the frontend and backend of the site.

Ability to add a user CSS file to Protostar by Roland Dalmulder

https://github.com/joomla/joomla-cms/pull/4211

Adds a check to see if the file user.css exists and loads the file to allow user customization.

Download system/environment information by Radek Suski and Roberto Segura

https://github.com/joomla/joomla-cms/pull/7129

Implementing a possibility to download system/environment information for support purposes.

TinyMCE drag and drop images by Dimitris Grammatiko

https://github.com/joomla/joomla-cms/pull/7435

Adds the ability to drag and drop images into the tinyMCE editor that comes with Joomla. This list is not set in stone, more features may be added, and others may be dropped. For a full list of all current changes you can check this page:

https://github.com/joomla/joomla-cms/compare/a3a8cefcfdc5d838397c31518fce749ca4d2ce8b...3.5-dev

Backwards Compatibility break

We have a backwards compatibility promise to make sure code doesn’t suddenly break. However there are circumstances that can force us to no longer keep this promise. In Joomla 3.5 this is the case. Due to changes in PHP 7, we had to rename the String class to StringHelper otherwise Joomla! cannot run on PHP 7. This is a very minor change and we don’t expect any issues from it. For those interested, you can read more about it at Update to String package 1.3.

Timeline

As with anything, we need a timeline as to when all this will happen. The proposed timeline is as follows: