marca 26
Pojawiła się najnowsza beta fremework’a do PHP symfony. Obecna wersja już pozostanie raczej bez zmian , pozostało jeszcze testowanie i odrobaczanie i sądząc po tempie prac nad projektem możemy się spodziewać wersji finalnej.
Poniżej przedstawiona lista nowości:
- New Command Line Utility
- Completely rewritten from scratch (bye, pake!)
- Now based on an Object-Oriented subframework
- Allows for unordered named options
- Tasks are extensible
- Built-in help (php symfony help [taskname])
- Reliable, easy to use and intuitive
|
|
- New form subframework
- Forms are now classes
- Form Widgets represent the view layer. The subframework provides more widgets than symfony 1.0 had form helpers.
- Native and easy handling of validation, fillin, request binding
- Native CSRF protection
- Native file upload validation
- Support for nested validations and widgets
- The Most Beautiful Form Framework You’ve Ever Seen In PHP – and you can even use it outside of symfony!
- Optional (your old forms still work!)
|
|
- New plugin manager
- Completely rewritten from scratch
- Supports dependencies between plugins
- New options for more control over what you install (–install_deps, –release, –stability)
- Support for the REST API of a PEAR channel
|
|
- Improved ORM integration
- Propel has been updated, and is now a plugin, bundled by default with symfony 1.1
- Behaviors can now be declared directly in the schema
- A schema can be overridden by another one
- New configure:database task to update both the propel.ini and databases.yml dsn from the command line
- More hooks in the code – that means more opportunities for extensions and behaviors
- Better i18n support ($article->getTitle(‘fr’))
- Improved dump/load, dealing with FK seamlessly
- YAML schema generated from a database is now more readable
- Support for the new Form subframework
|
|
- Improved Routing
- The routing now has a cache layer: That’s a massive boost for pages with a lot of URLs to generate
- Token separator in routes is no more limited to ‘/’. You can now use any characters, for instance to allow routes like /article/:title.:format
- PJS and multiformat are on the way
- The routing class is not a singleton anymore – that means that an application can have access to another application’s routing objects
|
|
- Improved internationalization
- I18n now uses the same caching techniques as the view, for faster-than-ever template generation
- A new task can find untranslated text strings in templates and add them to the dictionaries (symfony i18n:extract)
- Another new task can find text strings without __() in templates and report them (symfony i18n:find)
- XLIFF and gettext dictionaries can now be in multiple directories
- The I18n class is not a singleton anymore
|
|
- Improved caching
- New caching factories, allowing to use Memcached or APC as caching storage
- Ability to remove the cache from another application
- The view cache manager now accepts wildcards in the remove() calls, whatever the caching factory you use
- Partials and components in cache can now add JavaScripts and stylesheets in the main response
- New general caching factory, for your non view-related caching needs
- The function cache can now use any caching factory (not only sfFileCache)
|
|
- Improved configuration
- The Spyc parser was dumped, in favor of a brand new, home-made, more robust YAML parser
- Incorrect YAML files now throw a helpful error message
- Symfony can auto-check that it can run (check_configuration.php checks PHP version, extensions, etc.)
- The project and application configurations are now classes, offering convenient methods to customize the project directory structure and loaders
- An application can access another application’s configuration
|
|
- Improved Tests
- A performance tool allows to measure the speed difference between each version of symfony – objectively
- CSS3 selectors are now supported in the sfDomCSSSelector (:contains(), :first, etc.)
|
|
- A gazillion little improvements that will make your life easier
- Actions can now end by renderPartial() or renderComponent()
- sfWebRequest now has an isMethod() method (if($request->isMethod(‘post’)))
- Support for many-to-many relationships in fixtures
- Ability to execute an action on a selection of entries in the admin generator
- More information in the Web Debug Toolbar (PHP extensions, sfUser attributes, etc.)
- Improved error messages in Phing
|
written by mojek
\\ tags: framework, php, symfony