This week, the Symfony2 codebase was heavily updated to use shorter bundle names, removing the 'Bundle' suffix. However, in the last IRC meeting it was decided to revert that decision, after a lengthy discussion in the mailing list.

In addition, Symfony2 introduced a new API sub-namespace: "a set of public interfaces that keeps the components decoupled but also allows for more optional features to be added". Among many other things, this API will allow to use keys instead of messages for translation, a long-standing request for lots of symfony developers.

Development mailing list

Symfony2 development highlights

Changelog:

  • 3bf6736: [DoctrineBundle] made sure that the Doctine cache is not shared between different applications
  • faf9782: renamed Twig TransExtension to TranslationExtension
  • 786f165: removed Assert prefix from all constraints, renamed annotation namespace to assert
  • 849694b: added an UPDATE.md file to explain how to upgrade
  • 49063a5, 315147c, 082fd73, 751ba4d, fb7e87d, d0e2b5b: updated codebase to use shorter bundle names
  • 260efb3: [AsseticBundle] removed configuration of default output strings
  • 04a257d: [AsseticBundle] moved filters into individual config files which must be explicitly loaded. You must now explicitly load those filters you want to use in your app
  • 9e5b649: [AsseticBundle] added config for image filters
  • 825d672: [AsseticBundle] added lessphp filter
  • 0199b5c: [HttpFoundation] fixed guesser tests on Windows if Fileinfo extension is not loaded
  • dbb1866: [HttpFoundation] disabled FileBinaryMimeTypeGuesser for Windows OS
  • 49d6764, 1ec2886: [Console] moved Output constants to OutputInterface
  • eded17a: [ClassLoader] added ClassLoaderInterface (reverted)
  • 5e0c046: [FrameworkBundle] removed %error_handle.level% parameter
  • f77b940: [HttpFoundation] replaced the option argument of Session by defaultLocale
  • ce4a8de: [FrameworkBundle] removed the session.default_locale parameter
  • 40606ed: [FrameworkBundle] removed templating.assets.version and templating.assets.base_urls parameters
  • 68d340b: [FrameworkBundle] removed translator.fallback_locale parameter
  • c8fe15b: [FrameworkBundle] removed exception_listener.controller parameter
  • bdc07ad: [WebProfilerBundle] converted the configuration to the new system
  • 6aa8a17: [ZendBundle] removed all non-class parameters
  • fcea63c: [WebProfilerBundle] prefixed all services with web_profiler
  • ff5dd41: [SwiftmailerBundle] removed the swiftmailer.base_dir parameter
  • f92055c: [Validator] renamed methods that do not follow CS (requiredOptions -> getRequiredOptions, targets -> getTargets, defaultOption -> getDefaultOption)
  • 07838c9: [FrameworkBundle] removed the possibility to change the method name for validation static method loader (as it would break third-party bundles)
  • 16a98cf: [Validator] added a Metadata factory that can be used with ValidatorInterface::validateValue()
  • 33add37: [FrameworkBundle] removed the validator.annotations.namespaces parameter and moved the service to the XML file
  • eb21f5b: [FrameworkBundle] moved some validation related services to the XML services file
  • c51b716, daccbf4: [Config] simplified DirectoryResource to only allow one regex
  • e2f317c: [AsseticBundle] added coalescing directory resources that check the kernel for bundle templates
  • 5465510: [Process] changed run() behavior to always populate getOutput() and getErrorOutput()
  • 2bc8c5f: [AsseticBundle] moved some parameter defaults to Configuration
  • 98b3a2d: [AsseticBundle] fixed twig classes for api changes in assetic
  • b9883a3: [Config] improved the exception when a resource cannot be imported. This improves, for example, the exception one would receive if they tried to import a resource from a bundle that doesn't exist
  • e6d4734: [AsseticBundle] cleaned up php templating support
  • 06074c3: [AsseticBundle] added twig support for asset packages
  • 39f8175: [FrameworkBundle] when there are multiple nested exceptions, this hides the stacktrace from all exceptions by default

Documentation

New job postings

  • Symfony developer at Let's Loop - full-time based in Madrid, Spain and London, United Kingdom (teleworking also possible) - Contact: chris [at] letsloop [dot] com
  • Symfony developer at Gemin-i.org - full-time based in London, United Kingdom - Contact: support [at] gemin-i [dot] org

New developers for hire

  • Aleksander Roj: Canadian Symfony application developer located in the GTA with over 4 years of object-oriented programming including PHP5 (symfony) and other
  • Alain Hernandez (alainhl@gmail.com): I have been developing Web Application with Apache, OOP, PHP, Symfony, Propel, Doctrine, JQuery, CSS, XML, Javascript, MySQL, PostgreSQL and Oracle for more than 4 years. I am based in Orlando, FL, US.

Updated plugins

  • apostropheBlog:
    • update the category associations of engine pages and blog & event slots when migrating from 1.4
    • the slot templates for the blog now use the partial _meta that the same normal blog templates use
    • create the blog_admin and blog_author permissions if they are missing, grant them to the admin and editor groups respectively if they exist
  • apostrophe:
    • create a_page_to_category with the appropriate constraints
    • new button slot now opens on edit view by default
    • all classes and methods now have docblock comments

New symfony powered websites

They talked about us

Published in #A week of symfony