Symfony2 added this week the new ControllerInterface and BaseController classes. The profiler was refactored and the web development toolbar was temporally removed (it will be included in the upcoming WebProfilerBundle). Lastly, the exception management was refactored once more and the event listeners added a new priority parameter.
Development mailing list
- Discussions about Issue with CSRF tokens in forms and Simpler way to enhance standard widgets in client projects
Development highlights
Symfony 1.X branch:
- r30773: [1.3, 1.4] added missing processing of event
Symfony 2.X branch:
- 1277568: [HttpFoundation] fixed Session
- 0319838: [TwigBundle] added a flash tag
- fe78d5f: added a way to disable the profiler
- 9c07e46: [FrameworkBundle] added ControllerInterface. A Controller must now implement ControllerInterface. The BaseController can be used as the base class for Controllers. The Controller class adds some proxy methods and an array access to the Container.
- 789a02d: [FrameworkBundle] and made it call Session::get
- ec8500b: [FrameworkBundle] added support for previous exceptions in the exception pages
- 3c42e0b: [FrameworkBundle] changed the default value of ignore_errors according to the current debug value
- b1e7996: [DependencyInjection] moved extension loading in the freezing process (opens more possibilities in the loading order of configs)
- a432417: [DependencyInjection] added a way to ignore errors when importing a non-existent file (useful when you want to include an optional service file)
- bf67562: [Templating] fixed PHP renderer when using a template variable named 'template'
- 69f9d9c: [DoctrineMongoDBBundle] added logger and data collector for WDT
- 0867080: [HttpFoundation] added a keys() method to *Bag classes
- 1d7f43e: [Framework] added logs when some listeners are not called because the event has already been processed
- 82ff790: added a priority to the event dispatcher listeners
- 57db35b: made ExceptionManager independent of the Request
- 92f4b92: [HttpFoundation] fixed Session serialization
- c78528a: [FrameworkBundle] added abbrClass() and abbrMethod() helpers
- eeb0742: [Framework] added a way to retrieve called and not-called events for a given dispatcher
- 83a64df: added ContainerAwareInterface
- eb66e0d: [FrameworkBundle] made exception controller embeddable
- 72db4c7: refactored Profiler and DataCollector classes (the WDT has been removed and will be re-added in the upcoming WebProfilerBundle)
- 0208800: refactored exception management (removed the ExceptionManager)
sfDoctrinePlugin:
- r30774: [1.3, 1.4] changed lingering Doctrine calls to Doctrine_Core in admin generator
Development digest: 51 changesets, 11 bugs reported, 28 bugs fixed, 4 enhancements suggested, 12 enhancements closed, 7 documentation defects reported, 2 documentation defects fixed, and 12 documentation edits.
Documentation
- New Creating and editing Embedded Forms, and Irc FAQ pages
New symfony bloggers
- Liip Team blog (feed) (English)
- Agence Shape (English, and French)
Plugins
- New plugins
- ggEmailPlugin: helps using the symfony template/layout system for emails.
- idlDropboxPlugin: adds Dropbox features to Symfony project (retrieve account information, upload file, create directories)
- sfOAuthProviderPlugin: allows you to turn your application to an oauth provider.
- sfHarmonyFlexPlugin: (no description)
- sfHarmonySoapPlugin: (no description)
- sfHarmonyOAuthPlugin: (no description)
- lyMediaManagerPlugin: refactored lyMediaAsset and added some unit tests, refactored lyMediaFolder, fixed wrong rounding to integer of asset file size value
- csDoctrineActAsSortablePlugin: fixed fetchOne for large Collections
- csDoctrineActAsGeolocatablePlugin: fixed incorrect error message in geolocatable template
- sfAssetsLibraryPlugin: fixed some small issues in helper and routing, improved README, fixed some issues with sfWidgetFormAssetInput
- ddOnlineStorePlugin: the fixtures files now are .sample files, is_featured field added to all products
- sfFormExtraPlugin: added support for sfWidgetFormDateTime in sfWidgetFormJQueryDate, fixed JS function names when the widget name contains '-', fixed sfWidgetFormJQueryDate doesn't restrict values on page load, fixed sfWidgetFormJQueryDate doesn't refresh disabled after the date was chosen from calendar, updated the autocomplete JavaScript to the latest version, added culture and theme options for sfWidgetFormReCaptcha, fixed widget for sfFormLanguage, allowed unassociated list to be left of the associated one
- sfDatgridPlugin: clear also hidden in jquery reset search
- sfTaskLoggerPlugin: fixed bug with logger when the task is launched in a web context: need to disconnect from dispatcher to avoid symfony to try to write in the closed file
- sfPropel15Plugin: fixed plugin package template (remember to modify the package generated by the plugin:package task to remove the vendor/propel-generator/pear/build-pear-package.xml file, since it makes PEAR go nuts when trying to install the package)
- ahDoctrineEasyEmbeddedRelationsPlugin: added newFormUnsetPrimaryKeys optional parameter (this allows you to embedded forms to not unset their primary keys, this is useful in composite key situations)
- sfAdminDashPlugin: updated translations
- diemProject:
- fixed permission name in dmWidget/editRecords security
- swap assets in asynchronous rendering of widget
- apostrophePlugin:
- added more a_include_js_calls() invocations to AJAX actions which don't get it automatically
- fixed aMediaCMSSlotsTools had a redundant and buggy implementation of aMediaTools::userHasUploadPrivilege()
- the repair-tree task has been overhauled (all variants of the task now use PDO to avoid running out of memory on big page trees)
- the repair-tree task has been overhauled (all variants of the task now use PDO to avoid running out of memory on big page trees)
- added javascript to hide the template dropdown if your page type is not template-based
- navigation component can now accept its active and root parameters as aPage objects
- removed assumptions about routes
- removed second instance of history browser from global tools
- refactored big chunks of inline js to the apostrophe object and a_js_call
- updated the edit categories funcitonality in the media lib sidebar to use a_js
- the versions info array is now a flat array for JS compatibility
- aDoctrineRoute and aRoute can no longer require an additional query to be made when using the engine-slug parameter
- apostropheBlogPlugin:
- backed out engineSlug in blog plugin
- fixed count query used for blog category admin
- changed link_to to use named route in blogCategoryAdmin
- fixed a bug that was causing the categories listing in the page settings engine dropddown to not be alaphabetical
- added first pass at a calendar for events
- removed obsolete tasks that just lead to confusion
- fixed i18n: apostropheBlogPlugin should use the apostrophe catalog just like the main plugin does
- added some more functionality to the calendar so you can click on a day, month or year and begin browsing that way
- fixed calendar for showSuccess and changed the getDay getMonth getYear for events to use the StartDate instead of the Pub Date
- removed the addStylesheets and addJavascripts calls from the assets partial
- moved the app.yml check for whether or not the calendar is enabled up into the action
- Billigt Grin: (Danish) a danish booking agency for upcoming stand-up comedians
- Kvartirka.bg: (Bulgarian) find appartments for rent in Bulgaria
- PressBulgaria.com: (Bulgarian) send press release to all medias in Bulgaria
They talked about us
- Setting up Continuous Integration for a symfony plugin using Hudson and Sebastian Bergmanns (PHPUnit) Template for Hudson Jobs for PHP Projects
- Liip at FrOSCamp
- Symfony Day Köln 2010
- Symfony – Storing email templates in XML for use with sfMailer
- phpBB 4 будет на Symfony 2
- What would you expect of a best practice document when developing symfony 1.4 form widgets?
- Using JaSig CAS with Symfony
- Petite approche de Doctrine (partie 2)
- Petite approche de Doctrine (partie 3)
- Applying best practices for PHPUnit testing symfony plugins
- Why Doctrine_Core::getTable(‘BarFoo’) is not such a good idea.. when PHPUnit testing a symfony plugin
- Multiples connexions doctrine et le chargement des modèles
- Apostrophe CMS – изменение стандартной слугофикации (slugify)
- Symfony Visualization
- symfony popup with jQuery thickbox - beginner's tutorial
- 国外开源PHP框架集合
- Symfony fejlesztés
- Erreur symfony: la mauvaise connexion est utilisé lors de la requête avec Doctrine
- Faire le ménage dans votre dossier modèle
- PHP Libraries, Frameworks, and Tools
- Symfony: gestion de document; lecture/écriture
- Symfony and MVC - follow up
- Sending multipart email from a Task in Symfony 1.4
- Overview of PHPEdit extension for Symfony
- Configurar Symfony 1.4.x desde cero sobre Ubuntu 10.04
- Selenium and symfony Integeration – the Non-plugin Approach (Tutorial)
- Symfony 1.4 -ийг хамгийн амархан тохируулах арга
- Is your task running out of memory?
- Symfony – Storing email templates in XML for use with sfMailer
- Ömrümü yedin Symfony
- phpBB 4 на Symfony 2
- Building PHP Web App in 15 minutes with Symfony Framework