<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>Symfony Blog</title>
        <link>http://symfony.com/blog/</link>
        <description>Symfony Blog</description>
        <pubDate>Fri, 24 May 2013 14:57:06 +0200</pubDate>
        <language>en</language>
                        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/symfony/blog" /><feedburner:info uri="symfony/blog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><item>
                    <title>A week of symfony #333 (13-&gt;19 May 2013)</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/rsuy3iZZaKM/a-week-of-symfony-333-13-19-may-2013</link>
                    <description>&lt;p&gt;This week, the new &lt;a href="https://github.com/symfony/symfony/commits/2.3"&gt;Symfony 2.3 branch&lt;/a&gt; was created. In addition, the first &lt;a href="http://symfony.com/blog/symfony-2-3-0-rc1-released"&gt;Symfony 2.3 release candidate&lt;/a&gt; version was published, which includes &lt;a href="http://symfony.com/blog/new-in-symfony-2-3-small-things-matter"&gt;tons of great small improvements&lt;/a&gt;. Lastly, one of the biggest Symfony events of the year, the &lt;a href="http://portland2013.live.symfony.com/"&gt;Symfony Live Portland 2013&lt;/a&gt; conference, will take place next week.&lt;/p&gt;

&lt;h2&gt;Development mailing list&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/forum/?fromgroups#!topic/symfony-devs/eyrtVVHPvf0"&gt;&amp;#91;HttpKernel&amp;#93; Multi base/root dir support or not?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Symfony2 development highlights&lt;/h2&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.1"&gt;2.1 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/91b84903b7924d2295da07dfdea22afb8ffd0d9c"&gt;91b8490&lt;/a&gt;: &amp;#91;DomCrawler&amp;#93; fixed Crawler::children() to not trigger a notice for childless node&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.3"&gt;2.3 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/f41ac06531d6a670bbbcbf0143b72196a6066bf2"&gt;f41ac06&lt;/a&gt;: changed all version deps to accepts all upcoming Symfony versions&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/0617ed16ce8b3d4f90016eaf8aecb267883290ea"&gt;0617ed1&lt;/a&gt;: &amp;#91;Console&amp;#93; removed the descriptor from data set providers&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/ee0cc40c87b698480550ebe359534bb833c8622e"&gt;ee0cc40&lt;/a&gt;: &amp;#91;Console&amp;#93; fixed NullOutput to not extend from abstract Output class&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/9dcc9facf025eb8043503987431af4b3bfe46a0f"&gt;9dcc9fa&lt;/a&gt;: &amp;#91;Console&amp;#93; fixed abstract Output class that fasly claims to support guessing of decorated variable&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/6d5bc7ad0f00b8ec5975a48478e59fb63e626682"&gt;6d5bc7a&lt;/a&gt;, &lt;a href="http://github.com/symfony/symfony/commit/683bd175925acf0f275471d578fce105734d2b40"&gt;683bd17&lt;/a&gt;: &amp;#91;Twig&amp;#93; removed extra table colunm in the button_row block template&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/8f54da73ddf900222247dc5719c278e21182fa64"&gt;8f54da7&lt;/a&gt;: &amp;#91;BrowserKit&amp;#93; do not follow redirects if status code is not 30x&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;They talked about us&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.sensiolabs.co.uk/blog/symfony-live-london-is-back-for-its-second-year/"&gt;Symfony Live London is back for its second year!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://vvv.tobiassjosten.net/symfony/symfony-icu-requires-lib-icu/"&gt;Symfony Icu requires lib-icu&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://shout.setfive.com/2013/05/16/symfony2-and-impersonating-users-a-heads-up/"&gt;Symfony2 and Impersonating Users, a Heads Up&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://showmethecode.es/php/symfony/symfony2-2-novedades/"&gt;Symfony2.2: Novedades&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.symfony.it/articoli/738/phpday-2013/"&gt;phpDay 2013&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.theodo.fr/blog/2013/05/theodo-spoke-at-sfpot-paris/"&gt;Theodo spoke at sfPot Paris&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://lyon.afup.org/2013/05/13/conference-ezpublish-et-symfony-le-12-juin-2013-a-19h30/"&gt;Conférence « ezPublish et Symfony » le 12 juin 2013 à 19h30&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://imchain.com/doctrine-symfony-subquery/"&gt;Doctrine: Symfony Subquery&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.wewereweb.be/utiliser-une-librairie-externe-non-referencee-dans-symfony-2-2/2013/05/12/"&gt;Utiliser une librairie externe non référencée dans Symfony 2.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.perandersen.no/?p=173"&gt;CouchDB – a switch of platform from Symfony2?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ricky.ez2.us/2013/05/15/initialize-symfony2/"&gt;Symfony2 初始化專案&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://obtao.com/blog/2013/05/currency-change-rates-up-tot-date-on-symfony2-using-openexchangerates-org-api/"&gt;Currency Change rates update on Symfony2 using openexchangerates.org API&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mazicr.wordpress.com/2013/05/12/deplyment-with-capfiony-on-windows/"&gt;Deplyment with Capfiony on Windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.scandio.de/2013/05/traits-und-symfony2-und-am-ende-kommt-zusammen-was-zusammen-gehort/"&gt;Traits und Symfony2 – und am Ende kommt zusammen, was zusammen gehört&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.hello-world.jp.net/?p=606"&gt;capistranoを使ってsymfonyデプロイ(capifonyのインストールと設定)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://3bancho.com/diary/2013/05/13/symfony2-passing-multiple-services/"&gt;symfony2 passing multiple services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://issei-m.hatenablog.jp/entry/2013/05/15/130154"&gt;[Symfony] LiipThemeBundle でスマホ対応＆Assetic を使う際の諸注意&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aripdblog.blogspot.com.es/2013/05/symfony2-optional-requirements.html"&gt;Symfony2 optional requirements installation on Mac OS X Mountain Lion (version 10.8)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.khodam.org/doctrine-2/multiple-connection-pada-symfony2-menggunakan-doctrine-2.php"&gt;Multiple Connection pada Symfony2 Menggunakan Doctrine 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://c1644.hatenablog.jp/entry/2013/05/14/034415"&gt;Symfony2開発環境構築 -PHPUnit編-&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tdak.hateblo.jp/entry/20130517/1368798800"&gt;Symfony 2.3.0-RC1 インストールのメモ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://symfony2.nanjaku.com/191"&gt;Tiwgテンプレートのincludeステートメントで読み込むテンプレートに渡したい！&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mossco.co.uk/symfony-2/using-lifecyclecallbacks-for-createdat-and-updatedat-in-symfony-2/"&gt;Using LifecycleCallbacks for CreatedAt and UpdatedAt in Symfony2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jqueryplugins.info/2013/05/symfony-2-sonata-admin-get-form-input-from-external-js-file/"&gt;Symfony2 sonata admin get form input from external js file&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/rsuy3iZZaKM" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/a-week-of-symfony-333-13-19-may-2013</guid>
                    <author>Javier Eguiluz</author>
                    <pubDate>Sun, 19 May 2013 13:56:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/a-week-of-symfony-333-13-19-may-2013#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/a-week-of-symfony-333-13-19-may-2013</feedburner:origLink></item>
                        <item>
                    <title>New in Symfony 2.3: Small things matter</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/iGuhG8zaudY/new-in-symfony-2-3-small-things-matter</link>
                    <description>&lt;p&gt;Every new Symfony release tries to brings some small but useful improvements.
Let's dive into some of them for Symfony 2.3 (in no particular order).&lt;/p&gt;
&lt;p&gt;In &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/6950"&gt;#6950&lt;/a&gt;, &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/0ef62496-732e-48d4-99f1-d62dba49175b"&gt;Emanuele Gaspari&lt;/a&gt;
tweaked the output of the &lt;tt class="docutils literal"&gt;&lt;code&gt;router:match&lt;/code&gt;&lt;/tt&gt; command to display the route
information if there is a match. That should help you understand why this
specific route matched.&lt;/p&gt;
&lt;p&gt;When a customer stumbles upon an exception when testing your shiny new Symfony
application, you might want to get the stack trace to investigate the issue
further. You can use the web profiler, but you can now also ask him to copy
and paste the stack trace from the web page as there is now a plain text
version of it thanks to the work of &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/92755778-7f2a-478b-982e-d97d667d7b8a"&gt;Igor Wiedler&lt;/a&gt;
in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/6613"&gt;#6613&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/6815"&gt;#6815&lt;/a&gt;, &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/05b5fd94-52d8-42ce-be03-6b645a8b0a3e"&gt;Javier López&lt;/a&gt;
added a default configuration for the Serializer component in the Service
Container. Read the dedicated cookbook to learn how you can &lt;a class="reference external" href="http://symfony.com/doc/master/reference/configuration/framework.html#serializer"&gt;customize&lt;/a&gt;
it.&lt;/p&gt;
&lt;p&gt;Since 2.2, you can use the PHP built-in webserver on your development machine
(but it was limited to the development environment). But what if you want to
test your production error pages? Thanks to &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/7d70fcaa-58a3-41a0-84ec-163eac36f0ca"&gt;Dariusz Górecki&lt;/a&gt;
did in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7507"&gt;#7507&lt;/a&gt;, you can now
run the built-in server in any environment (&lt;tt class="docutils literal"&gt;&lt;code&gt;php app/console --env=prod
server:run&lt;/code&gt;&lt;/tt&gt;).&lt;/p&gt;
&lt;p&gt;When using a form to login your users, you might want to start the session as
late as possible. &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/5219b85a-5653-41c7-8cd9-afc615d8a3f8"&gt;Adrien Brault&lt;/a&gt;
added a configuration setting (&lt;tt class="docutils literal"&gt;&lt;code&gt;require_previous_session&lt;/code&gt;&lt;/tt&gt;) to better control
if a session must exist before submitting an authentication request (see
&lt;a class="reference external" href="https://github.com/symfony/symfony/pull/4776"&gt;#4776&lt;/a&gt; and the setting in the
&lt;a class="reference external" href="http://symfony.com/doc/master/reference/configuration/security.html"&gt;docs&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Since 2.2, you need to manually enable support for the &lt;tt class="docutils literal"&gt;&lt;code&gt;_method&lt;/code&gt;&lt;/tt&gt; request
parameter. Thanks to &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/36be53d2-ba91-43b9-b68b-38444a399c84"&gt;Toni Uebernickel&lt;/a&gt;
in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7202"&gt;#7202&lt;/a&gt;, you can now
control this feature with the &lt;a class="reference external" href="http://symfony.com/doc/master/reference/configuration/framework.html#http-method-override"&gt;http_method_override&lt;/a&gt;
setting.&lt;/p&gt;
&lt;p&gt;In &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/6550"&gt;#6550&lt;/a&gt;, &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/f83d8e2a-2186-4245-b2d9-9c4ef73358a7"&gt;Eric GELOEN&lt;/a&gt;
made debugging configuration parameters a lot easier; use &lt;tt class="docutils literal"&gt;&lt;code&gt;php app/console
container:debug --parameters&lt;/code&gt;&lt;/tt&gt; to list all parameters and &lt;tt class="docutils literal"&gt;&lt;code&gt;php app/console
container:debug --parameter=kernel.debug&lt;/code&gt;&lt;/tt&gt; to display the value of a specific
parameter. This can also be useful if you need a parameter value in a bash
script (&lt;tt class="docutils literal"&gt;&lt;code&gt;$CACHE_DIR=&amp;quot;`php app/console container:debug
--parameter=kernel.cache_dir`/foo&amp;quot;&lt;/code&gt;&lt;/tt&gt;).&lt;/p&gt;
&lt;p&gt;Internally, Symfony converts short controller names (&lt;tt class="docutils literal"&gt;&lt;code&gt;FooBundle:Home:index&lt;/code&gt;&lt;/tt&gt;)
to a controller/action pair that PHP understands. In &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7843"&gt;#7843&lt;/a&gt;, &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/9ea33d82-1b30-415e-8dcb-9d1a0e133c9f"&gt;Bart van den Burg&lt;/a&gt;,
added a way to do the reverse: transform a &lt;tt class="docutils literal"&gt;&lt;code&gt;controller::action&lt;/code&gt;&lt;/tt&gt; string to
its short name notation
(&lt;tt class="docutils literal"&gt;&lt;code&gt;$container-&amp;gt;get('controller_name_converter')-&amp;gt;build('Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction');&lt;/code&gt;&lt;/tt&gt;
would return &lt;tt class="docutils literal"&gt;&lt;code&gt;FrameworkBundle:Redirect:redirect&lt;/code&gt;&lt;/tt&gt;).&lt;/p&gt;
&lt;p&gt;If, like &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/b798fa08-18f3-4ba8-9e64-6f8fa1d5e00a"&gt;Henrik Bjørnskov&lt;/a&gt;,
you have a retina display, &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7065"&gt;#7065&lt;/a&gt; brings retina canvas elements
to the web profiler.&lt;/p&gt;
&lt;p&gt;The Sensio Generator Bundle speeds up bootstrapping Doctrine entities, CRUD
controllers, Form types, and more. But what if you want to customize the
generated code? Thanks to the work of NinjDS, &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/47a84c50-1dd5-4e14-8cf5-d0477e8165f7"&gt;Luis Muñoz Hernández&lt;/a&gt;,
and &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/4aed4f5d-e0cb-4320-902f-885fddaa7d15"&gt;Fabien Potencier&lt;/a&gt;,
you can now override each generated block quite easily. Reading the
&lt;a class="reference external" href="http://symfony.com/doc/master/bundles/SensioGeneratorBundle/index.html#overriding-skeleton-templates"&gt;documentation&lt;/a&gt;
should get you started in no time.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/b5f6c549-93c6-4118-a549-cf97f9effd54"&gt;Romain Neutron&lt;/a&gt;
has been very busy with the Process component and he contributed several
enhancements: &lt;a class="reference external" href="http://symfony.com/doc/master/components/process.html#process-signals"&gt;signals support&lt;/a&gt; and
&lt;a class="reference external" href="http://symfony.com/doc/master/components/process.html#process-pid"&gt;pid support&lt;/a&gt; in
&lt;a class="reference external" href="https://github.com/symfony/symfony/pull/5476"&gt;#5476&lt;/a&gt;, and proper &lt;a class="reference external" href="http://symfony.com/doc/master/components/process.html#process-timeout"&gt;timeout
support&lt;/a&gt; in
&lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7583"&gt;#7583&lt;/a&gt;. Ever wanted to run
commands that need a TTY to run properly? &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/b9e3d38f-3a78-40c5-8d56-1eceb246aa1c"&gt;Máximo Cuadros&lt;/a&gt;
got you covered in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7566"&gt;#7566&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Sometimes, you need to mix a Symfony application with another PHP application
within a single project. Sharing sessions is a nightmare, but &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/6bf46db9-3095-4670-8767-5ca263320fd3"&gt;Karma Dordrak&lt;/a&gt;,
in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7571"&gt;#7571&lt;/a&gt;, added a way to
manage a session started outside of Symfony (he even wrote a whole &lt;a class="reference external" href="http://symfony.com/doc/master/components/http_foundation/session_php_bridge.html"&gt;chapter&lt;/a&gt;
in the documentation about it).&lt;/p&gt;
&lt;p&gt;Ever wondered if using the &lt;tt class="docutils literal"&gt;&lt;code&gt;PATCH&lt;/code&gt;&lt;/tt&gt; HTTP method would work with a Symfony
form? &lt;a class="reference external" href="https://connect.sensiolabs.com/api/alternates/ce56b01d-3588-445b-8595-feb39189a343"&gt;Bernhard Schussek&lt;/a&gt;
made it possible in &lt;a class="reference external" href="https://github.com/symfony/symfony/pull/7849"&gt;#7849&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This is Friday... Lucky you, Symfony 2.3.0 RC1 has just been released and the
week-end is just around the corner. So, what about testing some of these new
features?&lt;/p&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/iGuhG8zaudY" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/new-in-symfony-2-3-small-things-matter</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Fri, 17 May 2013 12:32:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/new-in-symfony-2-3-small-things-matter#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/new-in-symfony-2-3-small-things-matter</feedburner:origLink></item>
                        <item>
                    <title>Symfony 2.3.0 RC1 released</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/LVNPncgHoYE/symfony-2-3-0-rc1-released</link>
                    <description>&lt;p&gt;The first release candidate for Symfony 2.3.0 is out. The most noticeable
changes are the creation of the 2.3 branch and the switch from &lt;tt class="docutils literal"&gt;&lt;code&gt;dev&lt;/code&gt;&lt;/tt&gt; to
&lt;tt class="docutils literal"&gt;&lt;code&gt;RC&lt;/code&gt;&lt;/tt&gt; in the Standard Edition &lt;tt class="docutils literal"&gt;&lt;code&gt;composer.json&lt;/code&gt;&lt;/tt&gt; file.&lt;/p&gt;
&lt;p&gt;You can see the whole &lt;a class="reference external" href="https://github.com/symfony/symfony/blob/2.3/CHANGELOG-2.3.md"&gt;CHANGELOG&lt;/a&gt; online if you
want to learn more about the few bugs that were fixed since beta2.&lt;/p&gt;
&lt;p&gt;If everything goes fine, the final release should be out before the end of
May, as planned in our release process.&lt;/p&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/LVNPncgHoYE" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/symfony-2-3-0-rc1-released</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Fri, 17 May 2013 10:34:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/symfony-2-3-0-rc1-released#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/symfony-2-3-0-rc1-released</feedburner:origLink></item>
                        <item>
                    <title>A week of symfony #332 (6-&gt;12 May 2013)</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/yU8bX5EnQzs/a-week-of-symfony-332-6-12-may-2013</link>
                    <description>&lt;p&gt;This week, Symfony 2.3.0 released its &lt;a href="http://symfony.com/blog/symfony-2-3-0-beta-2-released"&gt;second and last beta version&lt;/a&gt;. Among other features, this version supports the &lt;a href="http://symfony.com/blog/new-in-symfony-2-3-interactive-management-of-the-parameters-yml-file"&gt;interactive management of the parameters.yml file&lt;/a&gt; and some &lt;a href="http://symfony.com/blog/new-in-symfony-2-3-great-new-features-in-the-console-component"&gt;nice improvements&lt;/a&gt; for the Console component. In addition, the Symfony 2.1.10 maintainance version and the Twig 1.13.0 version were released.&lt;/p&gt;

&lt;h2&gt;Symfony2 development highlights&lt;/h2&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.1"&gt;2.1 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/05b987f381e9f82f02130c50e278146e86462f8a"&gt;05b987f&lt;/a&gt;: &amp;#91;Process&amp;#93; cleanup tests &amp;amp; prevent assertion that kills randomly Travis-CI&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/37af7714afa33361c4ffa10cc59dc1ff770001f9"&gt;37af771&lt;/a&gt;: &amp;#91;Console&amp;#93; added dedicated testcase for HelperSet class&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/e8d5d16a13a9cfbe3245d485a83ea4e7fa10b4a6"&gt;e8d5d16&lt;/a&gt;, &lt;a href="http://github.com/symfony/symfony/commit/c93b9f72e55e2d2993bd6bef702f63122518d419"&gt;c93b9f7&lt;/a&gt;: &amp;#91;Config&amp;#93; fixed Loader import&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/a5441b2d573eccf4664632a2d1ddba14e877dbd0"&gt;a5441b2&lt;/a&gt;: &amp;#91;Yaml&amp;#93; fixed parsing of leading blank lines in folded scalars&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.2"&gt;2.2 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/60edc583252cb35846617a7a4902a692061f9ddf"&gt;60edc58&lt;/a&gt;, &lt;a href="http://github.com/symfony/symfony/commit/e3187590c0d3d90a01f5d92c80a7347b984ef73e"&gt;e318759&lt;/a&gt;: &amp;#91;Serializer&amp;#93; fixed fatal error in normalize/denormalizeObject&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/master"&gt;Master changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/78e3710de8fbc1bd09e290d0f94c758afb9fbb1b"&gt;78e3710&lt;/a&gt;: added a ProxyManager Bridge&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/59867f921e9d82362f50b45c41b8055bb2098129"&gt;59867f9&lt;/a&gt;: made some optimization when parsing YAML files&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/0a266419b86d99f01b6d58fb351f5363a2facb75"&gt;0a26641&lt;/a&gt;: &amp;#91;DomCrawler&amp;#93; updated Crawler class (if HTML is not well-formed XML parsing goes wrong)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/853f681957c33c8f87db6d876f05c94455ae014a"&gt;853f681&lt;/a&gt;: fixed request scope issues&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/dd0e138f8c7b78a66ee69cd1edb26759d7707a6f"&gt;dd0e138&lt;/a&gt;: eased translationNodeVisitor overriding in TranslationExtension&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/fdb4b1fd75169839c218762854d5a931ebf53c6a"&gt;fdb4b1f&lt;/a&gt;: &amp;#91;Console&amp;#93; moved --help support to allow proper behavior with other passed options&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/bd0c48cc0052a594d9416471bcce6b365294b952"&gt;bd0c48c&lt;/a&gt;: &amp;#91;Console&amp;#93; moved the IO configuration to its own method&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/be42dbc82aaddce30e51dbe9a95e74884e742c84"&gt;be42dbc&lt;/a&gt;: &amp;#91;HttpFoundation&amp;#93; fixed guessClientExtension() method&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/97bee2050cdf6c79c673b4ed2052f58186444b8a"&gt;97bee20&lt;/a&gt;: pass exceptions from the ExceptionListener to Monolog&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/3beaf52ef7f50ad92072edc23a8a84d43d8ef39e"&gt;3beaf52&lt;/a&gt;: &amp;#91;Security&amp;#93; disabled the BCryptPasswordEncoder tests for PHP versions lower than 5.3.7&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;They talked about us&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://php-and-symfony.matthiasnoback.nl/2013/05/symfony2-defining-and-dispatching-custom-form-events/"&gt;Symfony2: Defining and Dispatching Custom Form Events&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://pooteeweet.org/blog/0/2221#m2221"&gt;What is needed to REST in Symfony2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tutoriel-symfony2.fr/blog/utiliser-jsonresponse-pour-vos-retours-en-json"&gt;Utiliser JsonResponse pour vos retours en Json&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://showmethecode.es/php/doctrine2/doctrine2-ordenar-aleatoriamente/"&gt;Doctrine2: Ordenar aleatoriamente&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://sonata-project.org/blog/2013/5/7/changelog-1"&gt;Sonata Project New Versions Changelog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://yosymfony.com/symfony-y-el-cambio-de-licencia-de-swift-mailer/"&gt;Symfony y el cambio de licencia de Swift Mailer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.spyghana.com/the-best-php-application-development-frameworks/"&gt;The Best PHP application development Frameworks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.leaseweblabs.com/2013/05/symfony2-mssql-support-with-pdo_dblib/"&gt;Symfony2 MSSQL support with pdo_dblib&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://3bancho.com/diary/2013/05/09/symfony2-assert-customizing-messages/"&gt;symfony2 Assert customizing messages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.kmusiclife.com/p/sf2-response-mim/"&gt;Symfony2: MIMEをResponseに渡す方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.se126.com/archives/965"&gt;Symfony2实践之命令行通过doctrine:migrations:migrate反向生成数据表&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://symfony2.nanjaku.com/199"&gt;Symfony2におけるデータベース内のデータの３つの取り方&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.caceriadespammers.com.ar/2013/05/la-seguridad-en-symfony2.html"&gt;La seguridad en Symfony2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ideato.it/planet-ideato/phpday-da-zero-a-symfony2/"&gt;PhpDay: da zero a Symfony2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://rasatech.in/symfony2-and-composer-issue-could-not-parse-version-constraint-composer-phar/"&gt;Symfony2 and composer issue: Could not parse version constraint composer.phar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/yU8bX5EnQzs" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/a-week-of-symfony-332-6-12-may-2013</guid>
                    <author>Javier Eguiluz</author>
                    <pubDate>Sun, 12 May 2013 17:20:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/a-week-of-symfony-332-6-12-may-2013#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/a-week-of-symfony-332-6-12-may-2013</feedburner:origLink></item>
                        <item>
                    <title>Symfony 2.3.0 Beta 2 released</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/j8QRrjStPAQ/symfony-2-3-0-beta-2-released</link>
                    <description>&lt;p&gt;A week after the release of the first Symfony 2.3 beta, here is the second and last one.&lt;/p&gt;
&lt;p&gt;If you want to help us, please, test this version on your existing projects or play with it on a new one:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;Create a new project via Composer:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-bash"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;php composer.phar create-project symfony/framework-standard-edition somewhere/ 2.3.0-BETA2
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Download a ready-made project based on the Standard Edition
&lt;a class="reference external" href="http://symfony.com/download?v=Symfony_Standard_Vendors_2.3.0-BETA2.tgz"&gt;TGZ&lt;/a&gt;
or
&lt;a class="reference external" href="http://symfony.com/download?v=Symfony_Standard_Vendors_2.3.0-BETA2.zip"&gt;ZIP&lt;/a&gt;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Download some components via Github downloads:
&lt;a class="reference external" href="https://github.com/symfony"&gt;https://github.com/symfony&lt;/a&gt;/{COMPONENT_NAME}/archive/v2.3.0-BETA2.zip.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/j8QRrjStPAQ" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/symfony-2-3-0-beta-2-released</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Fri, 10 May 2013 19:25:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/symfony-2-3-0-beta-2-released#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/symfony-2-3-0-beta-2-released</feedburner:origLink></item>
                        <item>
                    <title>New in Symfony 2.3: Great new Features in the Console Component</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/MgW1DfD04tw/new-in-symfony-2-3-great-new-features-in-the-console-component</link>
                    <description>&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/8464e3ac-81f8-4a25-98af-2229596aaee8"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/8464e3ac-81f8-4a25-98af-2229596aaee8.png?format=40x40" alt="Peter Kruithof" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/8464e3ac-81f8-4a25-98af-2229596aaee8"&gt;Peter Kruithof&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony/pull/7300"&gt;#7300&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div class="section" id="progress-helper-enhancements"&gt;
&lt;h1&gt;Progress helper enhancements&lt;a class="headerlink" href="#progress-helper-enhancements" title="Permalink to this headline"&gt;¶&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;The &lt;a class="reference external" href="http://symfony.com/blog/new-in-symfony-2-2-better-interaction-from-the-console#displaying-a-progress-bar-for-long-running-tasks"&gt;console progress helper&lt;/a&gt;
was added in 2.2. For 2.3, several enhancements were made to the display like
avoiding too much flickering, or supporting UTF-8.&lt;/p&gt;
&lt;p&gt;There is also one new feature, the possibility to set the current progress of
the bar. That's interesting for instance when you are displaying the progress
of a file download, where a callback provides the current download progress:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3
4
5&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="c1"&gt;// advance the progress bar 1 unit&lt;/span&gt;
&lt;span class="nv"&gt;$progress&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;advance&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// set the progress bar manually&lt;/span&gt;
&lt;span class="nv"&gt;$progress&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;setCurrent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;75&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/263ba87b-8568-4a53-b543-5d14f1cbbfe0"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/263ba87b-8568-4a53-b543-5d14f1cbbfe0.png?format=40x40" alt="Saša Stamenković" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/263ba87b-8568-4a53-b543-5d14f1cbbfe0"&gt;Saša Stamenković&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony/pull/6368"&gt;#6368&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;div class="section" id="tablehelper"&gt;
&lt;h1&gt;TableHelper&lt;a class="headerlink" href="#tablehelper" title="Permalink to this headline"&gt;¶&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;A lot of people were asking for a way to nicely display a table from the
console. That's now possible in Symfony 2.3:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$table&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$app&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;getHelperSet&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;table&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nv"&gt;$table&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;setHeaders&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;ISBN&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Title&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Author&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;setRows&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;99921-58-10-7&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Divine Comedy&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Dante Alighieri&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;9971-5-0210-0&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;A Tale of Two Cities&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Charles Dickens&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;960-425-059-0&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;The Lord of the Rings&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;J. R. R. Tolkien&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;80-902734-1-6&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;And Then There Were None&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Agatha Christie&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
    &lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;$table&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$output&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;And here is how it would be displayed:&lt;/p&gt;
&lt;img src="http://symfony.com/doc/master/_images/table.png" alt="Table in the CLI" style="align: center; margin-bottom: 20px" /&gt;&lt;p&gt;I won't detail all the possible options as there is a nice &lt;a class="reference external" href="http://symfony.com/doc/master/components/console/helpers/tablehelper.html"&gt;cookbook&lt;/a&gt;
entry for this feature.&lt;/p&gt;
&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/c6e17bef-dd9a-46fd-ba8f-44f34842b7c9"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/c6e17bef-dd9a-46fd-ba8f-44f34842b7c9.png?format=40x40" alt="Jean-François Simon" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/c6e17bef-dd9a-46fd-ba8f-44f34842b7c9"&gt;Jean-François Simon&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony/pull/6368"&gt;#6368&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;div class="section" id="console-output-in-more-formats"&gt;
&lt;h1&gt;Console output in more Formats&lt;a class="headerlink" href="#console-output-in-more-formats" title="Permalink to this headline"&gt;¶&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Did you know that you can get the help for any given command in the XML
format? It has been possible since symfony 1, and it is heavily used by many
IDEs as a mean to wrap the Symfony CLI tool in a nice GUI.&lt;/p&gt;
&lt;p&gt;As of Symfony 2.3, this feature has been abstracted so that you can now get
the output in the Markdown, JSON, and XML format:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-bash"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;php app/console &lt;span class="nb"&gt;help &lt;/span&gt;some:command --format&lt;span class="o"&gt;=&lt;/span&gt;json

&lt;span class="nv"&gt;$ &lt;/span&gt;php app/console list --format&lt;span class="o"&gt;=&lt;/span&gt;json
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/0cdd644e-2a21-4beb-ba12-2637e40b9658"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/0cdd644e-2a21-4beb-ba12-2637e40b9658.png?format=40x40" alt="Florin Patan" /&gt;
        &lt;/a&gt;&lt;br /&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/750973b3-a841-4a21-8a50-b8befa249cd5"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/750973b3-a841-4a21-8a50-b8befa249cd5.png?format=40x40" alt="Jordi Boggiano" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/0cdd644e-2a21-4beb-ba12-2637e40b9658"&gt;Florin Patan&lt;/a&gt; and&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/750973b3-a841-4a21-8a50-b8befa249cd5"&gt;Jordi Boggiano&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony/pull/7841"&gt;#7841&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;div class="section" id="more-verbosity-levels"&gt;
&lt;h1&gt;More Verbosity Levels&lt;a class="headerlink" href="#more-verbosity-levels" title="Permalink to this headline"&gt;¶&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Some commands gives you a more verbose output when using the &lt;tt class="docutils literal"&gt;&lt;code&gt;--verbose&lt;/code&gt;&lt;/tt&gt;
flag (or &lt;tt class="docutils literal"&gt;&lt;code&gt;-v&lt;/code&gt;&lt;/tt&gt;). You can also remove all the output of a command by using the
&lt;tt class="docutils literal"&gt;&lt;code&gt;--quiet&lt;/code&gt;&lt;/tt&gt; flag (or &lt;tt class="docutils literal"&gt;&lt;code&gt;-q&lt;/code&gt;&lt;/tt&gt;).&lt;/p&gt;
&lt;p&gt;As of 2.3, you now have access to &lt;strong&gt;three levels&lt;/strong&gt; of verbosity:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-bash"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;php app/console foo --verbose&lt;span class="o"&gt;=&lt;/span&gt;1 &lt;span class="c"&gt;# equivalent to -v&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;php app/console foo --verbose&lt;span class="o"&gt;=&lt;/span&gt;2 &lt;span class="c"&gt;# equivalent to -vv&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;php app/console foo --verbose&lt;span class="o"&gt;=&lt;/span&gt;3 &lt;span class="c"&gt;# equivalent to -vvv&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Composer already takes advantage of this feature. Upgrade to the latest
version of Composer, and try using &lt;tt class="docutils literal"&gt;&lt;code&gt;-v&lt;/code&gt;&lt;/tt&gt; or &lt;tt class="docutils literal"&gt;&lt;code&gt;-vv&lt;/code&gt;&lt;/tt&gt; when running &lt;tt class="docutils literal"&gt;&lt;code&gt;composer
install&lt;/code&gt;&lt;/tt&gt;; you will see that Composer outputs interesting information that can
help you debug problems.&lt;/p&gt;
&lt;/div&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/MgW1DfD04tw" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/new-in-symfony-2-3-great-new-features-in-the-console-component</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Wed, 08 May 2013 15:59:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/new-in-symfony-2-3-great-new-features-in-the-console-component#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/new-in-symfony-2-3-great-new-features-in-the-console-component</feedburner:origLink></item>
                        <item>
                    <title>New in Symfony 2.3: Interactive Management of the parameters.yml File</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/GDdu4YpA1D8/new-in-symfony-2-3-interactive-management-of-the-parameters-yml-file</link>
                    <description>&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/c81121f4-fd7a-49b0-9284-cef4b0dde8e7"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/c81121f4-fd7a-49b0-9284-cef4b0dde8e7.png?format=40x40" alt="Christophe Coevoet" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/c81121f4-fd7a-49b0-9284-cef4b0dde8e7"&gt;Christophe Coevoet&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony-standard/pull/522"&gt;#522&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;One of the best practice when developing a Symfony application is to make it
configurable via a &lt;tt class="docutils literal"&gt;&lt;code&gt;parameters.yml&lt;/code&gt;&lt;/tt&gt; file. It contains information such as
the database name, the mailer hostname, and custom configuration parameters.&lt;/p&gt;
&lt;p&gt;As those parameters can be different on your local machine, your testing
environment, your production servers, and even between developers working on
the same project, it is not recommended to store it in the project repository.
Instead, the repository should contain a &lt;tt class="docutils literal"&gt;&lt;code&gt;paramaters.yml.dist&lt;/code&gt;&lt;/tt&gt; file with
sensible defaults that can be used as a good starting point for everyone.&lt;/p&gt;
&lt;p&gt;Then, whenever a developer starts working on the project, the
&lt;tt class="docutils literal"&gt;&lt;code&gt;parameters`.yml&lt;/code&gt;&lt;/tt&gt; file must be created by using the &lt;tt class="docutils literal"&gt;&lt;code&gt;parameters.yml.dist&lt;/code&gt;&lt;/tt&gt;
as a template. That works quite well, but whenever a new value is added to the
template, you must remember to update the main parameter file accordingly.&lt;/p&gt;
&lt;p&gt;As of Symfony 2.3, the Standard Edition comes with a new bundle that automates
the tedious work. Whenever you run &lt;tt class="docutils literal"&gt;&lt;code&gt;composer install&lt;/code&gt;&lt;/tt&gt;, a script creates the
&lt;tt class="docutils literal"&gt;&lt;code&gt;parameters.yml&lt;/code&gt;&lt;/tt&gt; file if it does not exist and allows you to customize all
the values interactively. Moreover, if you use the &lt;tt class="docutils literal"&gt;&lt;code&gt;--no-interaction&lt;/code&gt;&lt;/tt&gt; flag,
it will silently fallback to the default values.&lt;/p&gt;
&lt;p&gt;Please remember that storing password or any other sensitive information in
the &lt;tt class="docutils literal"&gt;&lt;code&gt;parameters.yml&lt;/code&gt;&lt;/tt&gt; file is not a good idea, and Symfony provides other
ways to do the same in a more secure way.&lt;/p&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/GDdu4YpA1D8" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/new-in-symfony-2-3-interactive-management-of-the-parameters-yml-file</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Tue, 07 May 2013 07:40:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/new-in-symfony-2-3-interactive-management-of-the-parameters-yml-file#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/new-in-symfony-2-3-interactive-management-of-the-parameters-yml-file</feedburner:origLink></item>
                        <item>
                    <title>Symfony 2.1.10 released</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/DF-70-XSpv8/symfony-2-1-10-released</link>
                    <description>&lt;p&gt;I've just released Symfony 2.1.10. It fixes quite a &lt;a class="reference external" href="https://github.com/symfony/symfony/blob/2.1/CHANGELOG-2.1.md"&gt;few bugs&lt;/a&gt;. Here are
some of the most interesting ones:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;bcb5400: [Form] Fixed transform()/reverseTransform() to always throw TransformationFailedExceptions&lt;/li&gt;
&lt;li&gt;2b554d7: [BrowserKit] remove validation related headers when needed&lt;/li&gt;
&lt;li&gt;2a531d7: Fix getPort() returning 80 instead of 443 when X-FORWARDED-PROTO is set to https&lt;/li&gt;
&lt;li&gt;c2bc707: fixed detection of secure cookies received over https&lt;/li&gt;
&lt;li&gt;54bcf5c: [Translator] added additional conversion for encodings other than utf-8&lt;/li&gt;
&lt;li&gt;da156d3: fix overwriting of request's locale if attribute _locale is missing&lt;/li&gt;
&lt;li&gt;047212a: [Yaml] fixed handling an empty value&lt;/li&gt;
&lt;li&gt;94a9cdc: [Routing][XML Loader] Add a possibility to set a default value to null&lt;/li&gt;
&lt;li&gt;9fcd2f6: [HttpFoundation] fixed the creation of sub-requests under some circumstances for IIS&lt;/li&gt;
&lt;li&gt;bec8ff1: Fix timeout in Process::stop method&lt;/li&gt;
&lt;li&gt;3780fdb: Fix Process timeout&lt;/li&gt;
&lt;li&gt;64a1d39: Fixed long multibyte parameter logging in DbalLogger:startQuery&lt;/li&gt;
&lt;/ul&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/DF-70-XSpv8" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/symfony-2-1-10-released</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Mon, 06 May 2013 19:52:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/symfony-2-1-10-released#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/symfony-2-1-10-released</feedburner:origLink></item>
                        <item>
                    <title>New in Symfony 2.3: Buttons support in Forms</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/VijvrqqDpCY/new-in-symfony-2-3-buttons-support-in-forms</link>
                    <description>&lt;div style="float: right; margin-left: 15px; margin-bottom: 15px; width: 200px; background-color: #fff7c4; padding: 7px"&gt;
    &lt;div style="float: left; padding-right: 7px"&gt;
        &lt;a href="https://connect.sensiolabs.com/api/alternates/ce56b01d-3588-445b-8595-feb39189a343"&gt;
            &lt;img src="https://connect.sensiolabs.com/api/images/ce56b01d-3588-445b-8595-feb39189a343.png?format=40x40" alt="Bernhard Schussek" /&gt;
        &lt;/a&gt;
    &lt;/div&gt;
    &lt;div style="float: left; width: 140px"&gt;
        &lt;p style="font-size: 80%; padding-bottom: 0"&gt;
            Contributed by&lt;br /&gt;
            &lt;a href="https://connect.sensiolabs.com/api/alternates/ce56b01d-3588-445b-8595-feb39189a343"&gt;Bernhard Schussek&lt;/a&gt;&lt;br /&gt;
            in &lt;a href="https://github.com/symfony/symfony/pull/6528"&gt;#6528&lt;/a&gt;.
        &lt;/p&gt;
    &lt;/div&gt;
    &lt;div class="clear_fix"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The first time I read about this feature, I was sceptical at best. Why would
you want to manage buttons in your forms as buttons are only a display thing?
I was wrong and once more, Bernhard did a great job implementing this new
feature.&lt;/p&gt;
&lt;p&gt;As of Symfony 2.3, you can add buttons to your forms, like any other fields:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3
4&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$form&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;createFormBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;name&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;text&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;save&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;getForm&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;When rendering the form with the canonical &lt;tt class="docutils literal"&gt;&lt;code&gt;{{ form_widget(form) }}&lt;/code&gt;&lt;/tt&gt;
instruction, the button will be rendered as well. But that alone would not be
very interesting. So, what is it really about?&lt;/p&gt;
&lt;p&gt;Submit buttons in forms are not really useful except for when there are more
than one; the logic that processes the form will probably be different
depending on the button that was clicked by the user:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3
4
5&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$form&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;createFormBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;name&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;text&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;save&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;save_and_add&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;getForm&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;And that's a situation where managing buttons in the form framework starts to
make sense. From your controller, you can now check which button was clicked
with the new &lt;tt class="docutils literal"&gt;&lt;code&gt;isClicked()&lt;/code&gt;&lt;/tt&gt; method and act accordingly:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$form&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;isValid&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// ... do something&lt;/span&gt;

    &lt;span class="c1"&gt;// the save_and_add button was clicked&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$form&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;save_and_add&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;isClicked&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// probably redirect to the add page again&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="c1"&gt;// redirect to the show page for the just submitted item&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;But there is more than that: the validation group can be different for each
button. That comes in handy when working with wizard forms:&lt;/p&gt;
&lt;div class="literal-block"&gt;&lt;div class="highlight-php"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;1
2
3
4
5
6
7
8&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nv"&gt;$form&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;createFormBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="c1"&gt;// ...&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;nextStep&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;previousStep&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;submit&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="c1"&gt;// disable validation&lt;/span&gt;
        &lt;span class="s1"&gt;&amp;#39;validation_groups&amp;#39;&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="k"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="na"&gt;getForm&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Of course, this feature is entirely optional and for forms with only one
submit button, you can keep the current way of doing things.&lt;/p&gt;
&lt;p&gt;This new feature is fully documented in the &lt;a class="reference external" href="http://symfony.com/doc/master/book/forms.html#submitting-forms-with-multiple-buttons"&gt;official&lt;/a&gt;
&lt;a class="reference external" href="http://symfony.com/doc/master/book/forms.html#groups-based-on-the-clicked-button"&gt;documentation&lt;/a&gt;;
but having a look at the &lt;a class="reference external" href="https://github.com/symfony/symfony-docs/pull/2489"&gt;documentation pull request&lt;/a&gt; might be more
convenient.&lt;/p&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/VijvrqqDpCY" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/new-in-symfony-2-3-buttons-support-in-forms</guid>
                    <author>Fabien Potencier</author>
                    <pubDate>Mon, 06 May 2013 10:25:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/new-in-symfony-2-3-buttons-support-in-forms#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/new-in-symfony-2-3-buttons-support-in-forms</feedburner:origLink></item>
                        <item>
                    <title>A week of symfony #331 (29 April -&gt; 5 May 2013)</title>
                    <link>http://feedproxy.google.com/~r/symfony/blog/~3/iJERZ9sPVg8/a-week-of-symfony-331-29-april-5-may-2013</link>
                    <description>&lt;p&gt;This week, the &lt;a href="http://symfony.com/blog/symfony-2-3-0-beta-1-released"&gt;first beta of Symfony 2.3.0&lt;/a&gt; was released. The most relevant additions were the new &lt;a href="http://github.com/symfony/symfony/commit/0bffdff56fa79609573d8406f1ac13f86e715a5a"&gt;comparison validators&lt;/a&gt;, the &lt;a href="http://github.com/symfony/symfony/commit/258ca07545d5390cb6aa6b2a90caeda7dc4346c6"&gt;requirement&lt;/a&gt; of the debug component to maintain BC, and the possibility to &lt;a href="http://github.com/symfony/symfony/commit/7671e5c85d9abc394b2aad9a4b2ad155d882d463"&gt;log fatal errors&lt;/a&gt; in production. In addition, &lt;a href="http://silex.sensiolabs.org/"&gt;Silex&lt;/a&gt;, the Symfony micro-framework, released its long-awaited 1.0.0 version.&lt;/p&gt;

&lt;h2&gt;Symfony2 development highlights&lt;/h2&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.1"&gt;2.1 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/8757ad45a814d2ef28860bc72796cf249e4a70bb"&gt;8757ad4&lt;/a&gt;: &amp;#91;Process&amp;#93; termsig must be used instead of stopsig in exceptions when a process is signaled&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/10dea948f38a684336fa965176529917ff7fe533"&gt;10dea94&lt;/a&gt;: &amp;#91;Filesystem&amp;#93; fixed copy() is not working when open_basedir is set&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/25b8b84f65116935b2873dce71616c6ca82c74bd"&gt;25b8b84&lt;/a&gt;: &amp;#91;BrowserKit&amp;#93; fixed a recent BC break related to empty cookie domains&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/2a531d78befd5431b3b39e4d60b26cd813042c29"&gt;2a531d7&lt;/a&gt;: &amp;#91;HttpFoundation&amp;#93; fixed getPort() returning 80 instead of 443 when X-FORWARDED-PROTO is set to https&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/2b554d77fa882ffa4abe5c884197782254c580b5"&gt;2b554d7&lt;/a&gt;: removed validation related headers when needed&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/cfebe47000d2a56129d1f953c4fb489aeb3e532a"&gt;cfebe47&lt;/a&gt;: &amp;#91;DependencyInjection&amp;#93; fixed wrong method in findTaggedServiceIds()&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/7b2ebbfa4120f079bbc8eb8d0b46821d30c05d74"&gt;7b2ebbf&lt;/a&gt;: &amp;#91;Form&amp;#93; fixed String validation groups are never interpreted as callbacks&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/bcb540021a22b1c73957f18f420f2b9024dab464"&gt;bcb5400&lt;/a&gt;: &amp;#91;Form&amp;#93; fixed transform()/reverseTransform() to always throw TransformationFailedExceptions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/2.2"&gt;2.2 changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/609df321aafe8641cabdbc9ea1ea509ed36df4b6"&gt;609df32&lt;/a&gt;: &amp;#91;Swiftmailer&amp;#93; bumped allowed versions&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/dcced01fd5667593b67f67cd627ba1f4f0ac903e"&gt;dcced01&lt;/a&gt;: &amp;#91;Form&amp;#93; improved multi-byte handling of NumberToLocalizedStringTransformer&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/59b78c7c166ad4e201d09fd31629f0162618a507"&gt;59b78c7&lt;/a&gt;: &amp;#91;Validator&amp;#93; fixed $traverse and $deep is passed to the visitor from Validator::validate()&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://github.com/symfony/symfony/commits/master"&gt;Master changelog&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/0bffdff56fa79609573d8406f1ac13f86e715a5a"&gt;0bffdff&lt;/a&gt;: &amp;#91;Validator&amp;#93; added comparison validators (EqualTo, NotEqualTo, LessThan, LessThanOrEqualTo, GreaterThan, GreaterThanOrEqualTo, IdenticalTo, NotIdenticalTo)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/7c729f54b1f3bca69dc0ce094e36c51f1ff25c64"&gt;7c729f5&lt;/a&gt;: &amp;#91;PropertyAccess&amp;#93; added negative path replaces and optional string arguments for PropertyPathBuilder&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/441222eda7b0885c836bc240e375824d86e2e95b"&gt;441222e&lt;/a&gt;: &amp;#91;Form&amp;#93; *_SET_DATA events are now guaranteed to be fired after the initial children were added&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/258ca07545d5390cb6aa6b2a90caeda7dc4346c6"&gt;258ca07&lt;/a&gt;: &amp;#91;HttpKernel&amp;#93; moved symfony/debug to be a requirement (to maintain BC as the code was part of HttpKernel before)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/7671e5c85d9abc394b2aad9a4b2ad155d882d463"&gt;7671e5c&lt;/a&gt;, &lt;a href="http://github.com/symfony/symfony/commit/4dcee0a528458a60f50892ba531b48933dec3bbe"&gt;4dcee0a&lt;/a&gt;: implemented the logging of fatal errors in production&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/f44db48ebe5c449fc3934ddedf65f15968bfb9a3"&gt;f44db48&lt;/a&gt;: &amp;#91;DependencyInjection&amp;#93; added suggestion on ParameterNotFoundException&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/729db0fde7bd224697404390e92bf5c7dd8bc9a9"&gt;729db0f&lt;/a&gt;: &amp;#91;DependencyInjection&amp;#93; added suggestion on ServiceNotFoundException&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/e989d8bd0be3129e7074a90ed3f594284d783b1c"&gt;e989d8b&lt;/a&gt;: &amp;#91;DependencyInjection&amp;#93; added some check before guessing similar parameters&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/9cca065d8599d47ab78d24a5794e2ea1be3486d3"&gt;9cca065&lt;/a&gt;: &amp;#91;FrameworkBundle&amp;#93; placed initialization of $bundlesDir out of foreach loop&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/90a7e8634954f469e73d02f8f3bb28306f348bb2"&gt;90a7e86&lt;/a&gt;: &amp;#91;Validator&amp;#93; added missing translation for new validators&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/549a308a37c0b2913afab3ed2791bc123c087914"&gt;549a308&lt;/a&gt;: &amp;#91;Form&amp;#93; fixed CSRF error messages to be translated and added csrf_message option&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/90a20d78357f720493ec8905f41c962766506b83"&gt;90a20d7&lt;/a&gt;: &amp;#91;Translation&amp;#93; made translation domain defaults in Translator consistent with TranslatorInterface&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/symfony/symfony/commit/82ff36055ca7ce4fad66f2eda8f64e35cba567f3"&gt;82ff360&lt;/a&gt;: &amp;#91;Form&amp;#93; removed deprecated exceptions&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;They talked about us&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.leaseweblabs.com/2013/05/7-habits-for-creating-highly-effective-symfony-bundles/"&gt;7 habits for creating highly effective Symfony bundles&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://css.dzone.com/articles/wheel-symfony-stopwatch"&gt;The Wheel: Symfony Stopwatch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://flink.com.au/ramblings/bye-bye-hook-hello-symfony-fields-widgets-and-formatters-d8"&gt;Bye, bye hook, hello Symfony: fields, widgets and formatters in D8&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.maisdisdonc.com/2013/05/symfony2-retourner-un-json-depuis-un.html"&gt;Symfony2: Retourner un JSON depuis un contrôleur&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://yosymfony.com/symfony-2-3-muy-cerca/"&gt;Symfony 2.3 muy cerca&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://showmethecode.es/php/silex/silex-idiorm-y-paris-provider/"&gt;Silex: Idiorm y Paris Provider&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://techportal.inviqa.com/2013/05/02/functionally-testing-your-application-using-mink/"&gt;Functionally Testing Your Application Using Mink&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ardianys.com/2013/04/symfony2-test-console-command-which-use.html"&gt;Symfony2: Test console command which use another service (dependency injection)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.mogumagu.com/wp/wordpress/?p=1274"&gt;Symfony2のインストールに失敗した：[ERROR 3070] complex type ‘service’: The content model is not determinist.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://showmethecode.es/php/twig/twig-js-plantillas-twig-en-el-lado-del-cliente/"&gt;Twig.js: Plantillas Twig en el lado del cliente&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bootstrap.braincrafted.com/"&gt;Bootstrap for Symfony2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://php.deveronline.com/2013/03/symfony-stoping-post-validation-if-normal-validation-fails.html"&gt;Symfony: stoping post validation if normal validation fails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.symfony.es/noticias/2013/05/04/se-publica-la-primera-beta-de-symfony-2-3-0/"&gt;Se publica la primera beta de Symfony 2.3.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

                        &lt;hr / style="margin-bottom: 5px"&gt;
                        &lt;div style="font-size: 90%"&gt;
                        Be trained by &lt;a href="http://trainings.sensiolabs.com/"&gt;Symfony experts&lt;/a&gt;
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-24&lt;/a&gt; Portland
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/symfony-certification"&gt;2013-05-27&lt;/a&gt; Paris
                                                - &lt;a href="http://trainings.sensiolabs.com/en/training/mastering-symfony2-framework"&gt;2013-05-30&lt;/a&gt; Paris
                                                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/symfony/blog/~4/iJERZ9sPVg8" height="1" width="1"/&gt;</description>
                    <guid isPermaLink="false">http://symfony.com/blog/a-week-of-symfony-331-29-april-5-may-2013</guid>
                    <author>Javier Eguiluz</author>
                    <pubDate>Sun, 05 May 2013 13:56:00 +0200</pubDate>
                    <comments>http://symfony.com/blog/a-week-of-symfony-331-29-april-5-may-2013#comments-list</comments>
                <feedburner:origLink>http://symfony.com/blog/a-week-of-symfony-331-29-april-5-may-2013</feedburner:origLink></item>
            </channel>
</rss>
