aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@phpbb.com>2014-06-10 01:57:59 +0200
committerAndreas Fischer <bantu@phpbb.com>2014-06-10 01:57:59 +0200
commit2964fb37e84a8e7448598a07bfa62ade6c6fb7ae (patch)
tree247a7c5692b5cb1acc17603bc67dba32a32b6c3b /phpBB/phpbb
parent456ff2559aad6f2eed089309544dd4471b798852 (diff)
downloadforums-2964fb37e84a8e7448598a07bfa62ade6c6fb7ae.tar
forums-2964fb37e84a8e7448598a07bfa62ade6c6fb7ae.tar.gz
forums-2964fb37e84a8e7448598a07bfa62ade6c6fb7ae.tar.bz2
forums-2964fb37e84a8e7448598a07bfa62ade6c6fb7ae.tar.xz
forums-2964fb37e84a8e7448598a07bfa62ade6c6fb7ae.zip
[ticket/12664] Refactor develop/migration_tips.php into a console command.
PHPBB3-12664
Diffstat (limited to 'phpBB/phpbb')
-rw-r--r--phpBB/phpbb/console/command/dev/migration_tips.php63
1 files changed, 63 insertions, 0 deletions
diff --git a/phpBB/phpbb/console/command/dev/migration_tips.php b/phpBB/phpbb/console/command/dev/migration_tips.php
new file mode 100644
index 0000000000..62a0a68865
--- /dev/null
+++ b/phpBB/phpbb/console/command/dev/migration_tips.php
@@ -0,0 +1,63 @@
+<?php
+/**
+*
+* This file is part of the phpBB Forum Software package.
+*
+* @copyright (c) phpBB Limited <https://www.phpbb.com>
+* @license GNU General Public License, version 2 (GPL-2.0)
+*
+* For full copyright and license information, please see
+* the docs/CREDITS.txt file.
+*
+*/
+namespace phpbb\console\command\dev;
+
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class migration_tips extends \phpbb\console\command\command
+{
+ /** @var \phpbb\extension\manager */
+ protected $extension_manager;
+
+ function __construct(\phpbb\extension\manager $extension_manager)
+ {
+ $this->extension_manager = $extension_manager;
+ parent::__construct();
+ }
+
+ protected function configure()
+ {
+ $this
+ ->setName('dev:migration-tips')
+ ->setDescription('Finds migrations that are not depended on.')
+ ;
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output)
+ {
+ $migrations = $this->extension_manager->get_finder()
+ ->core_path('phpbb/db/migration/data/')
+ ->get_classes();
+ $tips = $migrations;
+
+ foreach ($migrations as $migration_class)
+ {
+ foreach ($migration_class::depends_on() as $dependency)
+ {
+ $tips_key = array_search($dependency, $tips);
+ if ($tips_key !== false)
+ {
+ unset($tips[$tips_key]);
+ }
+ }
+ }
+
+ $output->writeln("\t\tarray(");
+ foreach ($tips as $migration)
+ {
+ $output->writeln("\t\t\t'{$migration}',");
+ }
+ $output->writeln("\t\t);");
+ }
+}