A week of symfony #88 (1->7 september 2008)

Symfony continued this week adding cool new features for the upcoming 1.2 version. The routing framework will be refactored to allow further customization and complete RESTful architecture. In addition, Propel plugin development showed an immense activity during this week.

Development mailing list

Development highlights

  • r11274, r11276: [1.1, 1.2] added a way to set the "value" attribute value of a checkbox
  • r11277: [1.2] removed getMethodName() usage in core + changed deprecated log to a warning
  • r11278, r11279: [1.1, 1.2] renamed valueAttributeValue to value_attribute_value (coding standard and api consistency)
  • r11280, r11281: [1.1, 1.2] fixed sfCacheClearTask: clear all type if not defined app
  • r11286: [1.2] removed log messages that do not give valuable information
  • r11287: [1.2] removed log from sfWebRequest
  • r11293: [1.2] removed the application name as an argument for Propel task in favor of an optional option
  • r11297, r11298: [1.1, 1.2] fixed parsing of star parameter creating empty param
  • r11301: [1.2] added confirmation when inserting the SQL statements
  • r11313: [1.2] First part of the routing refactoring (WIP)
  • r11319: [1.2] renamed method_name to method in the routing context
  • r11338: [1.1, 1.2] fixed sfBaseTask so that it notifies the same event as sfTask
  • r11339: [1.2] fixed Propel Peer classes guessing
  • r11341: [1.2] allow a task alias to be a fully qualified name (with a namespace)
  • r11343: [1.2] rename propel:generate-crud to propel:generate-module
  • r11344: [1.2] added support for PUT and DELETE for the link_to() helper
  • r11347: [1.2] moved extra parameters from routing to request attributes
  • r11349: [1.2] fixed default form format name when generating a CRUD module
  • r11353: [1.2] added support for PUT and DELETE methods to the form_tag() helper
  • r11354: [1.2] added false as a value that removes the attribute from a widget tag
  • r11356: [1.2] added sfForm::renderFormTag() method
  • r11361, r11362: [1.1, 1.2] fixed cloning of widgetformschema fails to clone formatter correctly
  • Updated dwhittle branch
  • ...and many other changes

Development digest: 107 changesets, 30 defects created, 15 defects closed, 5 enhancements created, 1 enhancement closed, 6 documentation defects created, 8 documentation defects closed and 17 documentation edits.

Book and documentation



  • New plugins
  • Updated plugins
    • sfPropelPlugin:
      • [migration]: added index size parameter and ->unique() convenience method to column abstraction class, normalized sfPropelIndex::asPropel() signature, added ->getCreateIndexStatement() to DDL builder extensions, reorganized sfPropelBaseTask for better reusability, added sfWidgetFormPropelSelectRadio.class.php, added prove.php test script to run all plugin tests, removed transaction from sqlite drop column statement in favor of PDO::beginTransaction(), added ->create() and ->drop() terminator methods to model abstraction classes, removed DDL builder class from propel.ini to avoid an unnecessary upgrade step, added convenience create/add and drop methods to column and index abstraction classes that accept a string table name parameter, ported recognition of special column names from sfPropelDatabaseSchema to abstraction layer, added sfPropelTable::columns() to facilitate prettier code, added migration class for creating migration log table, added static propel model classes for migration log table, added autoIncrement attribute to fixture statements, rewrote base migration and manager classes to handle namespaces, added sfPropelMigrationSchema class for acting upon a collection of migration classes, updated migration tasks to use new manager and schema classes, moved migrations from project/plugin data to lib directory, removed propel.ini directive to disable migrations, improved DRY in builder and model abstraction layer, added test suite, updated migration log table, model classes and migration, updated execution of a collection of SQL statements to ignore exceptions per Propel's example, addressed MSSQL drop table bug, fixed how migration schema builds its revision range, added confirmation to backward migration of the migration namespace, changed all application arguments to options, added autoload registration for bundled plugin model directory, eliminated use of sfProjectConfiguration::getActive() where possible, eliminated use of sfSimpleAutoload where possible, added some helpful error messages
      • [behavior]: added sfWidgetFormPropelSelectRadio.class.php, removed the application name as an argument for Propel task in favor of an optional option
      • [trunk]: removed the application name as an argument for Propel task in favor of an optional option, added confirmation when inserting the SQL statements, fixed Propel Peer classes guessing, rename propel:generate-crud to propel:generate-module, fixed default form format name when generating a CRUD module, made form class name customizable in the CRUD generator, changed the default list variable name in the generated CRUD module, added sfForm::renderFormTag() method
    • smFaceliftPlugin: converted the included files into classes
    • sfDoctrineGuardPlugin: moved signin form to allow override, added translation to signin template
    • sfPropelAuditPlugin: created folder for symfony 1.0 releases and restored previous releases (1.0.0 and 1.0.1)
    • sfLanguageSwitchPlugin: added trunk and tags directories, added branches directory, moved release 0.0.1 to tags directory, rewritten some parts of source, removed some flags, rewritten documentation, added automatic switch for sf 1.0 and 1.1, updated package.xml, released 0.0.2 version
    • sfPropelActAsNestedSetBehaviorPlugin: added boolean type cast to match phpdoc function signatures
    • ysfYUIPlugin: added note to README about declaring yui-skin-sam class to body tag to get styling working
    • sfExtjsThemePlugin: fixed the problem with local grouping, fixed the problem with double sort statements when grouping, removed obsolete Ext.ux.form.Checkbox folder, added new override to fix Checkbox alignment in IE, added new override to add getValue and setValue to RadioGroup, added new override to BoxComponent so button can extend it, added new Ext.ux.BoxButton so Button extends BoxComponent, uses same button xtype, cleaned up actions.class.php in the generator to remove a lot of commented obsolete code
    • sfFormtasticPlugin: fixed bug when calling ->renderHiddenFields() on a form with an error schema

Some new symfony powered websites

  • Social Group Buy: (english) social shopping service allowed to organize and execute buying groups
  • LifeJack: ebay-like site for life assurances
  • ullright: (english) framework and application suite providing helpful tools to support workflows and company-internal administration/organisation in general
  • Zamanzar: (english) real estate portal with thousands of Indian real estate listings
  • Animalo.pl: (polish) an online community for Pet Owners

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.