A week of symfony #34 (20->26 August 2007)

Symfony core refactorization accelerates as symfony 1.1 release approaches. This week, the routing system, the response object and the request object have been completely refactored.

Development mailing list

Development highlights

  • r4883: fixed fillInFormFilter can't find form with content_type = xml
  • r4885: removed sfActionStack::(g|s)etViewInstance methods and sfContext::getCurrentViewInstance() and replaced them with a 'view_instance' object stored in sfContext (this removes the dependency between the action stack and the view sub-system)
  • r4886: removed sfLogManager class and moved code to sfLogRotateTask
  • r4887: fixed some coding standards
  • r4890: refactored storage sub-framework (removed sfContext, sfConfig and sfDatabaseManager dependencies, added a new sfNoStorage to be able to disable sessions, added a new sfDatabaseStorage abstract class for all database based session storage classes, added unit tests, other fixes)
  • r4892: refactored routing
    • removed sfContext and sfConfig dependencies (the first parameter of sfRouting::initialize() is now an optional logger)
    • added sfPathInfoRouting
    • fixed sfNoRouting
    • added sfRouting::setDefaultParameter() and sfRouting::setDefaultParameters() (replaces the sfConfig::get('sf_routing_defaults') hack)
    • rewrote sfPatternRouting::getCurrentInternalUri() (and added unit tests)
    • added sfPatternRouting::setDefaultSuffix()
    • loading routing.yml in sfPatternRouting is optional (via the "load_configuration" parameter which is false by default)
    • added sfWebRequest::getGetParameters(), getPostParameters() and getRoutingParameters()
  • r4894: fixed routing default suffix + moved load_configuration parameter to factories.yml
  • r4895: refactored request and response classes
    • removed sfContext dependency for sfRequest (optional takes a logger and a routing object)
    • removed sfContext dependency for sfResponse (optional takes a logger object)
    • changed sfWebRequest::getError() to return non internationalized data (form_error() still returns internationalized data)
    • changed sfWebResponse::addMeta() to return non internationalized data (include_metas() still returns internationalized data)
    • removed the shutdown() method from request and response classes
    • added a way to remove a meta or http meta from the response (just set the value to null)
  • r4898: sfViewParameterHolder tweaks (removed sfConfig dependency, fixed some phpdoc, fixed serialization / unserialization, added unit tests for sfViewParameterHolder and sfEscapedViewParameterHolder)
  • r4905: fixed dumping Propel data to multiple files
  • Updated dwhittle branch
  • ...and many other changes

Development digest: 27 changesets, 16 defects created, 3 defects closed, 8 enhancements created, 1 documentation defect created and 29 documentation edits.

Book and documentation

Approximate status of book translations: spanish (99%), polish (78%), italian (70%), chinese (26%), russian (26%), brazilian portuguese (15%), french (15%), deutsch (15%), dutch (10%), japanese (-).



  • New plugins
    • sfCssTabsPlugin: generates "Wordpress Admin" like tabs
    • sfPropelZSLSearchPlugin: integrates symfony, Propel, and Zend Search Lucene together to easily add a site search functionality to your application.
    • sfPropelTextOutputBehaviorPlugin: implements methods for XML and JSON output for Propel objects
    • sfTextReplacementPlugin: provides different methods to replace text with anti-aliased images which are generated on-the-fly (based on the article "Dynamic Text Replacement" at http://www.alistapart.com/articles/dynatext)
  • Updated plugins
    • sfThumbnailCachePlugin: added getWidth and getHeight methods
    • sfSimpleBlogPlugin: fixed number of comments displayed in post list, split the configuration into an application-wide and a project-wide file
    • sfSimpleCMSPlugin: fixed non-working default page for sfSimpleCMS module, fixed wrong token name for culture, removed editor CSS from pages in View mode
    • sfPokaYokePlugin: released 0.1.6 version (corrected a spelling error in the config handler)

Some new symfony powered websites

They talked about us

Help the Symfony project!

As with any Open-Source project, contributing code or documentation is the most common way to help, but we also have a wide range of sponsoring opportunities.


The end of August is approaching... it's good to know if we will we be seeing 1.1-RC any time soon?

Comments are closed.

To ensure that comments stay relevant, they are closed for old posts.