aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/install/database_update.php
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@phpbb.com>2014-07-11 11:49:51 +0200
committerAndreas Fischer <bantu@phpbb.com>2014-07-11 11:49:51 +0200
commitb2a883d504d9ece8525fcc1a4aa8e44a000db6ca (patch)
tree81a85d5242913fa7e667b5adc873bd4a500ed406 /phpBB/install/database_update.php
parent147b942e5c885f13181f0cb4d67cb4ccee4652df (diff)
parent58a52fe5b90215d090ba3b992f96d401d805440c (diff)
downloadforums-b2a883d504d9ece8525fcc1a4aa8e44a000db6ca.tar
forums-b2a883d504d9ece8525fcc1a4aa8e44a000db6ca.tar.gz
forums-b2a883d504d9ece8525fcc1a4aa8e44a000db6ca.tar.bz2
forums-b2a883d504d9ece8525fcc1a4aa8e44a000db6ca.tar.xz
forums-b2a883d504d9ece8525fcc1a4aa8e44a000db6ca.zip
Merge pull request #2671 from Nicofuma/ticket/12775
[ticket/12775] Replace functions_container with a container_builder class. * Nicofuma/ticket/12775: (34 commits) [ticket/12775] Set dbal.conn.driver as synthetic during installation [ticket/12775] Add the definition of dbal.conn in fixtures/config/services.yml [ticket/12775] Inject the connection when created in the container [ticket/12775] Extract the vars later in install/install_update.php [ticket/12775] Rename config_php_handler to config_php_file container_builder [ticket/12775] Set defined_vars as a property of config_php_file [ticket/12775] Fix doc blocks in the container builder [ticket/12775] Remove useless includes of config.php [ticket/12775] Move phpbb_convert_30_dbms_to_31 into the config file class [ticket/12775] Fix comments [ticket/12775] Update doc blocks [ticket/12775] Fix container_builder [ticket/12775] Rename config_php to config_php_file [ticket/12775] Renamed to \phpbb\di\container_builder [ticket/12775] Remove the last include of functions_container [ticket/12775] Fix unit tests [ticket/12775] Add tests for \phpbb\config_php [ticket/12775] Add tests for the container factory [ticket/12775] Use a field instead of a local var in load_config_var() [ticket/12775] Update container and config in install/ ...
Diffstat (limited to 'phpBB/install/database_update.php')
-rw-r--r--phpBB/install/database_update.php36
1 files changed, 12 insertions, 24 deletions
diff --git a/phpBB/install/database_update.php b/phpBB/install/database_update.php
index 63e4e8f4ac..c54c84cdbc 100644
--- a/phpBB/install/database_update.php
+++ b/phpBB/install/database_update.php
@@ -56,8 +56,14 @@ function phpbb_end_update($cache, $config)
}
require($phpbb_root_path . 'includes/startup.' . $phpEx);
+require($phpbb_root_path . 'phpbb/class_loader.' . $phpEx);
+
+$phpbb_class_loader = new \phpbb\class_loader('phpbb\\', "{$phpbb_root_path}phpbb/", $phpEx);
+$phpbb_class_loader->register();
+
+$phpbb_config_php_file = new \phpbb\config_php_file($phpbb_root_path, $phpEx);
+extract($phpbb_config_php_file->get_all());
-include($phpbb_root_path . 'config.' . $phpEx);
if (!defined('PHPBB_INSTALLED') || empty($dbms) || empty($acm_type))
{
die("Please read: <a href='../docs/INSTALL.html'>INSTALL.html</a> before attempting to update.");
@@ -68,13 +74,9 @@ $phpbb_adm_relative_path = (isset($phpbb_adm_relative_path)) ? $phpbb_adm_relati
$phpbb_admin_path = (defined('PHPBB_ADMIN_PATH')) ? PHPBB_ADMIN_PATH : $phpbb_root_path . $phpbb_adm_relative_path;
// Include files
-require($phpbb_root_path . 'phpbb/class_loader.' . $phpEx);
-
require($phpbb_root_path . 'includes/functions.' . $phpEx);
require($phpbb_root_path . 'includes/functions_content.' . $phpEx);
-require($phpbb_root_path . 'includes/functions_container.' . $phpEx);
-require($phpbb_root_path . 'config.' . $phpEx);
require($phpbb_root_path . 'includes/constants.' . $phpEx);
include($phpbb_root_path . 'includes/utf/utf_normalizer.' . $phpEx);
require($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
@@ -82,26 +84,12 @@ require($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
// Set PHP error handler to ours
set_error_handler(defined('PHPBB_MSG_HANDLER') ? PHPBB_MSG_HANDLER : 'msg_handler');
-// Setup class loader first
-$phpbb_class_loader = new \phpbb\class_loader('phpbb\\', "{$phpbb_root_path}phpbb/", $phpEx);
-$phpbb_class_loader->register();
-
// Set up container (must be done here because extensions table may not exist)
-$container_extensions = array(
- new \phpbb\di\extension\config($phpbb_root_path . 'config.' . $phpEx),
- new \phpbb\di\extension\core($phpbb_root_path . 'config/'),
-);
-$container_passes = array(
- new \phpbb\di\pass\collection_pass(),
-);
-$phpbb_container = phpbb_create_container($container_extensions, $phpbb_root_path, $phpEx);
-
-// Compile the container
-foreach ($container_passes as $pass)
-{
- $phpbb_container->addCompilerPass($pass);
-}
-$phpbb_container->compile();
+$phpbb_container_builder = new \phpbb\di\container_builder($phpbb_config_php_file, $phpbb_root_path, $phpEx);
+$phpbb_container_builder->set_use_extensions(false);
+$phpbb_container_builder->set_use_kernel_pass(false);
+$phpbb_container_builder->set_dump_container(false);
+$phpbb_container = $phpbb_container_builder->get_container();
// set up caching
$cache = $phpbb_container->get('cache');