From RNWiki
Revision as of 01:54, 3 October 2009 by Montego (talk | contribs)
Jump to: navigation, search

Home>Release Notes>Release Notes for 2.40.00

RavenNuke™ version 2.40.00 is an exciting new release with several significant improvements as well as the addition into core two modules that were previously add-ons. The focus on this release was primarily around re-fining the new Your Account module that was added as a part of version 2.30.00, the implementation of nukeSEO™ DH, and more security tweaking. Continue reading to find out the details behind the new features, upgrade/compatibility concerns, and more...

This page describes only major changes. For a complete list of changes, see the release Change Log on-line or within the package download.

New Features

nukeSEO™ DH - Dynamic <HEAD>

To really appreciate the full capabilities of this great tool from kguske, one really needs to read the nukeSEO.com overview article entitled What is nukeSEO(tm) DH and how does it work?. In a nut-shell: ever wanted to be able to have your META keywords be automatically generated based upon your page contents, or more importantly, be able to have your META description and page title be automatically generated AND give you the ability to override any of these things on any given page? nukeSEO™ DH is the ticket!

Note: the previous TegoNuke™ Dynamic Titles has been removed from the package. nukeSEO™ DH essentially replaces most of what this previous hack was providing. See the nukeSEO™ DH User Guide for an excellent explanation of the minor differences between these two great tools.

Cross-Site Request Forgery (CSRF) Protection

For an excellent background on this type of attack and how the RavenNuke™ Team has provided protection for it, please see the write-up entitled Cross-Site Request Forgery (CSRF). We are indebted to waraxe for impressing upon us the need to protect key administrative and other form (POST) and link (GET) requests for the community! There are other security holes which have been plugged within this release that were brought to light as well by his thoughtful recommendations; while NukeSentinel™ is instrumental in stopping many of these, it was our duty to correct the code and we will continue to do so.

Dynamic Loading CSS and JS

One of the recognized limitations of the *nuke architecture is the need for add-ons to be able to provide for their own unique JavaScript and CSS code to be added to the core header and footer sections of the page. This usually required manual changes to scripts header.php, includes/javascript.php and/or includes/custom_head.php.

As the use of CSS and JavaScript has become more prevalent, especially since the advent of jQuery and other JavaScript libraries and more advanced uses of CSS for more contemporary features and presentation, the need for standard methods for using these tools without requiring modifications by the site administrator increases. Furthermore, manual changes make upgrades more difficult.

Please see the page on Loading CSS and JavaScript for more detail on how to take advantage of this new capability (and be sure to thank kguske for pulling this together).

Content Plus Moved to Core

This great "addition" to RavenNuke™ comes to us from jestrella of slaytanic.sourceforge.net and is a fantastic replacement for the old stogy PHP-Nuke Content module previously in the package. While this module was already available within version 2.30.00, it was in the AddOns. It was so good, that we just had to make it core! Thanks jestrella.

Some of its great fresh features include (taken from his own website and with a little creative license...lol):

  • Greater, faster, stronger, cuter
  • 100% XHTML 1.0 compliant
  • Users can submit content pages
  • You can set/upload a custom image for categories
  • You can set a featured content for each category
  • You can easily print and/or export pages to PDF format
  • You can share content pages with friends
  • Comes fully integrated into RavenNuke™ with the TegoNuke™ Mailer
  • And much, much more

We are certain that you will like this version much better than the old one.

NukeProject Moved to Core

This module comes to you from BobMarion of NukeScripts™. While everyone within the community and especially the RavenNuke™ Team was sorry to see Bob leave (in up-most high standing!) the community, he has allowed Raven to include this great module within RavenNuke™. If you run a script development site, this module can help you collect enhancement requests and track those requests through their development life-cycle and provide up-to-date status to your community of the development progress.

Simple Blue Theme

A special thanks goes to FloppyDriveZ of www.clanthemes.com for the contribution of this very clean, sharp, table-less CSS-based theme! We hope that you will like it too. Along with RavenIce and CT_RN (another Clan Themes contribution), this rounds out a nice collection of modern CSS-based themes for theme designers and web site administrators to use as good examples for further development.

Advertising Module Improvements

The Advertising Module has been substantially revised in this version from previous versions (thanks fkelly), especially on the administrative side. For a good description of what was done and how the Advertising module works, please see the page entitled Administering the Advertising Module. Even if you do not intend on selling ads on your site, you might want to read this anyways to see other potential uses for this module. ;-)

Other Misc Tweaks

  • Additional language file updates
  • Added Raven's Forums Collapsing Block
  • Added the forum "fixgroup" script to UtilityFiles
  • Legal module now gracefully falls back to English when translations are not available or have issues as well as a document delete confirmation was added
  • Added ability to email to multiple groups with the Edit Groups function
  • Removed the old out-dated ultramode feature (you can remove your ultramode.txt file!)
  • As always, continued to "tweak" in areas of XHTML 1.0 Transitional compliance, removed PHP notices (speeds up request processing), and numerous other small items (getting less and less to find)

Upgrade/Compatibility Concerns

As always, please consult the Upgrades and Migrations Guide for detailed guidance on how to upgrade your site from a previous RavenNuke™ version. There is also guidance there for how to migrate your current non-RavenNuke™ site to RavenNuke™. For those upgrading from version 2.30.xx, here are some things that we thought you should know about what has changed in this release.

Support for MySQL Only

It was decided with this release to drop support for all other database management systems (DBMS) other than MySQL. There are no plans currently to support any other DBMS. For a complete and always current list of supported platforms, please see Resource Requirements Needed.

Old SQL Layer Deprecated but Retained (for now)

The old SQL layer was actually deprecated with the 2.30.00 release as it is very old and was never removed by the original PHP-Nuke author when he added the new DB layer. The intent was to remove it entirely with the 2.40.00 release, but we found that too many themes, modules, etc. were still being used today which used the old layer. We have been encouraging the community of developers and admins to rewrite their programs to use the newer DB layer (the better option for now) based upon guidance in the various Programming Standards/Approaches/Philosophy forums. We still encourage the community to do this as at some point we do need to remove this entirely from the package.

For now, we commented out the include within the mainfile.php script and when some of these older scripts try to call the old layer, a blank white page will result. If you do not have the skills to rewrite your particular script, for now, you may simply uncomment the following two lines of code within mainfile.php and your script should function normally:

//@require_once(INCLUDE_PATH.'includes/sql_layer.php');
//$dbi = sql_connect($dbhost, $dbuname, $dbpass, $dbname);

However, you have been given fair notice that at some point in the future, this will be removed completely from the package! Why remove this? We no longer support nor maintain this code and it will end up creating TWO database connections for every page request rather than just the one. Wasteful you say? Absolutely. ;-)

Release Contributors

Whenever we attempt to recognize people for their contributions to RavenNuke™ for any given release, there is risk of missing some. If we have done so, please be assured that it was not intentional! Each release involves numerous hours of dedication on everything from development, testing, language translation, documentation, installation improvements, utility updates/additions and everything else that was done by long time contributors. This is also not to diminish the contributions of the numerous RavenNuke™ community members within the forums who provide their improvement suggestions, raise bugs/issues, etc., and very important to any Open Source project, financial support through donations, that without YOU, there would be no RavenNuke™!

With that said, the following individuals deserve mention for their considerable dedication to this 2.40.00 release (in alphabetical order):

  • CodyG
  • Dad7732
  • Evaders99
  • FireATST
  • fkelly
  • Guardian2003
  • JakeC
  • jestrella
  • KGuske
  • Montego
  • Palbin
  • Raven (our fearless leader - why he puts up with us is beyond us... lol)
  • Susann

Additional honorable mentions for offering of suggestions and/or providing support in the forums:

  • Dad7732
  • Dawg
  • Eduardo
  • FloppyDrivez
  • GazJ
  • Jlajax
  • NeopolitanWorld
  • nextgen
  • nuken
  • SpasticDonkey
  • Thoth
  • Unit1
  • wHiTeHaT
  • among many, many, many others!

A special thanks is due to the entire RavenNuke™ community for your continued support of this project!

Further Reading