Dependency Injection, one of the key components of Symfony2, was heavily refactored during this week. Meanwhile, four new blogs joined to the hundreds of sites that blog regularly about symfony.
Development mailing list
- Discussions about Symfony2 Sandbox & Cache, symfony 1.2 maintenance / contribution and Symfony plugin README breakage
Development highlights
Symfony 2.X branch:
- ab26f9f: [OutputEscaper] moved __get() from Escaper to ObjectEscaper
- fe7e01c: [OutputEscaper] added magic __isset() method to object escaper
- 0fbb1b9: cleaned up the DI extension loading mechanism
- 4375594: replaced Container->hasParameter() with Container->getParameterBag()->has() in ExceptionFormatter
- 44a16fc: [Finder] fixed exclude iterator (now only match with the relative path)
- fb4bd35: refactored the controller manager, moved generic parts to the HttpKernel component
- 0163178: changed the BundleInterface::buildContainer() signature
- b8f29f1, 6462814, 826e615: [Framework] cleaned up command registration magic
- 92130c3: updated bootstrap.php
- 7796eb2: merged BuilderConfiguration and Builder classes into a new ContainerBuilder class
- 6bad580: [DependencyInjection] moved ContainerBuilder::resolveValue() to ParameterBag
- 47fd5e8: [DependencyInjection] fixed placeholder management in parameter values
- 2a051b5: moved DI extensions classes to their own sub-namespace
- ca87621, 1dd5b61, 44757b0: [DependencyInjection] added a check for the class name when dumping a container to PHP
- 82ec700: [Console] fixed InputDefinition setArguments must reset hasAnArrayArgument
Development digest: 78 changesets, 15 bugs reported, 25 bugs fixed, 2 enhancements suggested, 1 enhancement closed, 2 documentation defects reported, 1 documentation defect fixed, and 15 documentation edits.
Documentation
New Job Postings
- Expert Technologies (symfony 1.4 & 2, doctrine, jquery) at Social Invent - full-time based in Lille, France - More information
- Theodo: Based in Paris, Theodo is a development company specialised in symfony with a team of experts who have been using symfony full-time for at least two years, 1.0 to 1.4, Doctrine and Propel. Theodo has accompanied large clients on complex web projects from the technical specifications to the delivery.
New symfony bloggers
- Olivier Balais (feed) (French)
- Jonathan Nieto (feed) (English, and Spanish)
- Just Blog, No More... (feed) (English)
- Hugo Hamon (feed) (English, and French)
Plugins
- New plugins
- kmFormExtraPlugin: Provides some widgets and validators for symfony 1.2 - 1.4.
- sfMaskedInputPlugin: Contains one widget sfWidgetFormMaskedInput which masks an input field by a given alphanumerical mask.
- sfDIPlugin: Mediator based plugin for integrating heterogeneous data.
- psPageableFormPlugin: Provides pageable (multipage) form functionality.
- sfDependentSelectPlugin: Widgets for dependents selects and action for automatize AJAX calls.
- sfTemplatingPlugin: use sfParameterHolder for parameters, improved phpdoc consistency, added HTML templating engine, added sfTemplatingTemplateRenderer class, added template renderers, improved API extensibility, added configuration for template directory, added template filesystem loader, improved filesystem loader path prefixing, refactored HTML escaping from engine to renderer, made layout extending more flexible
- sfEnvironmentFixturesPlugin: corrected pear install instructions, new function names to avoid collisions, fixed recursive loading issue, fixed double plugin loading issue, refactored to allow other plugins to determine environment fixtures directory
- pmPropelGeneratorPlugin: tweaked styles, added disabled buttons on conditional actions, added show as a default object_action, fixed internationalization error, fixed show and new action, bugfix when disabled actions throws errors, bugfix on show_when statement
- sfPhpunitPlugin: added post-install hook, added alias to phpunit:runtest task
- lyMediaManagerPlugin: existence of media root directory is now checked in controller, created form to add a subfolder directly from icons view, created form to upload a file directly from icons view
- sfDoctrineJCroppablePlugin: added a validator to check for bad crop selections, stopped failing on missing images
- ExtjsGeneratorPlugin: added a way to update records from the grid, added query_method support to combo action, made remote combo's the default, enabled remote combo's for the filterpanel, refactored ExtjsGenerator::getFormCustomization, started implementing remote combo filtering, cleaned up unused attributes in some of the widgets, added support for paged remote combos, added app.yml options for export and remote combos, fixed a bug with boolean columns that had a renderer, refactored renderField and getColumnGetter, fixed a bug in columnmodel generation for foreign keys with plugins, fix to get column getters when not in the fields list
- sfDoctrineActAsTaggablePlugin: created a new tagWidget that is more robust, added tag-input classname to the input for the new tag widget so that it is compatible with pkTagahead if necessary
- csDoctrineActAsSortablePlugin: fixed useless ORDER BY in UPDATE query
- sfTrafficCMSPlugin: fixed bug in date format
- sfPropelActAsCommentableBehaviorPlugin: major restructuring to take advantage of Propel15 features
- sfGuardPlugin: fixed random generator for RememberMe keys, added missing file in package, made sfGuardFormSignin more flexible (also extends the BaseForm class now), added missing connection parameters, fixed inactive users can still login to the system
- sfProjectAnalyserPlugin: added analysis of lib class of project
- sfDoctrineGuardPlugin: fixed random generator for RememberMe keys
- sfJqueryFormValidationPlugin: fixed invalid error reporting setting
- apostropheBlogPlugin:
- author field should be unset when not logged in as an admin
- fixed a bug designed into the blog sidebar relating to tags and the way the blog admin handled form submissions for the page
- fixed a bug created from bringing over the new tag widget
- brought new tag widget over to Events
- when slugifying a blog post we need to unescape the HTML first as the slugifier expects a real UTF8 string
- fixed categories bug where the permissions check was not wrapped around the edit button
- apostrophePlugin:
- aUserAdmin now uses a filter subclass that removes most fields preventing explosive memory use when interesting relations are added
- group admin needs manageable memory usage too
- getAncestorsInfo now has an optional $livingOnly flag to return only ancestors that are not archived
- getAccordionInfo no longer returns archived ancestors when $livingOnly is true
- added a class to the image slot so that it mimicks the slideshow slot 'a-image-meta'
- fixed a bug with the title being a link in the feedItem template
- updated the aFeed slot to accept options for passing attributes and styles through the feed in addition to just markup
- you can now edit a previously cropped slideshow properly
- createCrop replaced with findOrCreateCrop which doesn't generate a duplicate slug error when you crop to the same size you had before
- implemented executeUpdateMultiplePreview, now you get a crop preview when you add that first image to the slideshow
- sfAdminDashPlugin: changed admin header link to new homepage_url property
- vjCommentPlugin: adjust schema for the new sfDoctrineGuardPlugin version
- WithFit: (English) WithFit helps you track, improve, and share your fitness. It's completely free and easy to use.
- Taraftarsan: (Turkish) A Football Social Network
They talked about us
- Symfony 1.4 – Admin Generator – Tris sur les colonnes étrangères
- Installation et premiers pas avec le plugin Symfony sfImageTransformExtraPlugin
- Jornadas Symfony: Symfony2
- Symfony + Git + Capistrano = Capifony
- How to achieve modularity within symfony/doctrine projects
- lyMediaManagerPlugin 0.5.1
- Второй Symfony Camp UA – Завершился!
- personalizzare i filtri nel backend – 2
- Video de Introducción a symfony en decharlas
- Why I wouldn’t use Symfony for a new project
- Video de la charla sobre Doctrine en decharlas
- Domesticando las Vistas de symfony
- Admin generator en symfony
- Define delegate methods for your table object in a Doctrine behaviour using TableProxy
- Symfony en España. Caso práctico I: voota.es
- Symfony en España. Caso práctico II: Symfony en la gestión de un centro de computación avanzada
- sfWidgetFormTextareaTinyMCEWithLang
- Создаем собственную тему для CRUD генератора в symfony
- Symfony Day Cologne and a symfony workshop
- sfWidgetFormDoctrineJQueryAutocompleterAndClear
- Nice urls with symfony
- 国外主流PHP框架比较-CodeIgniter、CakePHP、ZendFramework、Symfony
- Symfony に関する新事実
- CruiseControl + Symfony = Continous Build
- Symfony 2 ~ Probándolo
- Umkreissuche mit symfony und Doctrine
- Cómo configurar un proyecto en Symfony con Netbeans 6.9
- symfonyとは?
- symfonyを使ってみた所感
- How to change CSRF attack message in Symfony 1.2
- Creando un proyecto en Symfony con PortgreSQL desde cero
- Language conditional caching in symfony
- Symfony expliqué à mon boss
- Symfony Doctrine find to get Object
- Symfony 2.0 preview
- Jornadas de symfony en Castellón
- Writing good MVC code with the symfony framework
- Want the source code of the blog?
- ‘Pick or create’ embedded form the propel way