Upgrade ullright to symfony 1.3/1.4

Upgrade to sf 1.4

TODO

  • usage of deprecated helpers -> seems we need to retain the form helper
    • submit_tag
    • form_error
    • submit_image_tag
    • textarea_tag
    • input_hidden_tag
    • checkbox_tag

 

php symfony project:validate

                                          
  1. Checking usage of deprecated classes 
                                          
   7 file(s) need to be changed.
  ROOT/plugins/ullCorePlugin/test/unit/ullSearchGeneratorTest.php
    sfWidgetFormI18nSelectCountry
  ROOT/plugins/ullCorePlugin/test/unit/ullTableTool/ullWidgetPhoneNumberReadTest.php
    sfLoader
  ROOT/plugins/ullCorePlugin/test/unit/ullTableTool/ullMetaWidgetCountryTest.php
    sfWidgetFormI18nSelectCountry
  ROOT/plugins/ullCorePlugin/lib/form/widget/ullMetaWidgetCountry.class.php
    sfWidgetFormI18nSelectCountry
  ROOT/plugins/ullCorePlugin/lib/form/widget/ullWidgetFormDoctrineSelect.class.php
    sfWidgetFormDoctrineSelect
  ROOT/plugins/ullCorePlugin/lib/form/ullGeneratorForm.class.php
    sfWidgetFormDoctrineSelect
  ROOT/plugins/ullCorePlugin/lib/form/ullFilterForm.php
    sfWidgetFormDoctrineSelect

  The files above use deprecated classes
  that have been removed in symfony 1.4.

  You can find a list of all deprecated classes under the
  "Classes" section of the DEPRECATED tutorial:

  http://www.symfony-project.org/tutorial/1_4/en/deprecated

                                                      
  2. Checking usage of deprecated configuration files 
                                                      
   OK
                                          
  3. Checking usage of deprecated helpers 
                                          
   42 file(s) need to be changed.
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/uploadSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/editSuccess.php
    form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/lib/ullFieldHandlerInformationUpdate.class.php
    textarea_tag
  ROOT/plugins/ullFlowPlugin/lib/form/widget/ullWidgetWikiLink.php
    input_hidden_tag, submit_tag
  ROOT/plugins/ullFlowPlugin/lib/form/widget/ullWidgetUpload.php
    input_hidden_tag, submit_tag
  ROOT/plugins/ullMailPlugin/modules/ullNewsletter/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullTimePlugin/modules/ullTime/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullTimePlugin/modules/ullTime/templates/reportProjectSuccess.php
    submit_image_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/scheduleSuccess.php
    submit_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/weeklyScheduleSuccess.php
    submit_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/createSuccess.php
    form_error
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/editSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/createSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/editSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/massChangeOwnerSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/resetPasswordSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/massChangeSuperiorSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/loginSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullCorePlugin/modules/default/templates/_sidebar.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_ullSearchCriterionForm.php
    checkbox_tag, submit_tag, submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_ullSearchAddCriteriaForm.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_globalError.php
    form_error
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullAdmin/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullPhoto/templates/editSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullPhoto/templates/indexSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/test/unit/ullHelperTest.php
    submit_tag
  ROOT/plugins/ullCorePlugin/test/functional/ullUserSearchBasicTest.php
    form_error
  ROOT/plugins/ullCorePlugin/lib/form/sfWidgetFormSchemaFormatterUllTable.class.php
    form_error
  ROOT/plugins/ullCorePlugin/lib/helper/ullHelper.php
    input_hidden_tag, submit_tag, object_input_hidden_tag, object_checkbox_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/showSuccess.php
    form_error
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/_headerSearch.php
    submit_image_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/editSuccess.php
    input_hidden_tag, form_error
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/listSuccess.php
    submit_image_tag

  The files above use deprecated helpers
  that have been removed in symfony 1.4.

  You can find a list of all deprecated helpers under the
  "Helpers" section of the DEPRECATED tutorial:

  http://www.symfony-project.org/tutorial/1_4/en/deprecated

                                          
  4. Checking usage of deprecated methods 
                                          
   OK
                                          
  5. Checking usage of deprecated plugins 
                                          
   OK
                                           
  6. Checking usage of deprecated settings 
                                           
   OK
                                                              
  7. Checking usage of array notation with a parameter holder 
                                                              
   2 file(s) need to be changed.
  ROOT/plugins/ullPhonePlugin/modules/ullPhone/lib/BaseUllPhoneActions.class.php
  ROOT/plugins/ullVentoryPlugin/lib/ullVentoryGenerator.class.php

  The files above use the array notation with a parameter holder,
  which is not supported anymore in symfony 1.4.
  For instance, you need to change this construct:

    $foo = $request->getParameter('foo[bar]')

  to this one:

    $params = $request->getParameter('foo')
    $foo = $params['bar'])


Old stuff (sf 1.3 upgrade):

Strategy

  • We'll upgrate to symfony 1.3 at first. The upgrade to symfony 1.4 will be done afterwards.

Resources

Symfony (V1.3)

Symfony 1.4 upgrade



Symfony 1.3 upgrade

Doctrine (V1.2)

 

TODO

  • DONE Read about new features and changes and collect links here
  • DONE Identify and list what we have to change
    • see output of project:validate below
    • See changelogs
  • DONE Create a svn branch
  • DONE Install symfony 1.3 libs
  • DONE run project:upgrade1.3 task (Output)
  • DONE Decision on tests. We use sf1.3 lime. We'll look into lime 2.0 later on.
  • DONE Fix testing infrastructure (sfDoctrineTest, deprecated methods etc)
  • DONE The 32 bit date limit (~2037) suddenly seems to be a problem. Why? Related to 1.3 or coincidence?
    • Shouldn't be a problem on 64bit systems
      • We should test that
  • DONE Fix UllFlowDocRecordFilter. Is there a possible relation to new accessors/mutators?
  • DONE Renamed getSql() to getSqlQuery()
  • DONE Debug env. is slow (Configuration step seems to take much longer than it should)
  • DONE Wiki fails
    • Notice: Undefined index: deleted in /var/www/ullright/plugins/ullCorePlugin/lib/ullColumnConfigCollection.class.php on line 686
  • Use default way of setting the result cache:
    (http://www.symfony-project.org/advent_calendar/12/en)
    • Not done because we cannot do this from the plugins
    • class ProjectConfiguration extends sfProjectConfiguration
      {
        // ...
       
        public function configureDoctrine(Doctrine_Manager $manager)
        {
          $manager->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE, new Doctrine_Cache_Apc());
        }
      }
  • DONE - Check if column aggregation inheritance now works as expected with Doctrine 1.2

    This indeed seems to work, and we adapted our inheritance structure accordingly.
    Note that while all tests are green (r1528), this change might cause some other minor bugs to appear; please note them here.
    ---
    That means that unique attribute can be given for children which aren't shared among the children
    => if so update UllEntity + child classes
    (As described here:http://www.symfony-project.org/advent_calendar/14/en)

    Do not forget to update the update log!

    The link above favours concrete table inheritance over column aggregation inheritance because of issus with "required" and the amassed emtpy fields.
    Question: Does Doctrine provide a unique "entity" ID over all child tables?
    • After a first look at their doc I would say it does not
  • Remove hacks concerning the Doctrine 1.0 bug described in ullQueryTest (bottom)
    • removed from BaseUllPhoneActions
    • used anywhere else?
  • DONE Fix auto-setting the migration version (MigrationVersion.yml)
  • DONE Fix Failing tests (see separate section below)
  • DONE Remove $app from functional tests
  • Write migration for ullWiki softdelete ("deleted/boolean" is now "deleted_at/timestamp")
    • Done, but not tested for production
  • DONE Test new migration diff feature

 

Tests

Test status

  • 2010-01-11 16:50 - 39 scripts failed - all functionals first run after fixing sfDoctrineTestPlugin
  • 2010-01-12 14:43 - 27 scripts failed
  • 2010-01-12 17:00 - 21 scripts failed
  • 2010-01-13 17:00 - 11 scripts failed
  • 2010-01-16 19:00 - 8 scripts failed / 11 subtests
  • 2010-01-18 15:00 - 5 scripts failed / 6 subtests, but only with test:all ?!?
    • due to symfony now autloading classes case-insensitive we had some problems with
      • u/UllVentoryItemSoftwareForm -> renamed to ullVentoryItemSoftwareGeneratorForm
  • 2010-01-19 13:00 - everything green

Failing functional tests

  • DONE ullTableToolScheduledUpdatesTest
  • DONE ullFlowWikiLinkTest
  • DONE ullVentoryEditSoftwareTest
  • DONE ullVentoryEdit
  • DONE ullVentoryListTest
  • DONE ullVentorySearchTest
  • DONE ullWikiTest
  • DONE ullWikiAccessTest 

Failing unit tests

  • DONE ullFlowGenerator
  • DONE ullFlowSearch -> Martin
  • DONE ullTableToolGenerator -> created_at and updated_at are now required ?!?
    • Indeed they are, which we accept.
  • DONE ullValidatorMacAddress -> uses limeExtra
  • DONE ullVentorySearchTest -> Martin

Test Status Report

  • DONE Simple unit tests (e.g. ullDomGridSelectorTest)
  • DONE Unit tests using symfony context instance (e.g. ullQueryTest)
  • DONE Unit tests using sfDoctrineTestPlugin (e.g. UllEntityTest)
  • DONE functional test using sfDoctrineTestPlugin (e.g. changeLanguageTest)
  • DONE functional tests fail when running all using test:functional or test:all
  • DONE Unit tests using sfLimeExtraPlugin (e.g. ullValidatorMacAddress)

 

Plugin compatibility status

  • dkGeshi

    • last updated: 1 year ago
    • are we even using this? KU: no! was previously used for syntax highlighting in ullWiki
    • replace with sfGeshiPlugin (tagged for 1.3)?
  • sfDoctrineActAsTaggable
    • last updated: few months ago
    • status unkown KU: we manage this ourselfs
  • sfDoctrineTest
    • status:unknown KU: fix ourselfs or talk to Bernhard
  • sfFormExtra
    • officially tagged for 1.3
  • sfImageTransform
    • officially tagged for 1.4
  • sfJqueryReloaded
    • officially tagged for 1.4
  • sfLimeExtra
    • discontinued, see lime 2.0

 


Upgrade to symfony 1.4

All the deprecated stuff needs to be replaced
http://www.symfony-project.org/tutorial/1_4/en/deprecated

sfCompat10Plugin

  • Mailing?

Methods

  • sfLoader::getHelperDirs() and sfLoader::loadHelpers(): Use the same methods from the sfApplicationConfiguration object. As all methods of the class sfLoader are deprecated, the sfLoader class will be removed in symfony 1.4.
  • ? sfApplicationConfiguration::loadPluginConfig(): Use initializePlugins() instead.
  • ? sfWebRequest::getMethodName(): Use getMethod() instead.

Testing

  • sfTesterResponse::contains(): You can use the more powerful matches() method
  • sfTestFunctionalBase following methods: isRedirected(), isStatusCode(), responseContains(), isRequestParameter(), isResponseHeader(), isUserCulture(), isRequestFormat(), and checkResponseElement(): These methods have been deprecated since 1.2, and replaced with the tester classes.

Forms

sfWidgetFormI18nSelectLanguage, sfWidgetFormI18nSelectCurrency, and sfWidgetFormI18nSelectCountry: Use the corresponding Choice widgets (sfWidgetFormI18nChoiceLanguage, sfWidgetFormI18nChoiceCurrency, and sfWidgetFormI18nChoiceCountry respectively) as they act exactly in the same way, except they have more customization possibilities

sfWidgetFormChoiceMany, sfWidgetFormPropelChoiceMany, sfWidgetFormDoctrineChoiceMany, sfValidatorChoiceMany, sfValidatorPropelChoiceMany, sfValidatorPropelDoctrineMany: Use the same classes but without Many at the end, and set the multiple option to true

  • Replace sfWidgetFormDoctrineSelect by sfWidgetFormDoctrineChoice
  • sfWidgetFormI18nSelectCountry
     

Helpers

The following helper groups have been deprecated in symfony 1.3 and will be removed in symfony 1.4:

All helpers related to the 1.0 form system as provided by the sfCompat10Plugin: DateForm, Form, ObjectAdmin, Object, and Validation

The form_tag() helper from the Form helper group has been moved to the Url helper group, and as such is still available in symfony 1.4.

Loading helpers from the PHP include path has been deprecated in 1.3 and removed in 1.4. Helpers must be located in one of the project, application or module lib/helper/ directories.

Replacement for submit_tag etc?
(see also http://forum.symfony-project.org/index.php/m/89277/=

Detected by validation task:

submit_tag
submit_image_tag
form_error
input_hidden_tag
textarea_tag
link_to_remote

  • We load helpers in a deprecated way
    • Currently: sfLoader::loadHelpers('I18N');
    • Should be: Use the same methods from the sfApplicationConfiguration object.
      sfContext::getInstance()->getConfiguration()->loadHelpers('Debug','Other1','Other2')
    • TODO: identify helpers in use

Config settings

  • sf_lazy_cache_key: Introduced as a big performance improvement in symfony 1.2.6, this setting allowed you to turn on a lazy cache key generation for the view cache. While we think doing it lazy was the best idea, some people might have relied on sfViewCacheManager::isCacheable() being called even when the action itself wasn't cacheable. As of symfony 1.3, the behavior is the same as if sf_lazy_cache_key was set to true.

Output of project:validate (as of r2283)

klemens@ullnovo:/var/www/ullright$ php symfony project:validate
                                          
  1. Checking usage of deprecated classes 
                                          
   7 file(s) need to be changed.
  ROOT/test/unit/ullTableTool/ullMetaWidgetCountryTest.php
    sfWidgetFormI18nSelectCountry
  ROOT/test/unit/ullCorePlugin/ullSearchGeneratorTest.php
    sfWidgetFormI18nSelectCountry
  ROOT/plugins/ullCorePlugin/lib/form/widget/ullMetaWidgetCountry.class.php
    sfWidgetFormI18nSelectCountry
  ROOT/plugins/ullCorePlugin/lib/form/widget/ullWidgetFormDoctrineSelect.class.php
    sfWidgetFormDoctrineSelect
  ROOT/plugins/ullCorePlugin/lib/form/ullGeneratorForm.class.php
    sfWidgetFormDoctrineSelect
  ROOT/plugins/ullCorePlugin/lib/form/ullFilterForm.php
    sfWidgetFormDoctrineSelect
  ROOT/plugins/ullCorePlugin/lib/ullsfMail.class.php
    sfMail

  The files above use deprecated classes
  that have been removed in symfony 1.4.

  You can find a list of all deprecated classes under the
  "Classes" section of the DEPRECATED tutorial:

  http://www.symfony-project.org/tutorial/1_4/en/deprecated

                                                      
  2. Checking usage of deprecated configuration files 
                                                      
   OK
                                          
  3. Checking usage of deprecated helpers 
                                          
   41 file(s) need to be changed.
  ROOT/test/unit/ullCorePlugin/ullHelperTest.php
    submit_tag
  ROOT/test/functional/frontend/ullCorePlugin/ullUserSearchBasicTest.php
    form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/uploadSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/editSuccess.php
    form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullFlowPlugin/modules/ullFlow/lib/ullFieldHandlerInformationUpdate.class.php
    textarea_tag
  ROOT/plugins/ullFlowPlugin/lib/form/widget/ullWidgetWikiLink.php
    input_hidden_tag, submit_tag
  ROOT/plugins/ullFlowPlugin/lib/form/widget/ullWidgetUpload.php
    input_hidden_tag, submit_tag
  ROOT/plugins/ullTimePlugin/modules/ullTime/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullTimePlugin/modules/ullTime/templates/reportProjectSuccess.php
    submit_image_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/scheduleSuccess.php
    submit_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/weeklyScheduleSuccess.php
    submit_tag
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/createSuccess.php
    form_error
  ROOT/plugins/ullBookingPlugin/modules/ullBooking/templates/editSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/createSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/editSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/massChangeOwnerSuccess.php
    submit_tag, form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullVentoryPlugin/modules/ullVentory/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/resetPasswordSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/massChangeSuperiorSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/loginSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullUser/templates/searchSuccess.php
    form_error
  ROOT/plugins/ullCorePlugin/modules/default/templates/_sidebar.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_ullSearchCriterionForm.php
    checkbox_tag, submit_tag, submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_ullSearchAddCriteriaForm.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/_globalError.php
    form_error
  ROOT/plugins/ullCorePlugin/modules/ullTableTool/templates/listSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullAdmin/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullCorePlugin/modules/ullPhoto/templates/editSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/modules/ullPhoto/templates/indexSuccess.php
    submit_tag
  ROOT/plugins/ullCorePlugin/lib/form/sfWidgetFormSchemaFormatterUllTable.class.php
    form_error
  ROOT/plugins/ullCorePlugin/lib/helper/ullHelper.php
    input_hidden_tag, submit_tag, object_input_hidden_tag, object_checkbox_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/showSuccess.php
    form_error
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/_headerSearch.php
    submit_image_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/editSuccess.php
    input_hidden_tag, form_error
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/indexSuccess.php
    submit_image_tag
  ROOT/plugins/ullWikiPlugin/modules/ullWiki/templates/listSuccess.php
    submit_image_tag

  The files above use deprecated helpers
  that have been removed in symfony 1.4.

  You can find a list of all deprecated helpers under the
  "Helpers" section of the DEPRECATED tutorial:

  http://www.symfony-project.org/tutorial/1_4/en/deprecated

                                          
  4. Checking usage of deprecated methods 
                                          
   33 file(s) need to be changed.
  ROOT/test/unit/ullFlowPlugin/ullFlowGeneratorTest.php
    contains
  ROOT/test/unit/ullTableTool/ullTableToolGeneratorFormTest.php
    contains
  ROOT/test/unit/ullCorePlugin/ullTreeNodeOrgchartTest.php
    contains
  ROOT/test/unit/ullCorePlugin/ullTreeNodeTest.php
    contains
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowMultiAppTest.php
    isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowAsHelpdeskUserTest.php
    checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowWorkflowTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowWikiLinkTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowUploadTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowListTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowCrudTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowPublicTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowDocSearchVirtualTest.php
    contains
  ROOT/test/functional/frontend/ullFlowPlugin/ullFlowAsTestUserTest.php
    checkResponseElement
  ROOT/test/functional/frontend/ullPhonePlugin/ullPhoneListTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullTimePlugin/ullTimeReportProjectAsProjectManagerTest.php
    responseContains
  ROOT/test/functional/frontend/ullTimePlugin/ullTimeAccessTest.php
    contains
  ROOT/test/functional/frontend/ullVentoryPlugin/ullVentoryEditTest.php
    isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullVentoryPlugin/ullVentoryEditSoftwareTest.php
    isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullVentoryPlugin/ullVentoryListTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullVentoryPlugin/ullVentoryMassChangeOwnerTest.php
    contains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullCorePlugin/loginTest.php
    responseContains, isRequestParameter
  ROOT/test/functional/frontend/ullCorePlugin/ullUserPopupExistsTest.php
    contains
  ROOT/test/functional/frontend/ullCorePlugin/ullUserSearchAddRemoveCriteriaTest.php
    contains
  ROOT/test/functional/frontend/ullCorePlugin/ullTableToolScheduledUpdatesTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullCorePlugin/ullUserChangePasswordTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullCorePlugin/signUpTest.php
    contains
  ROOT/test/functional/frontend/ullCorePlugin/resetPasswordTest.php
    responseContains, isRequestParameter
  ROOT/test/functional/frontend/ullCorePlugin/changeLanguageTest.php
    responseContains, isRequestParameter
  ROOT/test/functional/frontend/ullCorePlugin/massChangeSuperiorTest.php
    responseContains, isRequestParameter
  ROOT/test/functional/frontend/ullCorePlugin/ullTableToolTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullWikiPlugin/ullWikiAccessTest.php
    responseContains, isRequestParameter, checkResponseElement
  ROOT/test/functional/frontend/ullWikiPlugin/ullWikiTest.php
    responseContains, isRequestParameter, checkResponseElement

  The files above use deprecated functions and/or methods
  that have been removed in symfony 1.4.

  You can find a list of all deprecated methods under the
  "Methods and Functions" section of the DEPRECATED tutorial:

  http://www.symfony-project.org/tutorial/1_4/en/deprecated

                                          
  5. Checking usage of deprecated plugins 
                                          
   OK
                                           
  6. Checking usage of deprecated settings 
                                           
   OK
                                                              
  7. Checking usage of array notation with a parameter holder 
                                                              
   2 file(s) need to be changed.
  ROOT/plugins/ullPhonePlugin/modules/ullPhone/lib/BaseUllPhoneActions.class.php
  ROOT/plugins/ullVentoryPlugin/lib/ullVentoryGenerator.class.php

  The files above use the array notation with a parameter holder,
  which is not supported anymore in symfony 1.4.
  For instance, you need to change this construct:

    $foo = $request->getParameter('foo[bar]')

  to this one:

    $params = $request->getParameter('foo')
    $foo = $params['bar'])