As with all software, there are different development versions with Joomla!. The Joomla! team published a roadmap on September 1, 2005 and started with the Joomla! version 1.0, which is also with what this book concerns itself.
The first Joomla! version received the number 1.0, in order to not be confused with existing Mambo versions. Version 1.0 is a revised version of the last Mambo version, 184.108.40.206. The revisions relate to the changed name, known errors, and security patches.
Joomla! Versions abide by the X.Y.Z system.
- X = major release number: It is incremented whenever profound changes are made at the source-code level. The version with the higher number sometimes is not compatible with earlier versions.
- Y = the minor release number: It is incremented whenever significant changes to functionality are made. The higher version number is usually compatible (with minor customizing) with earlier versions.
- Z = the maintenance release number: It is incremented whenever errors are repaired and safety gaps are plugged. An increase of this number indicates only minor changes and very minor new features. These versions are fully compatible with the versions of the same X and Y number.
- Full release: This is a change in the X and Y numbers. With these, alpha and beta test periods are given. The length of the test periods is not fixed and is at the discretion of the development team. Beta versions should be available for testing for at least three weeks in order to give component developers the chance to customize their components.
- Maintenance release: This can be used immediately.
This roadmap can, of course, change at any time. It does, however, represent a good framework for orientation.
- Rights enhancements—part 1: The option of adding and of modifying user groups is to be added. The administrator will have the capability of assigning individual authorizations to every group. Thus for example, group A may change the template of a page, group B, however, may not.
- Rights enhancements—part 2: Access rights on an object level are to be made possible. Thus, for example, a category may only be viewed by group A, but may be modified by group B.
- WCAG priority 1-compatibility: Barrier freedom is an important topic. The W3C has set up standards for this that have to be observed starting with Joomla! version 1.2 (see also Chapter 6). These standards are to be attained by the complete separation of the HTML code from the business logic in the underlying programs.
- Google Summer of Code Projects: In 2005 Google supported talented students and their ideas with certain Open Source projects with $4,500 each. The results of these projects will be gradually integrated into Joomla!. These projects include, among others:
- Access to Joomla!'s file system by means of a defined interface from other programs
- A system to pick up and install updates
- Content version control, in order to be able to backtrack the modifications in business applications
- Speed optimization of Joomla!
The following lists a few Joomla! features:
- Free source code
- Simple workflow system
- Caching mechanism to secure fast page creation with favorite pages
- Wastepaper basket
- Banner management
- Data manager for uploading and administering data
- Publication system for content
- Content summaries in RSS format
- Search-engine-friendly URLs
- Multilingual front end
- Macro language for data content (Mambots)
- Administration interface that is separated from the homepage
- Simple, expandable template, and component system
- Simple, but powerful template system (HTML, CSS, PHP) without a complicated template language
- Hierarchical user groups
- Simple visitor statistics
- WYSIWYG editor for content
- Simple polling
- System of evaluation for contents
- Free extensions at www.mamboforge.net
- After the split, a large and eager community of users and developers was quickly established