Classes

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 20 40 60 80 100 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Setup\Migration\Versions\Migration420Alpha — Coverage: 34.2% | Lines: 819 | Complexity: 60 phpMyFAQ\Setup\Installation\DatabaseSchema — Coverage: 100.0% | Lines: 540 | Complexity: 56 phpMyFAQ\Setup\Installation\DefaultDataSeeder — Coverage: 99.3% | Lines: 418 | Complexity: 12 phpMyFAQ\Setup\UpdateRunner — Coverage: 18.7% | Lines: 283 | Complexity: 69 phpMyFAQ\Setup\InstallationRunner — Coverage: 5.0% | Lines: 239 | Complexity: 72 phpMyFAQ\Setup\Upgrade — Coverage: 34.4% | Lines: 221 | Complexity: 78 phpMyFAQ\Setup\InstallationInputValidator — Coverage: 65.2% | Lines: 158 | Complexity: 60 phpMyFAQ\Setup\Migration\AbstractMigration — Coverage: 52.4% | Lines: 145 | Complexity: 60 phpMyFAQ\Setup\Update — Coverage: 41.9% | Lines: 136 | Complexity: 55 phpMyFAQ\Setup\Migration\MigrationExecutor — Coverage: 89.5% | Lines: 133 | Complexity: 40 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder — Coverage: 97.6% | Lines: 124 | Complexity: 54 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha — Coverage: 72.2% | Lines: 115 | Complexity: 16 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder — Coverage: 92.7% | Lines: 110 | Complexity: 41 phpMyFAQ\Setup\Installer — Coverage: 24.3% | Lines: 103 | Complexity: 34 phpMyFAQ\Setup\Migration\Versions\Migration320Beta — Coverage: 62.9% | Lines: 97 | Complexity: 14 phpMyFAQ\Setup\HtaccessUpdater — Coverage: 64.3% | Lines: 84 | Complexity: 23 phpMyFAQ\Setup\Migration\MigrationTracker — Coverage: 76.2% | Lines: 80 | Complexity: 31 phpMyFAQ\Setup\Migration\Versions\Migration320Alpha — Coverage: 80.6% | Lines: 72 | Complexity: 6 phpMyFAQ\Setup\Migration\Versions\Migration405 — Coverage: 63.3% | Lines: 60 | Complexity: 8 phpMyFAQ\Setup\Migration\Versions\Migration407 — Coverage: 100.0% | Lines: 54 | Complexity: 6 phpMyFAQ\Setup\Migration\MigrationRegistry — Coverage: 96.2% | Lines: 52 | Complexity: 19 phpMyFAQ\Setup\Migration\Operations\OperationRecorder — Coverage: 67.3% | Lines: 52 | Complexity: 23 phpMyFAQ\Setup\Installation\SchemaInstaller — Coverage: 54.9% | Lines: 51 | Complexity: 24 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3 — Coverage: 64.0% | Lines: 50 | Complexity: 8 phpMyFAQ\Setup\Migration\MigrationResult — Coverage: 100.0% | Lines: 44 | Complexity: 18 phpMyFAQ\Setup\UpdateToken — Coverage: 87.8% | Lines: 41 | Complexity: 24 phpMyFAQ\Setup\Migration\Operations\SqlOperation — Coverage: 100.0% | Lines: 38 | Complexity: 15 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect — Coverage: 94.4% | Lines: 36 | Complexity: 26 phpMyFAQ\Setup\Migration\Versions\Migration323 — Coverage: 27.8% | Lines: 36 | Complexity: 8 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation — Coverage: 65.6% | Lines: 32 | Complexity: 19 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect — Coverage: 100.0% | Lines: 32 | Complexity: 27 phpMyFAQ\Setup\Migration\Versions\Migration409 — Coverage: 100.0% | Lines: 29 | Complexity: 5 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3 — Coverage: 100.0% | Lines: 28 | Complexity: 4 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect — Coverage: 92.6% | Lines: 27 | Complexity: 26 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect — Coverage: 92.6% | Lines: 27 | Complexity: 26 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation — Coverage: 88.5% | Lines: 26 | Complexity: 11 phpMyFAQ\Setup\EnvironmentConfigurator — Coverage: 84.0% | Lines: 25 | Complexity: 14 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation — Coverage: 87.5% | Lines: 24 | Complexity: 15 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation — Coverage: 54.2% | Lines: 24 | Complexity: 10 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2 — Coverage: 12.5% | Lines: 24 | Complexity: 6 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation — Coverage: 73.9% | Lines: 23 | Complexity: 12 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation — Coverage: 77.3% | Lines: 22 | Complexity: 12 phpMyFAQ\Setup\AbstractSetup — Coverage: 81.0% | Lines: 21 | Complexity: 12 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder — Coverage: 100.0% | Lines: 21 | Complexity: 17 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation — Coverage: 100.0% | Lines: 17 | Complexity: 6 phpMyFAQ\Setup\Migration\Versions\Migration400Beta2 — Coverage: 21.4% | Lines: 14 | Complexity: 6 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation — Coverage: 100.0% | Lines: 12 | Complexity: 7 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation — Coverage: 100.0% | Lines: 10 | Complexity: 6 phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory — Coverage: 85.7% | Lines: 7 | Complexity: 7 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha — Coverage: 50.0% | Lines: 6 | Complexity: 4 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2 — Coverage: 50.0% | Lines: 6 | Complexity: 4 phpMyFAQ\Setup\Migration\Versions\Migration320Beta2 — Coverage: 60.0% | Lines: 5 | Complexity: 4 phpMyFAQ\Setup\InstallationInput — Coverage: 75.0% | Lines: 4 | Complexity: 4 phpMyFAQ\Setup\Migration\Versions\Migration320RC — Coverage: 75.0% | Lines: 4 | Complexity: 4 phpMyFAQ\Setup\InMemoryHtaccessFile — Coverage: 0.0% | Lines: 2 | Complexity: 2

 

Sorted by descending CRAP (Change Risk Anti-Patterns) index.

Class CRAP Coverage
phpMyFAQ\Setup\InstallationRunner4513.705.0%
phpMyFAQ\Setup\UpdateRunner2624.7718.7%
phpMyFAQ\Setup\Upgrade1796.3734.4%
phpMyFAQ\Setup\Migration\Versions\Migration420Alpha1086.1634.2%
phpMyFAQ\Setup\Update647.9141.9%
phpMyFAQ\Setup\Installer536.0324.3%
phpMyFAQ\Setup\Migration\AbstractMigration447.9252.4%
phpMyFAQ\Setup\InstallationInputValidator211.8565.2%
phpMyFAQ\Setup\Installation\SchemaInstaller76.8354.9%
phpMyFAQ\Setup\Installation\DatabaseSchema56100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder5497.6%
phpMyFAQ\Setup\HtaccessUpdater47.1064.3%
phpMyFAQ\Setup\Migration\MigrationTracker43.8776.2%
phpMyFAQ\Setup\Migration\MigrationExecutor41.8789.5%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder41.6592.7%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder41.4867.3%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation33.6665.6%
phpMyFAQ\Setup\Migration\Versions\Migration32332.1127.8%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha230.1212.5%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect27100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect26.2792.6%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect26.2792.6%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect26.1294.4%
phpMyFAQ\Setup\UpdateToken25.0487.8%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta24.0262.9%
phpMyFAQ\Setup\Migration\Versions\Migration400Beta223.4621.4%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha21.5272.2%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation19.6354.2%
phpMyFAQ\Setup\Migration\MigrationRegistry1996.2%
phpMyFAQ\Setup\Migration\MigrationResult18100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder17100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation15.4487.5%
phpMyFAQ\Setup\Migration\Operations\SqlOperation15100.0%
phpMyFAQ\Setup\EnvironmentConfigurator14.8084.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation14.5673.9%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation13.6977.3%
phpMyFAQ\Setup\AbstractSetup13.0081.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder1299.3%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation11.1988.5%
phpMyFAQ\Setup\Migration\Versions\Migration40511.1563.3%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha310.9964.0%
phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory7.1485.7%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation7100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Alpha6.2680.6%
phpMyFAQ\Setup\InMemoryHtaccessFile60.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation6100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation6100.0%
phpMyFAQ\Setup\Migration\Versions\Migration4076100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha6.0050.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha26.0050.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta25.0260.0%
phpMyFAQ\Setup\Migration\Versions\Migration4095100.0%
phpMyFAQ\Setup\InstallationInput4.2575.0%
phpMyFAQ\Setup\Migration\Versions\Migration320RC4.2575.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha34100.0%

Methods

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 20 40 60 80 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::up — Coverage: 34.1% | Lines: 816 | Complexity: 57 phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultConfig — Coverage: 99.5% | Lines: 214 | Complexity: 3 phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultFormInputs — Coverage: 100.0% | Lines: 137 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::up — Coverage: 71.4% | Lines: 112 | Complexity: 13 phpMyFAQ\Setup\UpdateRunner::displayDryRunReport — Coverage: 0.0% | Lines: 95 | Complexity: 26 phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::up — Coverage: 80.0% | Lines: 70 | Complexity: 4 phpMyFAQ\Setup\InstallationRunner::stepValidateConnectivity — Coverage: 0.0% | Lines: 67 | Complexity: 24 phpMyFAQ\Setup\Migration\Versions\Migration320Beta::up — Coverage: 47.5% | Lines: 59 | Complexity: 7 phpMyFAQ\Setup\Migration\Versions\Migration405::up — Coverage: 61.4% | Lines: 57 | Complexity: 5 phpMyFAQ\Setup\Installation\DatabaseSchema::getAllTables — Coverage: 100.0% | Lines: 55 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultRights — Coverage: 100.0% | Lines: 55 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::formatDryRunReport — Coverage: 98.1% | Lines: 52 | Complexity: 15 phpMyFAQ\Setup\Migration\Versions\Migration407::up — Coverage: 100.0% | Lines: 51 | Complexity: 3 phpMyFAQ\Setup\InstallationInputValidator::validateDatabaseInput — Coverage: 82.0% | Lines: 50 | Complexity: 29 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::up — Coverage: 61.7% | Lines: 47 | Complexity: 5 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::build — Coverage: 97.6% | Lines: 42 | Complexity: 18 phpMyFAQ\Setup\Upgrade::createTemporaryBackup — Coverage: 0.0% | Lines: 41 | Complexity: 9 phpMyFAQ\Setup\Upgrade::installPackage — Coverage: 0.0% | Lines: 36 | Complexity: 10 phpMyFAQ\Setup\HtaccessUpdater::updateRewriteBase — Coverage: 85.7% | Lines: 35 | Complexity: 10 phpMyFAQ\Setup\InstallationInputValidator::validate — Coverage: 91.4% | Lines: 35 | Complexity: 4 phpMyFAQ\Setup\Migration\Versions\Migration320Beta::rebuildTableWithoutColumns — Coverage: 85.7% | Lines: 35 | Complexity: 4 phpMyFAQ\Setup\Update::createConfigBackup — Coverage: 88.6% | Lines: 35 | Complexity: 14 phpMyFAQ\Setup\HtaccessUpdater::addRewriteBase — Coverage: 35.3% | Lines: 34 | Complexity: 5 phpMyFAQ\Setup\Installer::checkNoncriticalSettings — Coverage: 0.0% | Lines: 33 | Complexity: 8 phpMyFAQ\Setup\Migration\Versions\Migration323::up — Coverage: 21.2% | Lines: 33 | Complexity: 5 phpMyFAQ\Setup\Migration\AbstractMigration::indexExists — Coverage: 40.6% | Lines: 32 | Complexity: 5 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::buildCombined — Coverage: 75.0% | Lines: 32 | Complexity: 14 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::build — Coverage: 100.0% | Lines: 31 | Complexity: 11 phpMyFAQ\Setup\Migration\MigrationExecutor::executeMigration — Coverage: 69.0% | Lines: 29 | Complexity: 9 phpMyFAQ\Setup\Installer::checkFilesystemPermissions — Coverage: 0.0% | Lines: 27 | Complexity: 6 phpMyFAQ\Setup\InstallationInputValidator::validateUserCredentials — Coverage: 100.0% | Lines: 26 | Complexity: 13 phpMyFAQ\Setup\InstallationRunner::stepCreateAdminUser — Coverage: 0.0% | Lines: 26 | Complexity: 5 phpMyFAQ\Setup\Migration\Operations\SqlOperation::getDescription — Coverage: 100.0% | Lines: 26 | Complexity: 9 phpMyFAQ\Setup\Migration\Versions\Migration409::up — Coverage: 100.0% | Lines: 26 | Complexity: 2 phpMyFAQ\Setup\Migration\MigrationExecutor::generateDryRunReport — Coverage: 92.0% | Lines: 25 | Complexity: 3 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::up — Coverage: 100.0% | Lines: 25 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqdata — Coverage: 100.0% | Lines: 22 | Complexity: 1 phpMyFAQ\Setup\Update::migrateAdminLogHashes — Coverage: 0.0% | Lines: 22 | Complexity: 6 phpMyFAQ\Setup\UpdateRunner::taskUpdateDatabase — Coverage: 0.0% | Lines: 22 | Complexity: 3 phpMyFAQ\Setup\Upgrade::checkFilesystem — Coverage: 63.6% | Lines: 22 | Complexity: 15 phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataRevisions — Coverage: 100.0% | Lines: 21 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faquser — Coverage: 100.0% | Lines: 21 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::createUniqueIndex — Coverage: 28.6% | Lines: 21 | Complexity: 3 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::up — Coverage: 0.0% | Lines: 21 | Complexity: 3 phpMyFAQ\Setup\Upgrade::extractPackage — Coverage: 0.0% | Lines: 21 | Complexity: 6 phpMyFAQ\Setup\InstallationRunner::stepCreateConfigFiles — Coverage: 0.0% | Lines: 20 | Complexity: 11 phpMyFAQ\Setup\InstallationRunner::stepEstablishDbConnection — Coverage: 0.0% | Lines: 19 | Complexity: 5 phpMyFAQ\Setup\InstallationRunner::stepInitializeSearchEngine — Coverage: 0.0% | Lines: 19 | Complexity: 5 phpMyFAQ\Setup\Migration\MigrationTracker::getAppliedMigrations — Coverage: 100.0% | Lines: 19 | Complexity: 7 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::formatValue — Coverage: 42.1% | Lines: 19 | Complexity: 12 phpMyFAQ\Setup\UpdateRunner::taskUpdateCheck — Coverage: 0.0% | Lines: 19 | Complexity: 3 phpMyFAQ\Setup\Upgrade::downloadPackage — Coverage: 73.7% | Lines: 19 | Complexity: 5 phpMyFAQ\Setup\Installation\SchemaInstaller::createTables — Coverage: 88.9% | Lines: 18 | Complexity: 10 phpMyFAQ\Setup\Installation\SchemaInstaller::createAndUseSchema — Coverage: 27.8% | Lines: 18 | Complexity: 6 phpMyFAQ\Setup\Migration\MigrationRegistry::registerDefaultMigrations — Coverage: 100.0% | Lines: 18 | Complexity: 1 phpMyFAQ\Setup\Upgrade::isPathSafe — Coverage: 100.0% | Lines: 18 | Complexity: 7 phpMyFAQ\Setup\AbstractSetup::checkPreUpgrade — Coverage: 76.5% | Lines: 17 | Complexity: 8 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcustompages — Coverage: 100.0% | Lines: 17 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::toArray — Coverage: 100.0% | Lines: 17 | Complexity: 1 phpMyFAQ\Setup\UpdateRunner::runDryRun — Coverage: 0.0% | Lines: 17 | Complexity: 3 phpMyFAQ\Setup\UpdateRunner::taskCreateTemporaryBackup — Coverage: 0.0% | Lines: 17 | Complexity: 2 phpMyFAQ\Setup\UpdateRunner::taskInstallPackage — Coverage: 0.0% | Lines: 17 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::execute — Coverage: 81.2% | Lines: 16 | Complexity: 7 phpMyFAQ\Setup\Update::applyUpdates — Coverage: 50.0% | Lines: 16 | Complexity: 4 phpMyFAQ\Setup\UpdateRunner::taskExtractPackage — Coverage: 0.0% | Lines: 16 | Complexity: 2 phpMyFAQ\Setup\UpdateToken::read — Coverage: 87.5% | Lines: 16 | Complexity: 9 phpMyFAQ\Setup\Upgrade::secureExtractZip — Coverage: 87.5% | Lines: 16 | Complexity: 6 phpMyFAQ\Setup\Upgrade::cleanUp — Coverage: 0.0% | Lines: 16 | Complexity: 5 phpMyFAQ\Setup\Installation\DatabaseSchema::faqnews — Coverage: 100.0% | Lines: 15 | Complexity: 1 phpMyFAQ\Setup\InstallationInputValidator::validateElasticsearchInput — Coverage: 0.0% | Lines: 15 | Complexity: 3 phpMyFAQ\Setup\InstallationInputValidator::validateOpenSearchInput — Coverage: 0.0% | Lines: 15 | Complexity: 3 phpMyFAQ\Setup\InstallationRunner::stepCreateDatabaseTables — Coverage: 0.0% | Lines: 15 | Complexity: 3 phpMyFAQ\Setup\Installer::checkBasicStuff — Coverage: 86.7% | Lines: 15 | Complexity: 6 phpMyFAQ\Setup\Migration\AbstractMigration::createIndex — Coverage: 33.3% | Lines: 15 | Complexity: 4 phpMyFAQ\Setup\UpdateRunner::run — Coverage: 93.3% | Lines: 15 | Complexity: 3 phpMyFAQ\Setup\Upgrade::verifyPackage — Coverage: 0.0% | Lines: 15 | Complexity: 4 phpMyFAQ\Setup\Migration\MigrationTracker::ensureTableExists — Coverage: 0.0% | Lines: 14 | Complexity: 6 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::buildIndexStatements — Coverage: 92.9% | Lines: 14 | Complexity: 4 phpMyFAQ\Setup\UpdateRunner::displayMigrationResults — Coverage: 100.0% | Lines: 14 | Complexity: 4 phpMyFAQ\Setup\Installation\DatabaseSchema::attachment — Coverage: 100.0% | Lines: 13 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategories — Coverage: 100.0% | Lines: 13 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqapiKeys — Coverage: 100.0% | Lines: 13 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthAuthCodes — Coverage: 100.0% | Lines: 13 | Complexity: 1 phpMyFAQ\Setup\InstallationInputValidator::validateLdapInput — Coverage: 0.0% | Lines: 13 | Complexity: 4 phpMyFAQ\Setup\InstallationRunner::run — Coverage: 0.0% | Lines: 13 | Complexity: 1 phpMyFAQ\Setup\EnvironmentConfigurator::adjustRewriteBaseHtaccess — Coverage: 83.3% | Lines: 12 | Complexity: 4 phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthAccessTokens — Coverage: 100.0% | Lines: 12 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqquestions — Coverage: 100.0% | Lines: 12 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqchatMessages — Coverage: 100.0% | Lines: 12 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqpushSubscriptions — Coverage: 100.0% | Lines: 12 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::getMigrations — Coverage: 83.3% | Lines: 12 | Complexity: 5 phpMyFAQ\Setup\UpdateToken::create — Coverage: 75.0% | Lines: 12 | Complexity: 5 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcomments — Coverage: 100.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthClients — Coverage: 100.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqjobs — Coverage: 100.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqseo — Coverage: 100.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::buildOpenSearchClientOptions — Coverage: 100.0% | Lines: 11 | Complexity: 4 phpMyFAQ\Setup\Migration\AbstractMigration::updateLanguageCode — Coverage: 100.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationTracker::recordMigration — Coverage: 100.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::createUser — Coverage: 0.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::execute — Coverage: 0.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::up — Coverage: 0.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Setup\Installation\DatabaseSchema::adminLog — Coverage: 100.0% | Lines: 10 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqchanges — Coverage: 100.0% | Lines: 10 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqsearches — Coverage: 100.0% | Lines: 10 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faquserdata — Coverage: 100.0% | Lines: 10 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::stepCreateInstance — Coverage: 0.0% | Lines: 10 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::timestampType — Coverage: 40.0% | Lines: 10 | Complexity: 8 phpMyFAQ\Setup\Migration\MigrationTracker::tableExists — Coverage: 60.0% | Lines: 10 | Complexity: 6 phpMyFAQ\Setup\UpdateRunner::taskDownloadPackage — Coverage: 0.0% | Lines: 10 | Complexity: 3 phpMyFAQ\Setup\HtaccessUpdater::validateHtaccessStructure — Coverage: 77.8% | Lines: 9 | Complexity: 5 phpMyFAQ\Setup\Installation\DatabaseSchema::faqforms — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqinstances — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthRefreshTokens — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqright — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqvoting — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::stepSeedConfiguration — Coverage: 0.0% | Lines: 9 | Complexity: 2 phpMyFAQ\Setup\Installer::startInstall — Coverage: 55.6% | Lines: 9 | Complexity: 2 phpMyFAQ\Setup\Migration\MigrationExecutor::collectOperations — Coverage: 100.0% | Lines: 9 | Complexity: 2 phpMyFAQ\Setup\Migration\MigrationTracker::isApplied — Coverage: 100.0% | Lines: 9 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::formatValue — Coverage: 66.7% | Lines: 9 | Complexity: 6 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::modifyColumn — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::dropColumn — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addColumn — Coverage: 100.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::autoIncrement — Coverage: 100.0% | Lines: 9 | Complexity: 2 phpMyFAQ\Setup\Update::optimizeTables — Coverage: 0.0% | Lines: 9 | Complexity: 4 phpMyFAQ\Setup\UpdateRunner::formatValue — Coverage: 88.9% | Lines: 9 | Complexity: 6 phpMyFAQ\Setup\UpdateRunner::taskHealthCheck — Coverage: 77.8% | Lines: 9 | Complexity: 3 phpMyFAQ\Setup\UpdateRunner::withProgress — Coverage: 0.0% | Lines: 9 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::backup — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcaptcha — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryrelations — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroup — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqsessions — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Installation\SchemaInstaller::dropTables — Coverage: 0.0% | Lines: 8 | Complexity: 4 phpMyFAQ\Setup\Migration\AbstractMigration::addColumn — Coverage: 62.5% | Lines: 8 | Complexity: 4 phpMyFAQ\Setup\Migration\MigrationResult::addOperationResult — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Setup\Migration\MigrationTracker::getLastAppliedVersion — Coverage: 87.5% | Lines: 8 | Complexity: 4 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addInteger — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createIndex — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Setup\Update::__construct — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Setup\Update::executeQueries — Coverage: 0.0% | Lines: 8 | Complexity: 5 phpMyFAQ\Setup\Installation\DatabaseSchema::faqglossary — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqvisits — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::executeMigrations — Coverage: 85.7% | Lines: 7 | Complexity: 4 phpMyFAQ\Setup\Migration\MigrationTracker::removeMigration — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createIndex — Coverage: 100.0% | Lines: 7 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::addColumn — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Update::collectDryRunQueries — Coverage: 28.6% | Lines: 7 | Complexity: 6 phpMyFAQ\Setup\HtaccessUpdater::createBackup — Coverage: 83.3% | Lines: 6 | Complexity: 3 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryOrder — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroupRightCategory — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqinstancesConfig — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqstopwords — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faquserlogin — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Installer::cleanFailedInstallationFiles — Coverage: 0.0% | Lines: 6 | Complexity: 3 phpMyFAQ\Setup\Installer::checkInitialRewriteBasePath — Coverage: 0.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Migration\AbstractMigration::dropColumns — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::autoIncrementColumn — Coverage: 0.0% | Lines: 6 | Complexity: 6 phpMyFAQ\Setup\Migration\AbstractMigration::getChecksum — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::getPendingMigrations — Coverage: 100.0% | Lines: 6 | Complexity: 3 phpMyFAQ\Setup\Migration\MigrationRegistry::getUnappliedMigrations — Coverage: 100.0% | Lines: 6 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::execute — Coverage: 0.0% | Lines: 6 | Complexity: 4 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getDescription — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createTablePrefix — Coverage: 100.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory::createForType — Coverage: 100.0% | Lines: 6 | Complexity: 6 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::integer — Coverage: 100.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::bigInteger — Coverage: 100.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::smallInteger — Coverage: 100.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Update::checkInitialRewriteBasePath — Coverage: 0.0% | Lines: 6 | Complexity: 2 phpMyFAQ\Setup\Update::insertFormInputs — Coverage: 0.0% | Lines: 6 | Complexity: 3 phpMyFAQ\Setup\EnvironmentConfigurator::getRewriteBase — Coverage: 80.0% | Lines: 5 | Complexity: 2 phpMyFAQ\Setup\Installation\DatabaseSchema::attachmentFile — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryNews — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryGroup — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryUser — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqconfig — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataGroup — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataTags — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataUser — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroupRight — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthScopes — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqtags — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faquserGroup — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faquserRight — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::faqadmindashboard — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::configuration — Coverage: 0.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::db — Coverage: 0.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::stepGrantPermissions — Coverage: 0.0% | Lines: 5 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::execute — Coverage: 0.0% | Lines: 5 | Complexity: 4 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationCounts — Coverage: 100.0% | Lines: 5 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\SqlOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::index — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::uniqueIndex — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\UpdateRunner::shortenPath — Coverage: 100.0% | Lines: 5 | Complexity: 3 phpMyFAQ\Setup\EnvironmentConfigurator::readHtaccess — Coverage: 75.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Installation\DatabaseSchema::faqbookmarks — Coverage: 100.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::applyPersonalSettings — Coverage: 100.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Setup\Installation\SchemaInstaller::executeSql — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\InstallationRunner::stepInsertFormInputs — Coverage: 0.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\InstallationRunner::stepAdjustHtaccess — Coverage: 0.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\AbstractMigration::booleanType — Coverage: 0.0% | Lines: 4 | Complexity: 4 phpMyFAQ\Setup\Migration\MigrationExecutor::truncateQuery — Coverage: 75.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::execute — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSqlForDbType — Coverage: 0.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\SqlOperation::execute — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addBoolean — Coverage: 100.0% | Lines: 4 | Complexity: 3 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::boolean — Coverage: 75.0% | Lines: 4 | Complexity: 4 phpMyFAQ\Setup\Update::runPostMigrationTasks — Coverage: 0.0% | Lines: 4 | Complexity: 3 phpMyFAQ\Setup\Update::getBackupFilename — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\UpdateRunner::truncateString — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\UpdateRunner::taskCleanup — Coverage: 0.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Setup\UpdateToken::getOrCreate — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\UpdateToken::isValid — Coverage: 100.0% | Lines: 4 | Complexity: 4 phpMyFAQ\Setup\Upgrade::__construct — Coverage: 100.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::__construct — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::stepInsertStopwords — Coverage: 0.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::stepCreateAnonymousUser — Coverage: 0.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::integerType — Coverage: 66.7% | Lines: 3 | Complexity: 3 phpMyFAQ\Setup\Migration\AbstractMigration::textType — Coverage: 66.7% | Lines: 3 | Complexity: 3 phpMyFAQ\Setup\Migration\AbstractMigration::varcharType — Coverage: 0.0% | Lines: 3 | Complexity: 3 phpMyFAQ\Setup\Migration\MigrationRegistry::register — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::execute — Coverage: 100.0% | Lines: 3 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDescription — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::shortenPath — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDescription — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::shortenPath — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyFile — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyDirectory — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getSqlQueries — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createIndex — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createIndex — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::up — Coverage: 0.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::up — Coverage: 0.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Update::isConfigTableNotAvailable — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Update::getFormattedDryRunReport — Coverage: 0.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\UpdateToken::delete — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Upgrade::getDownloadHost — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Upgrade::getPath — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Upgrade::getFilename — Coverage: 66.7% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\EnvironmentConfigurator::getServerPath — Coverage: 100.0% | Lines: 2 | Complexity: 4 phpMyFAQ\Setup\Installation\DefaultDataSeeder::seedConfig — Coverage: 0.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Installation\SchemaInstaller::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\InstallationInputValidator::isLdapEnabled — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Installer::getFormInputs — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isDbType — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::dropColumn — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::setDryRun — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::clearResults — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::getMigration — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::getLatestVersion — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\MigrationResult::setSuccess — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::setErrorMessage — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::setExecutionTimeMs — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::setDryRun — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getDescription — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getDescription — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSql — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::deleteConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::renameConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::updateConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::grantPermission — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::insertFormInput — Coverage: 0.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addOperation — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::clear — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::table — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addVarchar — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addTimestamp — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createTablePrefix — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::addColumn — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createTablePrefix — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createTablePrefix — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createTable — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createTableIfNotExists — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::alterTable — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropTable — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropTableIfExists — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createIndex — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createIndexIfNotExists — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropIndex — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::table — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::ifNotExists — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::varchar — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::timestamp — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::date — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::char — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::primaryKey — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::fullTextIndex — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::up — Coverage: 0.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Update::getDryRunResults — Coverage: 0.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Update::updateVersion — Coverage: 0.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\AbstractSetup::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\AbstractSetup::checkMinimumPhpVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\AbstractSetup::checkMinimumUpdateVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\AbstractSetup::checkMaintenanceMode — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\EnvironmentConfigurator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\EnvironmentConfigurator::getHtaccessPath — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InMemoryHtaccessFile::valid — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InMemoryHtaccessFile::isReadable — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\DatabaseSchema::getTableNames — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::getMainConfig — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::getMainRights — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\DefaultDataSeeder::getFormInputs — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installation\SchemaInstaller::getSchema — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInput::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInput::getLoginName — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInput::getPassword — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInput::getEmail — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInputValidator::isElasticsearchEnabled — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationInputValidator::isOpenSearchEnabled — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\InstallationRunner::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installer::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installer::checkMinimumPhpVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installer::hasLdapSupport — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Installer::hasElasticsearchSupport — Coverage: 100.0% | Lines: 1 | Complexity: 2 phpMyFAQ\Setup\Installer::isAlreadyInstalled — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isReversible — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::down — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::table — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isMySql — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isPostgreSql — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isSqlite — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::isSqlServer — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::dropTable — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::dropTableIfExists — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\AbstractMigration::getConfig — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::isDryRun — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationExecutor::getResults — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::getVersions — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationRegistry::hasMigration — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::isSuccess — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getErrorMessage — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getExecutionTimeMs — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::isDryRun — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getOperationResults — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getSuccessCount — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getFailureCount — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationResult::getOperationCount — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationTracker::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\MigrationTracker::getAppliedVersions — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getValue — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getOldKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getNewKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getValue — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getSource — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDestination — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getSource — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDestination — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperations — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationsByType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::toArray — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::count — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionName — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getUserId — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::getQuery — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::integer — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::bigInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::smallInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::varchar — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::text — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::longText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::blob — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::boolean — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::timestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::date — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::char — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::currentTimestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::currentDate — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::autoIncrement — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createTableSuffix — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::modifyColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::dropIndex — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::supportsColumnPositioning — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::supportsCombinedAlter — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::quoteIdentifier — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::integer — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::bigInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::smallInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::varchar — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::text — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::longText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::blob — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::boolean — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::timestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::date — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::char — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::currentTimestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::currentDate — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::autoIncrement — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createTableSuffix — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::addColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::modifyColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::dropIndex — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::supportsColumnPositioning — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::supportsCombinedAlter — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::quoteIdentifier — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::integer — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::bigInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::smallInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::varchar — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::text — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::longText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::blob — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::boolean — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::timestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::date — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::char — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::currentTimestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::currentDate — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::autoIncrement — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createTableSuffix — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::addColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::modifyColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::dropIndex — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::supportsColumnPositioning — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::supportsCombinedAlter — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::quoteIdentifier — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::integer — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::bigInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::smallInteger — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::varchar — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::text — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::longText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::blob — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::boolean — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::timestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::date — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::char — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::currentTimestamp — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::currentDate — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::autoIncrement — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createTableSuffix — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::addColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::modifyColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::dropIndex — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::supportsColumnPositioning — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::supportsCombinedAlter — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::quoteIdentifier — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory::create — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::getDialect — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::getTablePrefix — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::table — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::text — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::longText — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::blob — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320RC::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320RC::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320RC::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration320RC::up — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration323::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration323::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration323::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration405::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration405::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration405::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration407::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration407::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration407::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration409::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration409::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration409::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getVersion — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getDependencies — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getDescription — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Update::allMigrationsSucceeded — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\UpdateRunner::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\UpdateToken::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\UpdateToken::getTokenFilePath — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Upgrade::setUpgradeDirectory — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Upgrade::isNightly — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Upgrade::setIsNightly — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Upgrade::isMaintenanceEnabled — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

Sorted by descending CRAP (Change Risk Anti-Patterns) index.

Method CRAP Coverage
phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::up988.1634.1%
phpMyFAQ\Setup\UpdateRunner::displayDryRunReport7020.0%
phpMyFAQ\Setup\InstallationRunner::stepValidateConnectivity6000.0%
phpMyFAQ\Setup\InstallationRunner::stepCreateConfigFiles1320.0%
phpMyFAQ\Setup\Upgrade::installPackage1100.0%
phpMyFAQ\Setup\Upgrade::createTemporaryBackup900.0%
phpMyFAQ\Setup\Installer::checkNoncriticalSettings720.0%
phpMyFAQ\Setup\Installer::checkFilesystemPermissions420.0%
phpMyFAQ\Setup\Migration\AbstractMigration::autoIncrementColumn420.0%
phpMyFAQ\Setup\Migration\MigrationTracker::ensureTableExists420.0%
phpMyFAQ\Setup\Update::migrateAdminLogHashes420.0%
phpMyFAQ\Setup\Upgrade::extractPackage420.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::formatValue39.9442.1%
phpMyFAQ\Setup\InstallationInputValidator::validateDatabaseInput33.9082.0%
phpMyFAQ\Setup\InstallationRunner::stepEstablishDbConnection300.0%
phpMyFAQ\Setup\InstallationRunner::stepCreateAdminUser300.0%
phpMyFAQ\Setup\InstallationRunner::stepInitializeSearchEngine300.0%
phpMyFAQ\Setup\Update::executeQueries300.0%
phpMyFAQ\Setup\Upgrade::cleanUp300.0%
phpMyFAQ\Setup\Upgrade::checkFilesystem25.8263.6%
phpMyFAQ\Setup\Migration\AbstractMigration::timestampType21.8240.0%
phpMyFAQ\Setup\Installation\SchemaInstaller::dropTables200.0%
phpMyFAQ\Setup\InstallationInputValidator::validateLdapInput200.0%
phpMyFAQ\Setup\Migration\AbstractMigration::booleanType200.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::execute200.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::execute200.0%
phpMyFAQ\Setup\Update::optimizeTables200.0%
phpMyFAQ\Setup\Upgrade::verifyPackage200.0%
phpMyFAQ\Setup\Installation\SchemaInstaller::createAndUseSchema19.5627.8%
phpMyFAQ\Setup\Update::collectDryRunQueries19.1228.6%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::build1897.6%
phpMyFAQ\Setup\Migration\Versions\Migration323::up17.2321.2%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::buildCombined17.0675.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::up16.9471.4%
phpMyFAQ\Setup\Migration\MigrationExecutor::formatDryRunReport1598.1%
phpMyFAQ\Setup\Update::createConfigBackup14.2988.6%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta::up14.1147.5%
phpMyFAQ\Setup\InstallationInputValidator::validateUserCredentials13100.0%
phpMyFAQ\Setup\InstallationInputValidator::validateElasticsearchInput120.0%
phpMyFAQ\Setup\InstallationInputValidator::validateOpenSearchInput120.0%
phpMyFAQ\Setup\InstallationRunner::stepCreateDatabaseTables120.0%
phpMyFAQ\Setup\Installer::cleanFailedInstallationFiles120.0%
phpMyFAQ\Setup\Migration\AbstractMigration::varcharType120.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::execute120.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::up120.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::up120.0%
phpMyFAQ\Setup\Update::runPostMigrationTasks120.0%
phpMyFAQ\Setup\Update::insertFormInputs120.0%
phpMyFAQ\Setup\UpdateRunner::runDryRun120.0%
phpMyFAQ\Setup\UpdateRunner::taskUpdateCheck120.0%
phpMyFAQ\Setup\UpdateRunner::taskDownloadPackage120.0%
phpMyFAQ\Setup\UpdateRunner::taskInstallPackage120.0%
phpMyFAQ\Setup\UpdateRunner::taskUpdateDatabase120.0%
phpMyFAQ\Setup\HtaccessUpdater::addRewriteBase11.7735.3%
phpMyFAQ\Setup\Migration\MigrationExecutor::executeMigration11.4269.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::build11100.0%
phpMyFAQ\Setup\HtaccessUpdater::updateRewriteBase10.2985.7%
phpMyFAQ\Setup\Migration\AbstractMigration::indexExists10.2340.6%
phpMyFAQ\Setup\Installation\SchemaInstaller::createTables10.1488.9%
phpMyFAQ\Setup\UpdateToken::read9.1687.5%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getDescription9100.0%
phpMyFAQ\Setup\AbstractSetup::checkPreUpgrade8.8376.5%
phpMyFAQ\Setup\Migration\AbstractMigration::createIndex8.7433.3%
phpMyFAQ\Setup\Migration\MigrationTracker::tableExists8.3060.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::formatValue7.3366.7%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::execute7.3281.2%
phpMyFAQ\Setup\Migration\MigrationTracker::getAppliedMigrations7100.0%
phpMyFAQ\Setup\Upgrade::isPathSafe7100.0%
phpMyFAQ\Setup\Migration\Versions\Migration405::up6.4461.4%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::up6.4061.7%
phpMyFAQ\Setup\Migration\AbstractMigration::createUniqueIndex6.2828.6%
phpMyFAQ\Setup\Installer::checkBasicStuff6.0986.7%
phpMyFAQ\Setup\Upgrade::secureExtractZip6.0787.5%
phpMyFAQ\Setup\UpdateRunner::formatValue6.0588.9%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::seedConfig60.0%
phpMyFAQ\Setup\InstallationRunner::stepSeedConfiguration60.0%
phpMyFAQ\Setup\InstallationRunner::stepGrantPermissions60.0%
phpMyFAQ\Setup\InstallationRunner::stepInsertFormInputs60.0%
phpMyFAQ\Setup\InstallationRunner::stepAdjustHtaccess60.0%
phpMyFAQ\Setup\Installer::checkInitialRewriteBasePath60.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSqlForDbType60.0%
phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory::createForType6100.0%
phpMyFAQ\Setup\Update::checkInitialRewriteBasePath60.0%
phpMyFAQ\Setup\Update::applyUpdates6.0050.0%
phpMyFAQ\Setup\UpdateRunner::taskExtractPackage60.0%
phpMyFAQ\Setup\UpdateRunner::taskCreateTemporaryBackup60.0%
phpMyFAQ\Setup\Upgrade::downloadPackage5.4673.7%
phpMyFAQ\Setup\UpdateToken::create5.3975.0%
phpMyFAQ\Setup\HtaccessUpdater::validateHtaccessStructure5.2777.8%
phpMyFAQ\Setup\Migration\MigrationRegistry::getMigrations5.1283.3%
phpMyFAQ\Setup\Migration\AbstractMigration::addColumn4.8462.5%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::boolean4.2575.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::up4.1380.0%
phpMyFAQ\Setup\EnvironmentConfigurator::adjustRewriteBaseHtaccess4.0783.3%
phpMyFAQ\Setup\Migration\MigrationExecutor::executeMigrations4.0585.7%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta::rebuildTableWithoutColumns4.0585.7%
phpMyFAQ\Setup\Migration\MigrationTracker::getLastAppliedVersion4.0387.5%
phpMyFAQ\Setup\InstallationInputValidator::validate4.0191.4%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::buildIndexStatements4.0192.9%
phpMyFAQ\Setup\EnvironmentConfigurator::getServerPath4100.0%
phpMyFAQ\Setup\InstallationRunner::buildOpenSearchClientOptions4100.0%
phpMyFAQ\Setup\UpdateRunner::displayMigrationResults4100.0%
phpMyFAQ\Setup\UpdateToken::isValid4100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::integerType3.3366.7%
phpMyFAQ\Setup\Migration\AbstractMigration::textType3.3366.7%
phpMyFAQ\Setup\UpdateRunner::taskHealthCheck3.1077.8%
phpMyFAQ\Setup\HtaccessUpdater::createBackup3.0483.3%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultConfig399.5%
phpMyFAQ\Setup\Migration\MigrationExecutor::generateDryRunReport3.0092.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::getPendingMigrations3100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::getUnappliedMigrations3100.0%
phpMyFAQ\Setup\Migration\MigrationTracker::recordMigration3100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::execute3100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addBoolean3100.0%
phpMyFAQ\Setup\Migration\Versions\Migration407::up3100.0%
phpMyFAQ\Setup\UpdateRunner::run3.0093.3%
phpMyFAQ\Setup\UpdateRunner::shortenPath3100.0%
phpMyFAQ\Setup\Installer::startInstall2.3555.6%
phpMyFAQ\Setup\Upgrade::getFilename2.1566.7%
phpMyFAQ\Setup\EnvironmentConfigurator::readHtaccess2.0675.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::truncateQuery2.0675.0%
phpMyFAQ\Setup\EnvironmentConfigurator::getRewriteBase2.0380.0%
phpMyFAQ\Setup\InMemoryHtaccessFile::valid20.0%
phpMyFAQ\Setup\InMemoryHtaccessFile::isReadable20.0%
phpMyFAQ\Setup\Installation\SchemaInstaller::executeSql2100.0%
phpMyFAQ\Setup\InstallationInput::getEmail20.0%
phpMyFAQ\Setup\InstallationInputValidator::isLdapEnabled2100.0%
phpMyFAQ\Setup\InstallationRunner::configuration20.0%
phpMyFAQ\Setup\InstallationRunner::db20.0%
phpMyFAQ\Setup\InstallationRunner::run20.0%
phpMyFAQ\Setup\InstallationRunner::stepInsertStopwords20.0%
phpMyFAQ\Setup\InstallationRunner::stepCreateAnonymousUser20.0%
phpMyFAQ\Setup\InstallationRunner::stepCreateInstance20.0%
phpMyFAQ\Setup\Installer::hasElasticsearchSupport2100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::getConfig20.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::collectOperations2100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::getLatestVersion2100.0%
phpMyFAQ\Setup\Migration\MigrationResult::addOperationResult2100.0%
phpMyFAQ\Setup\Migration\MigrationTracker::isApplied2100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::shortenPath2100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::shortenPath2100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::execute2100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::createUser20.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::insertFormInput20.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getSqlQueries2100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationCounts2100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::execute2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::table2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addInteger2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addVarchar2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addTimestamp2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createTablePrefix2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::addColumn2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::date20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createTablePrefix2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::supportsCombinedAlter20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::date20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createTablePrefix2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::supportsCombinedAlter20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::date20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createTablePrefix2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::supportsCombinedAlter20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\DialectFactory::create20.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropTable2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropTableIfExists2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createIndexIfNotExists2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::dropIndex2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::table2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::integer2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::bigInteger2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::smallInteger2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::varchar2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::timestamp2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::date2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::char2100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::autoIncrement2100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::up20.0%
phpMyFAQ\Setup\Migration\Versions\Migration320RC::up20.0%
phpMyFAQ\Setup\Migration\Versions\Migration409::up2100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::up20.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::up20.0%
phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getDescription20.0%
phpMyFAQ\Setup\Update::getDryRunResults20.0%
phpMyFAQ\Setup\Update::getFormattedDryRunReport20.0%
phpMyFAQ\Setup\Update::updateVersion20.0%
phpMyFAQ\Setup\Update::getBackupFilename2100.0%
phpMyFAQ\Setup\UpdateRunner::truncateString2100.0%
phpMyFAQ\Setup\UpdateRunner::taskCleanup20.0%
phpMyFAQ\Setup\UpdateRunner::withProgress20.0%
phpMyFAQ\Setup\UpdateToken::getOrCreate2100.0%
phpMyFAQ\Setup\UpdateToken::delete2100.0%
phpMyFAQ\Setup\Upgrade::getDownloadHost2100.0%
phpMyFAQ\Setup\Upgrade::getPath2100.0%
phpMyFAQ\Setup\AbstractSetup::__construct1100.0%
phpMyFAQ\Setup\AbstractSetup::checkMinimumPhpVersion1100.0%
phpMyFAQ\Setup\AbstractSetup::checkMinimumUpdateVersion1100.0%
phpMyFAQ\Setup\AbstractSetup::checkMaintenanceMode1100.0%
phpMyFAQ\Setup\EnvironmentConfigurator::__construct1100.0%
phpMyFAQ\Setup\EnvironmentConfigurator::getHtaccessPath1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::__construct1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::getAllTables1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::getTableNames1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::adminLog1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::attachment1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::attachmentFile1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::backup1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqbookmarks1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcaptcha1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategories1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryNews1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryrelations1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryGroup1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryUser1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcategoryOrder1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqchanges1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcomments1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqconfig1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqdata1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataRevisions1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataGroup1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataTags1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqdataUser1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqforms1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqglossary1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroup1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroupRight1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqgroupRightCategory1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqinstances1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqinstancesConfig1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqapiKeys1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthClients1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthScopes1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthAccessTokens1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthRefreshTokens1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqoauthAuthCodes1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqnews1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqcustompages1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqjobs1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqquestions1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqright1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqsearches1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqseo1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqsessions1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqstopwords1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqtags1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faquser1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faquserdata1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faquserlogin1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faquserGroup1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faquserRight1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqvisits1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqvoting1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqchatMessages1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqpushSubscriptions1100.0%
phpMyFAQ\Setup\Installation\DatabaseSchema::faqadmindashboard1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::__construct1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::getMainConfig1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::applyPersonalSettings1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::getMainRights1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::getFormInputs1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultRights1100.0%
phpMyFAQ\Setup\Installation\DefaultDataSeeder::buildDefaultFormInputs1100.0%
phpMyFAQ\Setup\Installation\SchemaInstaller::__construct1100.0%
phpMyFAQ\Setup\Installation\SchemaInstaller::getSchema1100.0%
phpMyFAQ\Setup\InstallationInput::__construct1100.0%
phpMyFAQ\Setup\InstallationInput::getLoginName1100.0%
phpMyFAQ\Setup\InstallationInput::getPassword1100.0%
phpMyFAQ\Setup\InstallationInputValidator::isElasticsearchEnabled1100.0%
phpMyFAQ\Setup\InstallationInputValidator::isOpenSearchEnabled1100.0%
phpMyFAQ\Setup\InstallationRunner::__construct1100.0%
phpMyFAQ\Setup\Installer::__construct1100.0%
phpMyFAQ\Setup\Installer::checkMinimumPhpVersion1100.0%
phpMyFAQ\Setup\Installer::hasLdapSupport1100.0%
phpMyFAQ\Setup\Installer::getFormInputs1100.0%
phpMyFAQ\Setup\Installer::isAlreadyInstalled1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::__construct1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::getDependencies1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isReversible1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::down1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::table1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isDbType1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isMySql1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isPostgreSql1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isSqlite1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::isSqlServer1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::dropColumn1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::dropColumns1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::dropTable1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::dropTableIfExists1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::updateLanguageCode1100.0%
phpMyFAQ\Setup\Migration\AbstractMigration::getChecksum1100.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::__construct1100.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::setDryRun1100.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::isDryRun1100.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::getResults1100.0%
phpMyFAQ\Setup\Migration\MigrationExecutor::clearResults1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::__construct1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::register1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::registerDefaultMigrations1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::getMigration1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::getVersions1100.0%
phpMyFAQ\Setup\Migration\MigrationRegistry::hasMigration1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::__construct1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getVersion1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getDescription1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::isSuccess1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::setSuccess1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getErrorMessage1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::setErrorMessage1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getExecutionTimeMs1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::setExecutionTimeMs1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::isDryRun1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::setDryRun1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getOperationResults1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getSuccessCount1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getFailureCount1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::getOperationCount1100.0%
phpMyFAQ\Setup\Migration\MigrationResult::toArray1100.0%
phpMyFAQ\Setup\Migration\MigrationTracker::__construct1100.0%
phpMyFAQ\Setup\Migration\MigrationTracker::removeMigration1100.0%
phpMyFAQ\Setup\Migration\MigrationTracker::getAppliedVersions1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getValue1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getOldKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getNewKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getValue1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getSource1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDestination1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getSource1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDestination1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSql1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::deleteConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::renameConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::updateConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyFile1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyDirectory1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::grantPermission1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addOperation1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperations1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationsByType1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::clear1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::count1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionName1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getUserId1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getQuery1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::__construct1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::modifyColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::dropColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\AlterTableBuilder::addColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::getType1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::integer1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::bigInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::smallInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::varchar1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::text1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::longText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::blob1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::boolean1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::timestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::date1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::char1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::currentTimestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::currentDate1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::autoIncrement1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::createTableSuffix1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::modifyColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::dropIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::supportsColumnPositioning1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::supportsCombinedAlter1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\MysqlDialect::quoteIdentifier1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::getType1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::integer1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::bigInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::smallInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::varchar1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::text1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::longText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::blob1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::boolean1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::timestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::char1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::currentTimestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::currentDate1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::autoIncrement1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::createTableSuffix1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::addColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::modifyColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::dropIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::supportsColumnPositioning1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\PostgresDialect::quoteIdentifier1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::getType1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::integer1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::bigInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::smallInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::varchar1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::text1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::longText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::blob1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::boolean1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::timestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::char1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::currentTimestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::currentDate1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::autoIncrement1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::createTableSuffix1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::addColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::modifyColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::dropIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::supportsColumnPositioning1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqlServerDialect::quoteIdentifier1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::getType1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::integer1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::bigInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::smallInteger1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::varchar1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::text1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::longText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::blob1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::boolean1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::timestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::char1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::currentTimestamp1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::currentDate1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::autoIncrement1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::createTableSuffix1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::addColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::modifyColumn1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::dropIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::supportsColumnPositioning1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\Dialect\SqliteDialect::quoteIdentifier1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::__construct1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createTable1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::createTableIfNotExists1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::alterTable1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::getDialect1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::getTablePrefix1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\QueryBuilder::table1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::__construct1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::ifNotExists1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::text1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::longText1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::blob1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::primaryKey1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::index1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::fullTextIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::uniqueIndex1100.0%
phpMyFAQ\Setup\Migration\QueryBuilder\TableBuilder::addColumn1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Alpha::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320Beta2::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320RC::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320RC::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration320RC::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration323::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration323::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration323::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha2::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Alpha3::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration400Beta2::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration405::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration405::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration405::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration407::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration407::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration407::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration409::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration409::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration409::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha2::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getDependencies1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::getDescription1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration410Alpha3::up1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getVersion1100.0%
phpMyFAQ\Setup\Migration\Versions\Migration420Alpha::getDependencies1100.0%
phpMyFAQ\Setup\Update::__construct1100.0%
phpMyFAQ\Setup\Update::isConfigTableNotAvailable1100.0%
phpMyFAQ\Setup\Update::allMigrationsSucceeded1100.0%
phpMyFAQ\Setup\UpdateRunner::__construct1100.0%
phpMyFAQ\Setup\UpdateToken::__construct1100.0%
phpMyFAQ\Setup\UpdateToken::getTokenFilePath1100.0%
phpMyFAQ\Setup\Upgrade::__construct1100.0%
phpMyFAQ\Setup\Upgrade::setUpgradeDirectory1100.0%
phpMyFAQ\Setup\Upgrade::isNightly1100.0%
phpMyFAQ\Setup\Upgrade::setIsNightly1100.0%
phpMyFAQ\Setup\Upgrade::isMaintenanceEnabled1100.0%