XOOPS 2.3.0 Alpha 3 Is Released

The XOOPS Development Team is pleased to announce the release of XOOPS 2.3.0 Alpha 3.

The objective of XOOPS 2.3 releases is to merge the two existent branches of 2.0 and 2.2 and to build a bridge towards our next generation of system XOOPS 3.0.

With XOOPS 2.3 releases, users will be able to learn some of new features that will be available in XOOPS 3.0, while developers can understand better the direction of XOOPS development, and designers can learn what features will be supported in the future.

Both backward and forward compatibility will be guaranteed as much as possible. Modules written for 2.0.* and 2.2.* will work with 2.3; applications developed for 2.3 will be compatible with XOOPS 3.0 automatically.

Developers are encouraged to write their application modules on XOOPS 2.3 so they can incorporate some of the new features and ensure easy migration to XOOPS 3.0.

One of the specific improvements coming with Alpha 3 is user experience oriented backend interface enhancement including the introduction of control panel GUI, which allows custom backend interface, e.g. ThAdmin by MusS.

What's New for Developers
-----------------------------------
1 Improved XOOPS ORM by enabling extensible persistable object handler:
- The improved persistable object handler supports almost all common methods for database access and data treatment, so that developers do not need to write their own classes or methods;
- Custom handler is supported. Developers can add their own handler if they want more functionality or to replace XOOPS native handlers.
2 Improved text sanitizer:
- Custom extension is supported. Developers can add new filters or methods to sanitizer based on their specific needs.
- Built-in extensions, which can be disabled or enabled (e.g. for Flash, YouTube, images, Wiki, syntax highlight, text filter, etc.)
- Combined with improved persistable object handler (see above), text input from users will be filtered automatically for security considerations.
3 Custom Frameworks support:
- Module developers can add their own library or frameworks (located in XOOPS_ROOT_PATH/Frameworks) which can be shared by other modules.
- PEAR, Geshi have been provided as custom libraries in Frameworks.
- Once the code inside Frameworks is proven stable and valuable, they will be adopted by XOOPS core and moved into XOOPS core package. This way we can build a standard, efficient channel for third-party developers to contribute.
4 XOOPS editor packages are now supported officially:
- A XoopsEditor handler is built to accept third-party editors;
- Three editors, including Textarea, Dhtmltextarea, and Extended Dhtmltextarea are provided in XOOPS core. FCKeditor, TinyMCE, Koivi are now provided as third-party add-ons.
5 XOOPS CAPTCHA is built into XOOPS core:
- CAPTCHA has been added to registration and comment forms.
- Module developers can add CAPTCHA very easily to their applications.
6 XOOPS Control Panel GUI is introduced:
- Old administration interface has been kept as legacy
- A new interface is designed, although very rough at this stage
- Custom interfaces are allowed, ThAdmin by MusS and Kris is the first one introduced
7 XOOPS file and folder engine is added, based on CakePHP.
8 XOOPS Cache engine is built based on CakePHP.
9 Some other improvements and new resources:
- XoopsLocal for localization;
- XoopsLoad emulating SPL autoload in PHP5;
- XoopsUtility as a collection for miscellaneous methods used by XOOPS;
- Block clone feature is activated to save module developers' efforts;
- Enabled character set and collation support for MySQL 4.1+;
- Upgraded Smarty to 2.6.19;
- Upgraded phpmailer to 2.0.0;
- Added XOOPS datafile and library folders for forward compatibility with XOOPS 3.0;
- Added XOOPS_TRUST_PATH for compatibility with some modules, e.g. protector
10 For more changes, please check changelog.txt
What's New for Theme/Template developers
-----------------------------------
1 Rel attribute for anchors is now supported. Developers/designers are encouraged to use (X)HTML compliant "rel" attribute instead of "target".
2 Control Panel GUI handler is introduced thus designers now get the power to make beautiful backend interfaces.
What's New for Users
-----------------------------------
So far the 2.3.0 Alpha does not give user many new features although it has great potential of adding new features very easily.
Some of the new features that might interest users:
- Default character set encoding has been changed to UTF-8;
- Enabled "auto login" or "remember me";
- CAPTCHA is enabled for registration and comment system;
- Block clone enabled so that webmasters have more flexibility;
- XOOPS editor package is provided and most visual editors are avilable, e.g. FCKeditor, TinyMCE, etc.;
- Mask is added for start page;
- Implemented new installer with user experience improvement experiments
What's Next
-----------------------------------
- XOOPS Design Team will continue to improve themes and Control Panel interface which is not completed yet
- Developers will collect feedback and make the package stable as soon as possible
- Modules and add-ons will be taken care, e.g. profile module, PM module, frameworks, etc.
System requirements
-----------------------------------
PHP
Any PHP version >= 4.3 (PHP 4.2.x may work but is not officially supported)
MySQL
MySQL server 3.23+
Web server
Any server supporting the required PHP version (Apache highly recommended)
Downloading XOOPS 2.3 Alpha
-----------------------------------
Your can get this release package from the sourceforge.net file repository.
Both .zip and .gz archives are provided.
Installing XOOPS 2.3 Alpha
-----------------------------------
1. Copy the content of the htdocs/ folder where it can be accessed by your server
2. Ensure mainfile.php and uploads/ are writable by the web server
3. For security considerations, you are encouraged to move directories xoops_lib (for XOOPS libraries) and xoops_data (for XOOPS data) out of document root, or even change the folder names.
4. Make the directory of xoops_data/ writable; Create and make the directories of xoops_data/caches/, xoops_data/caches/xoops_cache/, xoops_data/caches/smarty_cache/ and xoops_data/caches/smarty_compile/ writable.
5. Access the folder where you installed the htdocs/ files using your web browser to launch the installation wizard
Upgrading from a previous version
-----------------------------------
Upgrading from XOOPS 2.0.* above 2.0.14 (using the full package)
1. Move the "upgrade" folder inside the "htdocs" folder (it's been kept out as it's not needed for full installs) on your local machine
2. Delete htdocs/mainfile.php, htdocs/install/, htdocs/cache/, htdocs/extras/, htdocs/template_c/, htdocs/themes/ and htdocs/uploads/ from the "htdocs" folder on your LOCAL machine
3. Upload the content of the htdocs folder on your LOCAL machine over your existing files on your server
4. For security considerations, you are encouraged to move directories xoops_lib (for XOOPS libraries) and xoops_data (for XOOPS data) out of document root, or even change the folder names.
5. Make the directory of xoops_data/ writable; Create and make the directories of xoops_data/caches/, xoops_data/caches/xoops_cache/, xoops_data/caches/smarty_cache/ and xoops_data/caches/smarty_compile/ writable.
6. Access /upgrade/ with a browser, and follow the instructions
7. Follow the instructions to update your database
8. Delete the upgrade folder from your server
Upgrading from any XOOPS ranging from 2.0.7 to 2.0.13.2 (using the full package):
1. Move the "upgrade" folder inside the "htdocs" folder (it's been kept out as it's not needed for full installs) on your LOCAL machine
2. Delete htdocs/mainfile.php, htdocs/install/, htdocs/cache/, htdocs/extras/, htdocs/template_c/, htdocs/themes/ and htdocs/uploads/ from the "htdocs" folder on your LOCAL machine
3. Upload the content of the htdocs folder on your LOCAL machine over your existing files on your server
4. Delete the following folders and files from your server (they belong to an old version):
* class/smarty/core
* class/smarty/plugins/resource.db.php
5. Ensure the server can write to mainfile.php
6. For security considerations, you are encouraged to move directories xoops_lib (for XOOPS libraries) and xoops_data (for XOOPS data) out of document root, or even change the folder names.
7. Make the directory of xoops_data/ writable; Create and make the directories of xoops_data/caches/, xoops_data/caches/xoops_cache/, xoops_data/caches/smarty_cache/ and xoops_data/caches/smarty_compile/ writable.
8. Access /upgrade/ with a browser, and follow the instructions
9. Write-protect mainfile.php again
10. Delete the upgrade folder from your server
11. Update the "system" module from the modules administration interface
Upgrading from XOOPS 2.2.* (using the full package)
To be available in the next release.
Files integrity check
-----------------------------------
The full XOOPS package is released with a script able to check if all the system files have been correctly uploaded to the server. To use it, follow these instructions:
1. Upload the checksum.php and checksum.md5 files located in the XOOPS package root to your XOOPS server folder (putting them next to mainfile.php).
2. Execute checksum.php with your browser
3. If necessary, re-upload the missing or corrupted system files
4. Remove checksum.php and checksum.md5 from your server
Revealing the blank page backtrace log
-----------------------------------
XOOPS displays a basic error page when a fatal error preventing it to run is encountered. To help you diagnose the cause of the error, this page contains additional messages that are hidden by default. To reveal them, use your browser "select all" function (for most browsers, you can use "Ctrl+A").
Modules
-----------------------------------
The packages do not contain any module apart from the system one. You are invited to browse the XOOPS modules repository to get some. Note: as a new repository is being built, the current repository is not up-to-date, PLEASE VISIT DEVELOPERS' WEBSITES TO MAKE SURE YOU ARE USING LATEST VERSION OF MODULES.
We also highly recommend the installation of the Protector module which will bring additional protection and logging capabilities to your site.
Exciting news: more developers become active and new developers join the development team recently and more features and modules are coming with XOOPS 2.3.0 beta releases.
How to contribute
-----------------------------------
Bug report: http://sourceforge.net/tracker/?group_id=41586&atid=430840
Patch and enhancement: http://sourceforge.net/tracker/?group_id=41586&atid=430842
Feature design: http://sourceforge.net/tracker/?group_id=41586&atid=430843
Release announcement: https://lists.sourceforge.net/lists/listinfo/xoops-announcement
XOOPS Development Team