Merge pull request #7139 from yguedidi/fix-doctrine-deprecation-notices

Fix Doctrine deprecation notices
This commit is contained in:
Yassine Guedidi 2023-12-27 19:19:47 +01:00 committed by GitHub
commit 7fbf83f3bb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 4 deletions

View file

@ -378,7 +378,7 @@ class InstallCommand extends Command
$databaseName = $connection->getDatabase();
try {
$schemaManager = $connection->getSchemaManager();
$schemaManager = $connection->createSchemaManager();
} catch (\Exception $exception) {
// mysql & sqlite
if (false !== strpos($exception->getMessage(), sprintf("Unknown database '%s'", $databaseName))) {
@ -421,7 +421,7 @@ class InstallCommand extends Command
*/
private function isSchemaPresent()
{
$schemaManager = $this->entityManager->getConnection()->getSchemaManager();
$schemaManager = $this->entityManager->getConnection()->createSchemaManager();
return \count($schemaManager->listTableNames()) > 0 ? true : false;
}

View file

@ -40,7 +40,7 @@ class SQLiteCascadeDeleteSubscriber implements EventSubscriber
*/
public function preRemove(LifecycleEventArgs $args)
{
$entity = $args->getEntity();
$entity = $args->getObject();
if (!$this->doctrine->getConnection()->getDatabasePlatform() instanceof SqlitePlatform
|| !$entity instanceof Entry) {
return;

View file

@ -2,6 +2,8 @@
namespace Wallabag\ImportBundle\Command;
use Doctrine\DBAL\Driver\Middleware;
use Doctrine\DBAL\Logging\Middleware as LoggingMiddleware;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Component\Config\Definition\Exception\Exception;
use Symfony\Component\Console\Command\Command;
@ -99,7 +101,11 @@ class ImportCommand extends Command
}
// Turning off doctrine default logs queries for saving memory
$this->entityManager->getConnection()->getConfiguration()->setSQLLogger(null);
$middlewares = $this->entityManager->getConnection()->getConfiguration()->getMiddlewares();
$middlewaresWithoutLogging = array_filter($middlewares, function (Middleware $middleware) {
return !$middleware instanceof LoggingMiddleware;
});
$this->entityManager->getConnection()->getConfiguration()->setMiddlewares($middlewaresWithoutLogging);
if ($input->getOption('useUserId')) {
$entityUser = $this->userRepository->findOneById($input->getArgument('username'));