A week of symfony #97 (3->9 november 2008)

The first plugin developers day took place this week resulting in an historic plugin development activity: 8 new plugins were released and nearly 30 plugins were updated. Meanwhile, symfony 1.2 continues refining and improving its great new features and prepares its imminent second beta release.

Development mailing list

Development highlights

  • r12587: [1.2] tweaked web debug toolbar css (better cross-browser compat)
  • r12594: [1.1] fixed propel plugin does not ignore doctrine schemas
  • r12595: [1.2] fixed ObjectHelper for doctrine
  • r12625: [1.2] removed magic_quotes calls for 5.3 compat
  • r12631: [1.2] fixed plugins autoloading
  • r12636: [1.2] added nested save support to sfPropelForm
  • r12639: [1.2] changed the default behavior of symfony: now all plugins are enabled by default (to keep a better BC with 1.1 behavior)
  • r12641: [1.1, 1.2] fixed typo in sfValidatorString
  • r12646: [1.2] added support for nested forms in the admin generator
  • r12660: [1.2] made sfRequest cloneable
  • r12661: [1.2] added a new option to be able to change the default text regex
  • r12668: [1.2] added sfProjectConfiguration::setPluginPath() for specifying the path to a particular plugin
  • r12671: [1.2] fixed sfForm::renderHiddenFields() doesn't render hidden fields from embedded forms (reverted)
  • r12672: [1.2] added exception if a plugin is enabled too late
  • r12676: [1.1, 1.2] fixed spl_autoload_register for PHP 5.1.2
  • r12696, r12697: [1.1, 1.2] made sure that the core autoloaded is registered only once per request
  • r12698: [1.2] reverted usage of REQUEST_TIME
  • r12728: [1.2] fixed token replacement in databases.yml
  • r12751: [1.1, 1.2] fixed HTTP header for exceptions
  • r12752: [1.2] reformated the default layout
  • r12753: [1.2] changed some sfObjectRoute error messages to be more explicit
  • r12757: [1.2] added automatic route creation to propel:generate-admin
  • r12763: [1.2] applied patch for UTF-8 support and using PropelConnections for PDOSession storage
  • r12769: [1.2] fixed form field ordering in admin generator when no display configuration is used
  • r12804: [1.2] added nested sets builders in the upgrade task
  • r12806: [1.2] fixed app:routes display when a route has several method requirement
  • r12810: [1.1, 1.2] fixed widget form schema positions after unsetting some widgets
  • r12813: [1.1, 1.2] fixed setDefaultFormFormatterName() when called from BaseFormPropel
  • r12811: [1.0, 1.1, 1.2] fixed order of data deleting in sfPropelData
  • r12813: [1.1, 1.2] fixed setDefaultFormFormatterName() when called from BaseFormPropel
  • r12829: [1.2] fixed form fields labels in the new admin generator
  • r12830: [1.2] fixed labels for list in admin generator
  • r12837: [1.2] fixed positioning of calendar popup
  • r12840: [1.2] proposed implementation for calculating relative path
  • r12843: [1.2] sfSymfonyPluginManager now creates relative symlinks if possible
  • r12844: [1.2] added PDO debugging when running functional tests
  • r12847: [1.2] needed to move relative path calculation into sfFilesystem to prevent collision with the mirror command
  • r12852: [1.2] fixed sfBrowser when an action is empty
  • r12855: [1.2] removed sf_admin_module_web_dir from settings.yml
  • Updated dwhittle branch
  • ...and many other changes

Development digest: 273 changesets, 53 defects created, 81 defects closed, 17 enhancements created, 22 enhancements closed, 12 documentation defects created, 10 documentation defects closed and 24 documentation edits.

Book and documentation



  • New plugins
    • sfAuthorizeNetCIMPlugin: allows you to create, retreive, update and delete payment profiles from the Authorize.NET CIM service
    • jsThumbnailPlugin: creates thumbnails on the fly using the GD library. It creates a thumbnail of a image in the given size and stores it in cache for the next calls, until the image changes.
    • sfSimpleCMS2Plugin: based on SimpleCMSPlugin conception but with lots of new features (backend control panel, layout customization, integration YAML CSS Framework, easy integration on symfony plugins, optimized perfomance)
    • sfWikifyPlugin: reads from the schema.yml file and generates a doku-wiki-like syntax to describe it
    • sfVisualRoutesPlugin: display routes from the command line using the project:routes task
    • sfZendOpenIdPlugin: integrates the OpenID Consumer of Zend Framework with the popular sfGuardPlugin. It only supports authentication, but other functionality is to be added.
    • sfUPSShippingPlugin: allows you to retreive shipping cost estimates from the UPS XML API. You can submit to/from zip codes, and get back the cost for a specific shipping type, or get back a list of costs for all possible shipping types
    • sfSimplePagePlugin: allows you to manage like static pages with symfony
  • Updated plugins
    • sfI18NTranslatorPlugin: using sfForm to handle translate form, handle current culture in translate form, using rawurlencode / decodeURIComponent, added default value for language select, set default value on culture select tag, using selected culture in translation update, replacing args on return string, styling
    • sfPropelPlugin:
      • [1.2] added peer_method option to sfWidgetFormPropelChoice and sfWidgetFormPropelSelect
      • [1.2] updated API doc
      • [1.2] added hr, it, uk, pl, hu, ar, fi and tr translations for the admin generator
      • [1.2] added nested save support to sfPropelForm
      • [1.2] made some more tweaks for people with output escaping set to off
      • [1.2] added support for nested forms in the admin generator
      • [1.2] changed the order of objects saving in sfPropelForm
      • [1.2] changed an error message to be more descriptive
      • [1.2] fixed deep nested forms saving
      • [1.2] added i18n missing catalogue information
      • [1.2] fixed nested i18n forms
      • [1.2] added automatic route creation to propel:generate-admin
      • [1.2] converted some functional tests to the new syntax
      • [1.2] changed Propel externals to 1.3 branch
      • [1.2] added key_method to sfWidgetFormPropelSelect and sfWidgetFormPropelChoice
      • [1.2] fixed CLI tasks when some plugins register behaviors
      • [1.2] fixed order of data deleting in sfPropelData
      • [1.2] fixed location of the base form class for Propel and Doctrine
      • [1.2] fixed order of data deleting in sfPropelData
      • [1.2] splitted default admin generator stylesheets to global and default
      • [1.2] fixed i18n support for forms (WIP)
      • [1.2] added PDO debugging when running functional tests
      • [1.2] fixed i18n in Propel forms
      • [1.2] removed sf_admin_module_web_dir from settings.yml
    • ysfYUIPlugin: made yui_submit_tag name attribute customizable, updated README
    • ckWebServicePlugin: changed wsdl style from rpc/encoded to rpc/literal, refactored ckWebServiceController, fixed typo in ckSoapHandler, fixed method call in ckSoapHandler, fixed call to sfEventDispatcher::notify in ckSoapHandler, changed wsdl operation creation so a response message is always present, updated api documentation, renamed ckMemberResultAdapter to ckPropertyResultAdapter, added ckMethodResultAdapter, changed serialization to produce WS-I compliant wsdl, changed order in which header and parameter parts are added on operation creation, changed array type implementation to be ws-i compliant
    • sfCombinePlugin: do not version generated model files, avoid needless database queries when no JavaScript or CSS is present, allowed certain files to be exempt from combination (e.g. tiny_mce.js), fixed case when sfCombineFilter was applied to the output of the sfCombine module (in case a JavaScript file contains the string), fixed wrong way to access the plugin configuration (damn app.yml nesting levels), fixed cache on sfCombine module (the cache layer needs a view, using renderText() bypasses the cache)
    • swToolboxPlugin: added sw_t function helper, added admin backend js helper
    • ysfR3Plugin: fixed i18n:translate task does not translate all apps + added optimizations
    • sfTaskExtraPlugin: added generate:plugin and generate:plugin-module tasks, removed earlier event-based WIP, added test project to plugin generation, added plugin:package task, added package.xml template
    • sfExtjsThemePlugin: renamed renderer class to renderers, moved all possible common partials (constructor, initComponent, and initEvents) to be generated by the generator reducing a large number of very similar partial files in the generator templates directory, the partials are now generated strait to cache, cleaned up a lot of extra whitespace in the generated javascript, added and used the $className variable in the non-generated partials where applicable, moved rowactions config to the generator, moved toolbar top config to the generator, moved filterpanel config to generator, started re-working groupColumn methods to take advantage of dbfinders 'with' ability
    • sfDoctrinePlugin:
      • [1.2] initial entry of new admin generators for Doctrine
      • [1.2] fixed admin generator filters
      • [1.2] fixed indention of generated forms and removing primary key from generated filter forms
      • [1.2] cleaning up sqlite database files when functional test shuts down
      • [1.2] removing old admin generator and crud code
      • [1.2] updating default crud theme
      • [1.2] reporting admin and crud themes
      • [1.2] fixing sfDoctrineRoute
      • [1.2] added i18n missing catalogue information
      • [1.2] fixed typo and adding logic to use textarea for string columns with length greater than 255
      • [1.2] updated README file in markdown
      • [1.2] fixed issue with autoloading and custom behaviors
      • [1.2] added exception when user tries to use package parameter in symfony Doctrine schema files
      • [1.2] fixed sfFormDoctrine didn't save automatically the file
      • [1.2] fixed doctrine:build-forms issue
      • [1.2] fixed Doctrine does not create Plugin*Translation class
      • [1.2] fixed location of the base form class for Propel and Doctrine
      • [1.2] removed sf_admin_module_web_dir from settings.yml
      • [1.1] updated README file in markdown
      • [1.1] fixed issue with autoloading and custom behaviors
      • [1.1] fixed Doctrine does not create Plugin*Translation class
      • [1.1] added support for saving nested objects in sfFormDoctrine
      • [1.1] fixed dql task to output results of query in a more readable format
      • [1.1] fixed doctrine:build-forms
      • [1.0] fixed error in sfDoctrineAdminColumn class
    • isicsSitemapXMLPlugin: added branch for 1.2, fixed README
    • sfLucenePlugin: create branch for the sf1.1 Doctrine version, added doctrine support for symfony 1.1
    • sfBugsPlugin: small redesign, added CSS file, added title field, added subpage for detailed view of a bug, updated the README file, updated the new models for the changed DB structure
    • sfDoctrineGuardPlugin: fixed signin form doesn't include "remember" widget, fixed not all forms are bundled with sfDoctrineGuardPlugin
    • sfDoctrineManagerPlugin: fixed issue with use of old form helpers
    • sfDynamicCMSPlugin: merging changes from 1.0 to 1.1
    • sfPropelPlanetPlugin: created 1.1 branch, added few missing characters to sfDynamicCMSTools::stripText pattern array
    • sfXssSafePlugin: released 0.8 version (uses html purifier 3.2)
    • sfDoctrineSettingsPlugin: creating the proper subversion directory layout, moving all the current files to branches/1.0, updated package.xml file, changing the sample data so it doesn't load by default, updated the plugin to work with sfDoctrinePlugin 1.0, made the backend work with sfDoctrinePlugin 1.0, made the wysiwyg editor use the options field for extra options, updated the README file to be more helpful
    • sfHamlViewPlugin: created a branch for symfony 1.2 version of the plugin, made plugin compatible with symfony 1.1, fixed a problem with 5.2.6 which was only fixed in the 1.0 branch of the plugin
    • sfFeed2Plugin: new repo structure, fixed unit test, fixed gmt time in unit test
    • sfSmartyPlugin: updated AppUrlHelper.php
    • sfDoctrineUserPlugin: added a package.xml file for the 1.0 and 1.1 branches, added LICENSE files to all branches, updated the README files for markdown language, updated the package.xml file to have the correct dependencies, fixed a bug where when the sfGuardDoctrinePlugin was renamed to sfDoctrineGuardPlugin that the overriding of the sfGuardUser module did not work correctly, added the generator from sfGuardUser
    • sfDoctrinePollPlugin: made a package.xml file, updated the README file to be markup, added a LICENSE file, fixed the dependency for the sf1.0
    • sfImageTransformPlugin: branching to add mime detection functionality
    • sfDoctrineActAsTaggablePlugin: updated getObjectTaggedWith

Some new symfony powered websites

  • Miit.Me: (italian, english) the easy way to meet in real life people that you met over the Internet
  • Wotol: (english) buy or sell new and used industrial machines
  • Climalife: (english, french, german, dutch): Climalife, The Dehon Group brand markets products and services to refrigeration, climate control and heating industry professionals
  • Seconde Chance: (french) pet adoption portal

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.


Great listing, thanks!

Comments are closed.

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