Solar 0.15.0 alpha released

Yesterday, I uploaded the first non-development (!) release of Solar, version 0.15.0 alpha. I know, “alpha” is only slightly less change-prone than “devel”, but it’s a move forward and it makes me happy. πŸ™‚

You can see the change notes here, but the major updates are:

  • Solar_Uri has been refactored to be much easier to use, from 16 methods down to 5, with better “action” and “public” support, and it works with mod_rewrite now. (N.b.: Jeff Surgeson noted an issue earlier today with non-mod_rewrite subdirectories, but I’ve committed a fix and will roll 0.15.1 later today.)
  • Solar_User_Auth now calls session_regenerate_id() on all status changes, and calls to session_start() are no longer silenced.
  • Solar_Filter method names have been made consistent with each other.

Speaking of Solar_Filter, it probably bears comparison with Zend_Filter and Zend_InputFilter, seeing as they were recently reviewed at SitePoint. Solar actually has two separate classes for these functions: Solar_Valid, to check if input matches a particular format, and Solar_Filter, to force input to match a particular format. (Solar_Filter was contributed by Matthew Weier O’Phinney some months ago; thanks, Matthew.)

After Solar 0.15.1 has been out the door a couple more days, I’ll be ready to start *adding* functionality instead of adjusting (and breaking, and re-fixing πŸ˜‰ existing functionality. High on the list of new functions will be:

  • a Solar_User_Access class for standardized application-level access control,
  • integration of the Dojo Toolkit for animations and effects (especially on forms),
  • and a new Solar_App_Todo application (for to-do lists, obviously).

I’ll be adding more narrative documentation, and perhaps start blogging about usage, as part of future efforts as well.

UPDATE (12:25 CST) — Just released Solar 0.15.1 with the subdirectory/mod_rewrite fix.

Are you stuck with a legacy PHP application? You should buy my book because it gives you a step-by-step guide to improving your codebase, all while keeping it running the whole time.

4 thoughts on “Solar 0.15.0 alpha released

  1. Hi Chris — I think it was you or Ilia (or perhaps you linking to Ilia) that prompted me to add it. So “thanks” all around. πŸ™‚

  2. Notice that you have 0.15.1 for download… that was quick!

    I was looking at the Solar_Uri class. You attempt to make an educated guess about whether or not mod_rewrite is installed. Couldn’t you do something like this…?

    if( in_array( ‘mod_rewrite’, apache_get_modules() ) ) {
    //Houston, we have rewrite!
    }

  3. Hi David —

    I didn’t know that function existed; I swear, PHP has fricking *everything.*

    But looking at that function now, it only tells you is mod_rewrite is loaded; it doesn’t say if the current URI was passwed through mod_rewrite to the current script.

    So it looks like there still needs to be a little guesswork at the Solar_Uri level, based on the $config[‘Solar_Uri(_Action|_Public)’][‘path’] value, as to whether or not mod_rewrite actually applies to the current page load. (Does that make sense?)

Leave a Reply

Your email address will not be published. Required fields are marked *