[Solar-talk] Solar 0.19.0 released
Paul M Jones
pmjones at solarphp.com
Thu May 25 06:24:00 PDT 2006
I failed to note the biggest change: we have moved from the LGPL to
BSD licensing.
-- pmj
On May 24, 2006, at 9:02 PM, Paul M Jones wrote:
> Hi everyone,
>
> I just released Solar 0.19.0; you can get it from the usual source.
> The big additions in this release are project-support related.
>
> The Solar_Docs_Apiref class will read an entire Solar-style file
> hierarchy and parse the inline documentation into an array; you can
> then build a writer of your own to take that array and generate
> documentation files from it. (This is how I build the API reference
> documentation for the Solar web site.)
>
> The related Solar_Docs_Phpdoc class will parse a PHPDoc comment block
> into its summary, narrative, and technical portions. While nowhere
> near as robust as Greg Beaver's PHPDocumentor, I think the internals
> of Solar_Docs_Phpdoc are much easier to understand. It doesn't
> support inline tags, but most of the important block tags are
> recognized and parsed appropriately (@var, @param, @return, @throws,
> etc).
>
> Solar_Docs_Apiref also makes use of the new Solar_Class_Map, which
> parses a Solar-style file hierarchy and returns an array of class-
> name keys with file-name values.
>
> There is a new Solar_Log class, with adapters for file-based logging
> (good for production), echo-based logging (good for development), and
> multiple log support.
>
> There's one big change in Solar_View: instead of custom helper
> locations being defined by paths, they are now defined by class
> names. This means your custom helpers no longer need to be named
> 'Solar_View_Helper_*'; you can now name them as is proper for their
> location in the file system. For example, if your helper classes are
> in the "Vendor/App/Helper/*" directory, you now name each helper
> class "Vendor_App_Helper_*". This makes helper class names
> consistent with the rest of Solar.
>
> In line with this, you no longer use Solar_View::addHelperPath(),
> getHelperPath(), or setHelperPath(); instead, you addHelperClass(),
> getHelperClass(), and setHelperClass(). The class-based methods work
> just the same as the path-based methods, except you specify class
> name prefixes instead of path prefixes. For example, if you used to
> "addHelperPath('Vendor/App/Helper')", you would now "addHelperClass
> ('Vendor_App_Helper')". Then helpers of that class will be used
> before the Solar_View_Helper classes are used.
>
> Also in line with this, the Solar_View 'helper_path' config key has
> been renamed 'helper_class', and a new Solar_Controller_Page config
> key 'helper_class' has been added so that page controllers know where
> helpers are (this is to support view helpers attached to layouts).
>
> Finally, Solar_Test_Suite usage has changed a bit. Instead of
> setting a 'sub' key to specify that you want to run a sub-series of
> class tests, you specify that same value when calling
> Solar_Test_Suite::run($sub).
>
> As usual, please review the change notes for fuller descriptions.
>
>
> Future Plans
> ------------
>
> The next release will concentrate on feature requests, and (sorry!)
> another class reorganization so as to be more consistent with pattern-
> based names, and to reduce the depth of some parts of the hierarchy.
>
> None of the reorganizational changes should require more than a
> simple search-and-replace on the existing code base when complete.
> For example, Solar_Sql_Driver will become Solar_Sql_Adapter,
> Solar_Cache_File will become Solar_Cache_Adapter_File, and so on.
>
> The User subclasses (Auth, Role, Access) will come to the top of the
> hierarchy, so Solar_User_Auth will become Solar_Auth, and the
> Solar_User_Auth_Driver files will become Solar_Auth_Adapter files.
>
> There are other change ideas too; you can see those in the todo file
> here:
>
> http://solarphp.com/svn/todo/todo.txt
>
>
> As always, if there are questions, comments, or concerns, please let
> me know at your convenience, and thank you for using Solar.
>
>
> -- pmj
> _______________________________________________
> solar-talk mailing list
> solar-talk at lists.solarphp.com
> http://mail.killersoft.com/mailman/listinfo/solar-talk
--
Paul M. Jones <http://paul-m-jones.com>
Solar: Simple Object Library and Application Repository
for PHP5. <http://solarphp.com>
Savant: The simple, elegant, and powerful solution for
templates in PHP. <http://phpsavant.com>
More information about the solar-talk
mailing list