This week, symfony project unveiled symfony components, a set of standalone libraries and components ready to be used in any PHP project. In addition, symfony performance got a huge boost with improvements in cache manager and a new option for routing sub-framework.
Development mailing list
- Discussions about embedded forms, project intiation wizard and symfony subversion and git mirror
Development highlights
- r16733: [1.2, 1.3] fixed duplicated code in sfWidgetFormSchema
- r16738: [components] created the components directory
- r16739: [components] created the dependency injection component directory
- r16741: [dependency_injection] added the first few classes of the dependency injection component
- r16752: [components] added the YAML component
- r16759: [1.3] added YAML as an external component
- r16800: [dependency_injection] added the service container builder
- r16834: [1.1, 1.2, 1.3] fixed flag upon unregistering of core autoloader
- r16840: [dependency_injection] added loaders and dumpers for YAML
- r16844, r16845, r16846, r16847: [1.0, 1.1, 1.2, 1.3] removed @error suppression in sfFileCache
- r16896: [dependency_injection] added the PHP and Graphviz dumpers
- r16897: [1.0, 1.1, 1.2, 1.3] replaced getmypid() by tempnam() in cache classes to be thread-safe
- r16899: [1.0, 1.1, 1.2, 1.3] optimized windows rename() problem hack
- r16905, r16907: [1.0, 1.1, 1.2, 1.3] Avoided unnecessary calls to md5(serialize()) by moving determination of whether a partial is cacheable to before the cache key is generated. BIG optimization when sf_cache==true
- r16910: [dependency_injection] fixed XML dumper when there is no parameter or service
- r16911: [1.2, 1.3] fixed routing slowness for big numbers of routes
- r16929: [1.2, 1.3] optimized route serialization when using a file cache backend
- r16938: [1.2, 1.3] fixed internal URI is not reset after a negative match
- r16941: [1.3] fixed sfCoreAutoload which was broken on case-sensitive OS
- r16942: [1.0, 1.1, 1.2, 1.3] removed the web debug toolbar when the response status code is in the 3xx range
- r16944: [1.3] fixed sfWidgetFormSchemaFormatter::generateLabelName should use humanize function for consistency
- r16948: [1.2, 1.3] replace all getColumnName() occurrences to getName() as getColumnName() is deprecated in Propel 1.3
- r16949: [1.2, 1.3] added a new lazy_routes_deserialize optimization option
- r16954: [1.3] fixed case-insensitivity of core autoload, added regression test. removed non-class/interface files from autoloader. removed trailing slash from core autoload base directory to match symfony standards (will be BC with 1.2 projects' ./symfony cli file).
- r16955: [1.3] minor optimization to sfCoreAutoload::make()
- r16980: [1.3] removed the not so useful return value of some sfPatternRouting class
- r16982: [1.3] moved functional test fixtures
- r16987: [1.3] replaced harcoded POST, PUT, and DELETE strings to the sfRequest equivalent
- sfDoctrinePlugin:
- r16952: [1.2, 1.3] fixed issue with generated accessors not using camel case
- r16953: [1.2, 1.3] fixed case sensitive typo
- r16959: [1.2, 1.3] fixed issue where m2m relationships are all unlinked then readded
- r16964: [1.2, 1.3] fixed sfValidatorDoctrineChoiceMany and reverted change to make it equal to Propel
- sfPropelPlugin:
- r16976: [1.2, 1.3] fixed Propel forms, filters, and admin generator when column names contain uppercase letters
- ...and many other changes
Development digest: 289 changesets, 36 bugs reported, 42 bugs fixed, 6 enhancements suggested, 11 enhancements closed, 3 documentation defects reported, 1 documentation defect fixed, and 32 documentation edits.
Documentation
- Updated Italian translation of Jobeet tutorial
- New Symfony User Group Vienna page
- Updated How to use DB Designer 4 to create your schema.xml page
- Updated Jobeet / Practical symfony book:
- chapter 11: fixed typo
- chapter 20: fixed missing abstract keyword for PluginJobeetAffiliateTable class
- chapter 22: fixed wrong modules name at component section
- chapter 23: fixed typo, fixed file name to ProjectConfiguration class, added backend_dev.php to the list of files not to deploy in production server, fixed typo in deployment section
New Job Postings
- Symfony/PHP Developers at PrestaConcept - full-time based in Lyon (France) - Contact: info]at[prestaconcept]dot[net
- Kasper Garnæs: freelance web developer based in Copenhagen, Denmark. 5+ years of experience with PHP, Javascript and CSS. Implemented several social networks using symfony.
- Studio On The Brink: is a web development agency in Plattsburgh, NY. We develop rich Web 2.0 applications for global business.
- PrestaConcept: a web development agency based in Lyon (France) who implement Internet application with large added value. We use Symfony since version 1.0 and we attach great importance to the development of Symfony to provide technically advanced applications and tailored to the customers specifications.
New symfony bloggers
- VHCSoft JSC (feed) (Vietnamese)
- Development Experience (feed) (English)
- PHPBSD.net - Symfony (feed) (Spanish)
- Lars Olav Torvik's blog (feed) (English)
Plugins
- New plugins
- sfSympalCommentsPlugin: comments component used by other sfSympal based plugins.
- pkMediaCMSSlotsPlugin: pkContextCMS slots for our pkMediaPlugin. Embed stills, slideshows and video.
- pkMediaPlugin: manage, select, and embed both still images and video. Includes REST API.
- sfFCKEditorPlugin: a new sfForm widget that handles FCKEditor.
- LetsCodOpenInviterPlugin: enables website users to grab contacts from different email providers (yahoo, Gmail, hotmail) and send them invitations mail
- sfViewableFormPlugin: adds support for a config/forms.yml file for making global view-related changes to your forms
- lcOpenInviterPlugin: allow users to grab their contacts form different email providers (like hotmail, yahoo,gmail) and send them invitation email to their website
- sCryptofCaptchaPlugin: generates a higly configurable captcha to block spam and robots. The script is based on the Cryptographp library (see www.captcha.fr)
- sfWorkbenchPlugin: (no description)
- sfSympalPlugin:
- fixed some issues with the tests
- added the name of the plugin each content type is used in in the database
- refactored sympal install code
- updated README for how to enable sympal
- added some tests for the plugin manager
- updated default plugin install to have more inline editable content
- updated pages content type so view template allows title to be inline edited
- optimized queries
- implemented solution for adding new methods to actions when sympal is installed
- added trac to default menu
- fixed default installation to link to super admin
- combined all auth/user stuff in to sfSympalUserPlugin
- refactored commments out of core
- fixes to sympal installer
- removed batch actions from plugin manager and fixing strict notices
- removed plugin manager checkboxes
- fixed bug with sympal content slots default values
- fix for using templates where path has dot in it
- implemented image uploading in to rich text editor
- refactored yui file uploading to use form framework
- hack for embedded forms file uploading to work
- implemented a new menu system
- cleaned js for new menu manager
- initial entry of new finished menu manager
- lots of bug fixes and small enhancements
- implemented YUI tabview for admin generator rendering of forms fieldsets and embedded forms
- made secondary sub menu show children
- implemented jQuery rich date input for now
- updated menu manager to use new side bar
- fixed bug with default menu to show in menu manager
- fixed changeLayout() to be more flexible with its input parameter
- fixed label for content type embedded form and a few other bug fixes
- sfSympalBlogPlugin: fixed inline editing content properties of blog post view, initial entry of blog helper, updated plugin to work with latest sympal user/auth changes, created branches folder and moved trunk to branches/1.2, changed blog post view so it works with comments
- pkToolkitPlugin: added forgotten $conn parameter, fixed some bugs in early zend code, hack around sfPager's problems with being displayed when there is only one page, more pager hacks for correct operation with only one page of results, pkDump::dump serializes the value passed to it as valid PHP code (this works for arrays (associative and flat), strings, numbers, null and false. It doesn't work for objects), fixed delete-from-doctrine-and-zend
- sfUnobstrusiveWidgetPlugin: removed "needs_multipart" option from sfUoWidgetFormInputText widget, added tinymce dynamics package
- pkContextCMSPlugin: added asynchronous lucene search index updates via pkContextCMS:update-lucene task, much better performance for edits, documented cron job setup, removed stray reference to lucene_update index in pkContextCMSPage, the outer class="pk-context-cms-slot" div now also gets the class "pk-context-cms-slot-has-outline" if it is editable right now AND it actually uses outlines, fixed search pagination, tweaked breadcrumbs, changes to work with media plugin, added IE7 stylesheets, support for non-AJAX editing of global slots, fixed area bug, cropped logo from media slot, tweaked slot submit buttons, .pk-context-cms-content renamed to .pk-context-cms-normal-view
- DbFinderPlugin: fixed Doctrine tests, added DbFinderRoute::getObjectPager() method, fixed package.xml
- sfZnForumPlugin: initial import
- sfOfflineFilterPlugin: corrected README
- sfGridPlugin: several improvements regarding the imap-connection, several bug fixes and minor improvements regarding extendability, added capability to add
title, added limited capability to allow OR-criteria when searching in IMAP, added attachement size, fixed some bugs, throws exception when connection cannot be made - sfExtjsThemePlugin: added listExport methods, fixed persistant filtering, added built in export and csvexport actions, fixed filtertwincombo to work with custom store, fixed filter_field set to combo to work for non-foreign columns, changed foreignfieldcolumns to switch to filtertwincombo for the filter, updated base-x to 3.1, fixes for grid filterevents to properly handle pagesize changed via a pagingtoolbar plugin
- pmHighslideJSPlugin: bugfixes
- sfBugsPlugin: added Title field to the schema.yml, Javascript helper is with capital letter now, fixed some design bugs, included the prototype.js library, updated the README, added a module for managing the bugs for the whole website, generated filters and forms, now parameters are also saved when saving the bug URL, added in the Manage module a link to visit the page where the bug was located
- sfEzcWorkflowPlugin: fixed the case when variables are double serialized for a weird scenario, allows to resume workflow suspended waiting for input or not, added event notification and execution logging, fixed bad object creation and bad variable setting
- swToolboxPlugin: added stupid captcha validator
- sfEasyGMapPlugin: created the branch folder
- nahoPropelOptimizerPlugin: bugfix for Oracle, added generic join functions (choose the tables you want to join with), type casting, support to sfAlternativeSchemaPlugin, updated README
- sfDateTime2Plugin: added a unit test, added isHolliday() and getSecond(), modification i dont remember, added sfDate::dayOfWeek()
- sfPropelActAsSignableBehaviorPlugin: added "signable" alias, initialized 1.2 branch, used PdoType for branch 1.2, direct detecting CLI (no use of sfContext) so behavior does not crash data fixtures loading
- nahoWidgetsPlugin: fixed an error when sfWidgetFormPlain() was built with a callback argument as array instead of string, removed deprecated call to sfLoader::loadHelpers
- sfDB4toPropelPlugin: added the ability to use external tables (from a plugin or another schema), released 1.0.3 version
- sfImageTransformPlugin: added clone method, fixed bug in calculating resize ratio, fixed some typos, fix for 1.0 support when logging deprecated position labels
- sfDoctrineActAsTaggablePlugin: if getTaggings returns an empty array we want getObjectTaggedWithQuery to return nothing, optional support for elegant jQuery-based tag typeahead in the "progressive enhancement" spirit
- sfSSOPlexcelPlugin: added two method in the validator for filter user groups and CN, updated login form with a hidden field for sso, added vendor lib, now the function isSSO() use plexcel_sso() function
- sfDynamicsPlugin: updated package.xml template
- sfDoctrineApplyPlugin: fixed constant() call so that SMTP encryption options can be specified, allowed use of class constants like PORT_SECURE in app.yml
- sfDoctrineGuardPlugin: fixed issue with redirect after login, fixed issue with created_at/updated_at being set to null in admin generator, fixed issue with default boolean value being 0 and not false, fixed issue where setPasswordHash() encrypts the already encrypted password
- sfDoctrineAdminGeneratorWithShowPlugin: added new export formats: CSV, PDF (you need to install sfTCPDFPlugin), XML, Excel (you need to install sfPhpExcelPlugin), fixed some bugs, updated README, fixed many errors if import or show view is not enabled
- sfLightboxPlugin: modifications for the new 1.0.9 release, fixed bug with 1.0.x, updated README
- sfPropelActAsCommentableBehaviorPlugin: fixed typo in behavior
- AeroWeb-fr.net: (French) aviation webzine with community participation
- Invenzzia.org: (English, Polish) site for Invenzzia Group, which develops rich open-source PHP projects
- EazyAfrica: (English) Webhosting / Tourism
- siwapp: (Spanish) a free online invoice system. Contributions are welcome.
- Books Express: (Romanian) bookstore carrying over 1.8 million titles in English
They talked about us
- Introduction to the Symfony Service Container
- [symfony] Zend Frameworkã®Classをオートãƒãƒ¼ãƒ‰ã™ã‚‹plugin
- YAML in PHP - fun with sfYaml
- Customizing actions in symfony's admin generator
- Symfony Components – библиотека компонентов Symfony
- 在Symfonyä¸ä½¿ç”¨ç¬¬ä¸‰æ–¹å›¾ç‰‡å¤„ç†å·¥å…·WideImage
- UA SymfonyCamp в Киеве 16го маÑ
- Creating a routing-based menu in symfony 1.2
- Conférence francophone sur Symfony à Paris les 11 & 12 juin 2009
- sfPot à Montpellier, formation symfony Marseille et Toulouse
- sfServiceDefinition - a brief introduction
- Benchmark Frameworks KumbiaPHP vs (Symfony
- Son Derece Kullanışlı PHP Araçları
- Inyección de dependencias en Symfony 2
- Creating a routing-based menu in symfony 1.2, part 2: the MenuItem object
- Symfony How To lessons announcement
- Creating a routing-based menu in symfony 1.2, part 3: the builder
- Running 2 instances of symfony on one machine
- Symfony - Whoops. Hashfunktionen sind langsam :)
- Symfony Troubleshooting - Form Class Not Found
- Twittee: un picolissimo Dependency Injection Container
- [PHP][symfony]ルートã«ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’å«ã‚ã‚‹
- symfony cheat sheet
- Nashville PHPUG Symfony Speakers Announced
- Why does Innomatic is different from other PHP frameworks and what is it useful for?
- Filesocial, primer entrante de Ideateca Factory
- Symfony: rails-ish PHP?
- Symfony Criteria for table alias with join of same table
- Walidacja jednego pola formularza w symfony
- Los mejores 10 Frameworks PHP
- Symfony se divide para crecer
- Ajude a traduzir a documentação do framework Symfony
- Symfony Service Container: Using a Builder to create Services
- Symfony Service Container: Using XML or YAML to describe Services
- Symfony Service Container: The Need for Speed
- Mejoras importantes en el rendimiento de Symfony
- Phần 3: Symfony Service Container
- Interesting People - part 1: Fabien Potencier
- Interesantes usos y alternativas de __toString() en PHP 5.x
- There are no tasks defined in the "product" namespace
Published in #A week of symfonyHelp the Symfony project!
As with any Open-Source project, contributing code or documentation is the most common way to help, but we also have a wide range of sponsoring opportunities.
Comments are closed.
To ensure that comments stay relevant, they are closed for old posts.