-
Notifications
You must be signed in to change notification settings - Fork 177
Migrations
Connor edited this page Mar 21, 2024
·
13 revisions
- Create an empty
composer.json
if it does not already exist. - If it already exists, you can install symfony1 with
composer require friendsofsymfony1/symfony1 "^1.5"
. - You must remove the
sfCoreAutoload::register()
call from theProjectConfiguration.php
file and you need to replace the path to the autoloader:
<?php
require_once(__DIR__.'/../vendor/autoload.php');
class ProjectConfiguration extends sfProjectConfiguration {
- Every update steps from below.
- You can install doctrine1 using the
composer require friendsofsymfony1/doctrine1"^1.5"
command. In this case, you need to set thesf_doctrine_dir
option insfConfig
, which should point to thevendor/friendsofsymfony1/doctrine1/lib
directory. - You must change all
Doctrine
class occurrences toDoctrine_Core
. The easiest way to do this is to create aDoctrine
proxy class and tag it with @deprecated:
/** @deprecated */
class Doctrine extends Doctrine_Core
{
}
After that your IDE or phpstan with deprecation rules extension can list the Doctrine
class occurrences very well. Don't forget to check the plugins folder (sfDoctrineGuardPlugin).
- If you have configured doctrine by calling the
configureDoctrineEvent
orconfigureDoctrine
methods in the ProjectConfiguration file, you must subscribe todoctrine.configure
even in thesetup
method:
class ProjectConfiguration extends sfProjectConfiguration
{
public function setup()
{
// ...
$this->dispatcher->connect('doctrine.configure', array($this, 'configureDoctrineEvent'));
}
public function configureDoctrineEvent(sfEvent $event)
{
$manager = $event->getSubject();
$manager->setAttribute(Doctrine_Core::ATTR_USE_DQL_CALLBACKS, false);
}
}
- If you are using
sfAPCCache
you will need to switch tosfAPCuCache
. - If you are using
sfEAcceleratorCache
you will need to switch to some other supported cache. - If you are using
sfXCacheCache
you will need to switch to some other supported cache.
- ?