A week of symfony #177 (17->23 May 2010)

Symfony 1.X branch fixed numerous bugs this week and therefore new 1.3/1.4 maintenance versions will be soon released. Meanwhile, Symfony 2.X branch development boosted with lots of fixes and tweaks, including new proof of concept bundles for Twig and Propel.

Development mailing list

Development highlights

Symfony 1.X branch:

  • r29490: [1.3, 1.4] fixed deprecated delete in sfMemcacheCache
  • r29519: [1.3, 1.4] marked response as private when using the sfCacheSessionStorage class
  • r29520: [1.3, 1.4] fixed warnings issued by the invalid array_flip() usage in sfI18N
  • r29521: [1.3, 1.4] fixed E_STRICT compatbility of some unit tests
  • r29522: [1.3, 1.4] fixed format_number_choice()
  • r29524: [1.3, 1.4] fixed sfWebResponse::sendHttpHeaders() call from sfController::forward() in sfController::getPresentationFor() prevents later call to sendHttpHeaders() within main controller
  • r29526: [1.3, 1.4] fixed incorrect http status when lockfile present
  • r29527: [1.3, 1.4] fixed notices in sfViewCacheManager::isCacheable()
  • r29528: [1.3, 1.4] fixed warning in sfBasicSecurityUser when hasCredentials is called before credentials are set
  • r29529: [lime] changed the error_reporting default value to false to keep BC
  • r29531: [1.3, 1.4] updated lime to 1.0.9

Symfony 2.X branch:

  • 2684de0, 9ed3d04, 33a7d9a: folded all curly brackets of control structures to conform to PEAR/ZF CS
  • 75f0d47: [HttpKernel] added support for query strings in Request::create() method
  • 16055d2: [Foundation] moved the requirement of the bootstrap.php later in the process
  • 287f787: [HttpKernel] added Request::getUri()
  • 6536204: [HttpKernel] added Request::getQueryString()
  • d8752c7: [HttpKernel] moved getDate() from ParameterBag to HeaderBag
  • fd331ba: [WebBundle] changed the routing to accept a single _controller argument instead of _bundle, _controller, and _action
  • 72947d8, bb77e9a: [WebBundle] re-organized the sub-request management
  • 2c16569: changed the main parameter of the kernel handle() method to type with 3 different values
  • 569508a: [WebBundle] added options to the render method of the actions helper
  • b6852c3: [Finder] added a data range filter
  • c8dde44: [WebBundle] added support for URI in actions helper
  • e715bc3: [Console] updated OutputInterface
  • 3749c59: [WebBundle] introduced a ControllerManager class
  • 3fe83cd: [WebBundle] finished the refactoring of the actions helper
  • 8c4dd5c: refactored the listeners management
  • efc4777: [DoctrineBundle] fixed DoctrineBundle migration namespaces
  • c840c29: added methods to introspect a Bundle
  • 005051c: [HttpKernel] added support for weak etags and added a method to set all cookies
  • 6e60925: [HttpKernel] added a method to retrieved the ETags from the IF_NONE_MATCH header in a Request
  • 3dce658: [BrowserKit] fixed inverted parameters in Client::requestFromRequest and added missing parameter documentation in Request::__construct()
  • 12a09f5: [DoctrineBundle] updated XSD based on a visual audit
  • 6642673: [SwiftmailerBundle] updated XSD based on visual audit
  • 6a3dcce: [WebBundle] added missing "class" attributes to xsd
  • f62dd35: [WebBundle] fixed ExceptionHandler configuration
  • 04a0032: [Templating] added a __isset() method to the Engine
  • 8cd2b45: [WebBundle] added a way to add more renderer to the Templating Engine from the container
  • f11d539: [Templating] added a isFresh() method to Loader classes
  • d7c8357: [Templating] enabled escaping only when the renderer is php
  • 87143b3: [TwigBundle] added the Twig bundle (proof of concept)
  • 46a8a17: [Templating] removed CompilableLoaderInterface and fixed unit tests
  • 9426f82: [Finder] refactored size and date comparators
  • 360f79f: [Finder] refactored directory depth management


  • r29553: [1.3, 1.4] fixed inconsistent EOL in Doctrine forms
  • r29570: [1.3, 1.4] fixed doctrine form filter m2m query logic

...and many other changes

Development digest: 108 changesets, 24 bugs reported, 28 bugs fixed, 3 enhancements suggested, 4 enhancements closed, 4 documentation defects reported, 2 documentation defects fixed, and 10 documentation edits.


New Job Postings


  • New plugins
  • Updated plugins
    • sfUnobstrusiveWidgetPlugin: escape simple cote in JSON initialization in widget.treeview.jquery.uo.js file, fixed date picker to be able to use it with any date format
    • sfPropel15Plugin: updated documentation, added the ability to set query_methods on routes, fixed warning in propel collection routes
    • sfSolrPlugin: fixed meta description field accessor
    • swCombinePlugin: fixed bugs, implemented the package feature, fixed absolute reference when fixing image path, added combined file debugging, avoid combined files to be loaded twice, made sure the javascript are always loaded first
    • sfImageTransformExtraPlugin: moved default http route upwards to avoid a conflict with the default file route, implemented seekable stream_read() for remote sources, added tests to ensure seeking/telling is working as expected, corrected README about overlay and alphaMask transformation parameters, updated package and plugin configuration to the next release
    • srPageChooserPlugin: added support for page chooser in FCKEditor, updated README, fixed path to srPageChooser module in fck_link.html
    • ExtjsGeneratorPlugin:
      • cleaned up app.yml
      • added defaults for app.yml values where missing
      • added InputTextArea widget
      • changed xtype loader to use anti-cache prevention
      • improved default formpanel display
      • added form and filter TextArea and NumberField widgets
      • fixed width attribute on many to many fields
      • cleaned up select widgets
      • fixed bug with gridpanelConfig forceFit config check
      • added drag and drop support to many to many fields
      • fixed tab panel to show configured list title
      • changed list, edit, and new titles to take into account object_name parameter if title not set
      • fixed new action to set the proper title
      • fixed list tab to have the proper title
      • moved needsId checks into configuration class to always add csrf and id in getFormFields
      • added addCSRFProtection to BaseExtjsFormPropel template to override the widget used for the csrf field
      • refactored _formpanel.js to remove eval calls, id checks, and csrf additions
    • sfDoctrineActAsTaggablePlugin: fixed ActAs documentation for schema.yml, documented "link_function" option to tag_cloud()
    • mtAlertPlugin: updated README, rich text disabled by default
    • sfPhpunitPlugin: fixed bugs with unsing propel objects as a fixtures, added cleanSnapshots method
    • sfExtjs3Plugin: added Ext.ux.form.TextArea support, added support for Ext.form.NumberField
    • dbFormExtraPlugin: bugfixing stylesheet reference of color picker widget
    • sfDoctrineRestGeneratorPlugin: fixed one bug that would'nt permit error messages to be rendered correctly, optimized the generated module in order to remove a useless empty loop which could sometimes be generated
    • sfDoctrineShortUrlPlugin: fixed a bug that made the plugin generate a new shorturl each time the user request an already taken alias, made the short url restrictions stronger, fixed short urls generation and documented it
    • sfTrafficCMSPlugin: removed save of Doctrine_Collection children so fix creation of empty entries, added condition option for embedding forms, provided a field & value local option to give the name of the local foreign key, added support for sub pages, moved the updated cms page schema back into the plugin
    • bhLDAPAuthPlugin: rewrote debugDump which was causing trouble
    • sfErrorNotifier: added ability to handle php errors including fatal, parse and so on
    • pmMigratorPlugin: added toFixture and toDB methods to API, now you can pass an array of parameters to fgetscsv
    • sfAssetsLibraryPlugin: refactoring
    • sfGridPlugin: the widget for the grid are based on sfWidget from symfony form framework, added a grid helper, for manage js and css inclusion, fixed some unit test
    • sfApplicationMapPlugin: updated documentation with more examples
    • sfSympalPlugin:
      • install: disabled editor during install
      • install: updated installer to hopefully work with earlier (pre 1.6) versions of git
      • moved location where the sf_sympal_content variable is passed to the view
      • install: fixed bad example command during install process
      • removed the "offline" functionality
      • install: effectively disabled any action when installing plugins
      • fixed a few references to the render variable "format" which was changed to sf_format
      • test: moved around some of the test assertions to match a slightly different order for the test fixture menu items
    • diemProject:
      • core: changed site_indexable setting default value to 1
      • front: fixed stylesheet inclusion with options from front widgets
      • front: fixed external link blank setting
      • core: fixed possible double inclusion of Javascript files when assets are not compressed
      • front: fixed front editing record when module is in a plugin
    • apostrophePlugin:
      • no more undefined variable in apostrophe:migrate when trying to add the redirects table
      • rebuild-search-index no longer runs out of memory on big sites
      • new app_a_title_suffix option complements app_a_title_prefix
      • AddSlot now passes options properly to a_area()
      • fixed lack of default value for navigation query
      • added the ability to now specify a slideshowItemPartial.php using the slot options
      • removed completely gratuitous double loading of the page to be edited in both BaseaSlotActions::setup and BaseaActions::executeSetVariant
    • apostropheBlogPlugin:
      • changed default query used for events engine page
      • only return title slot in ajax header response in blog and event admin
      • removed doctrine slug post validator in form class
      • blog plugin now supports 'full' option to single and multiple blog post slots
      • replaced uses of nb_common_tag with nb_common_tags
      • added ability to set blog template name from the slot / area options in the template
      • fixed bug in date navigation
      • changed location of Base action classes so that they can be more easily overriden
      • updated admin generator formField partial to reflect the markup we use with the FormFormatter
      • upcomming events query should not include past events
      • moved the post meta data out of _post and into the post Templates with an if wrapper excluding it from the admin module
      • refined the template and suffix stuff so its only in the base component classes and not in normalview
      • aBlogItem text function return text limited by words
      • tags and categories are now indexed for search in blog and events
      • fixed bug where excerpts were pulling the last text slot in a post instead of all text in the area
      • blog slots (single and multiple) now accept a 'subtemplate' option which is appended to the template name
      • fixed bugs with blog post permissions
      • don't allow non-admins to quick add categories
      • restrict blog category editor to admins
      • fixed some stray references to a_blog_post that should have been a_event
      • brought the events up-to-date with the latest changes in the blog plugin
      • refactored the popularTags JS and moved it into blog.js
    • vjCommentPlugin: made the form templates xhtml compliant, added alt atribute to images with reply and report actions, fixed comments list xhtml compliance, fixed issue where logged users username was not copied into the reply field

New symfony powered websites

  • xav.cc: (English) a simple url shortening system, featuring a frontend, a backend, and an API. It uses Symfony 1.4 and Doctrine.
  • FriendlyLeagues: (English) create your own FIFA World Cup leagues, and duel with friends
  • Futpedi: (Turkish) football wiki and football social network

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.


Comments are closed.

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