Skip to content

CI

CI #66

Triggered via schedule July 6, 2026 12:05
Status Failure
Total duration 4m 35s
Artifacts 1

ci.yaml

on: schedule
Matrix: tests
Matrix: Coding standard
Matrix: Static analysis
Matrix: Test for mutants
Matrix: Code coverage finish
Status check - CI
5s
Status check - CI
Fit to window
Zoom out
Zoom in

Annotations

6 errors, 23 warnings, and 1 notice
Tests - Windows (best-effort)
Container operations are only supported on Linux runners
Tests - macOS (best-effort)
docker: command not found
Tests - MySQL 8.4, MariaDB 10.11
Process completed with exit code 2.
Tests - PHP 7.4, lowest deps
Process completed with exit code 2.
Tests - MySQL 9.4, MariaDB 12.0
Process completed with exit code 2.
Status check - CI
Process completed with exit code 1.
Coding standard (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Static analysis (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - MySQL 8.4, MariaDB 10.11
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 7.4, lowest deps
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - MySQL 9.4, MariaDB 12.0
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.2
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.3
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.1
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.1, nextras-dbal 4
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.4
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 8.0
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests - PHP 7.4
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test for mutants (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test for mutants (ubuntu-latest, 8.4): src/Auditor/InvalidDateMysqlAuditor.php#L49
Escaped Mutant for Mutator "NotIdentical": @@ @@ } } usort($entries, static function (array $a, array $b): int { - if ($a[0] !== $b[0]) { + if ($a[0] === $b[0]) { return strcmp($a[0], $b[0]); } return strcmp($a[1], $b[1]);
Test for mutants (ubuntu-latest, 8.4): src/Auditor/InvalidDateMysqlAuditor.php#L35
Escaped Mutant for Mutator "LogicalOr": @@ @@ continue; } $profile ??= $profiler->getProfile($table); - if ($profile === null || $profile['rowCount'] === 0) { + if ($profile === null && $profile['rowCount'] === 0) { break; } $name = $column['COLUMN_NAME'];
Test for mutants (ubuntu-latest, 8.4): src/Auditor/InvalidDateMysqlAuditor.php#L31
Escaped Mutant for Mutator "Continue_": @@ @@ $profile = null; foreach ($columnsByTable[$table] ?? [] as $column) { if (!in_array(strtolower($column['DATA_TYPE']), self::DateTypes, true)) { - continue; + break; } $profile ??= $profiler->getProfile($table); if ($profile === null || $profile['rowCount'] === 0) {
Test for mutants (ubuntu-latest, 8.4): src/Auditor/InvalidDateAuditor.php#L38
Escaped Mutant for Mutator "FalseValue": @@ @@ */ public function getSchemaRequest(): SchemaRequest { - return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), false, false, true); + return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), true, false, true); } public function getCategory(): AnalyserCategory {
Test for mutants (ubuntu-latest, 8.4): src/Auditor/ForeignKeyReferencedColumnExistenceMysqlAuditor.php#L35
Escaped Mutant for Mutator "Foreach_": @@ @@ public function analyse(): AnalysisResult { $existingTables = []; - foreach ($this->schema->getTableNames() as $name) { + foreach ([] as $name) { $existingTables[$name] = true; } $db = $this->schema->getDatabaseDefault()['name'];
Test for mutants (ubuntu-latest, 8.4): src/Auditor/ForeignKeyColumnTypeMismatchMysqlAuditor.php#L110
Escaped Mutant for Mutator "CastString": @@ @@ if ($charsetDiffers) { $changes = []; if ($pairFixable) { - $changes[] = ColumnTargetChange::forColumn($db, $fk->table, $column)->setCharsetCollation((string) $parentCharset, (string) $referenced['COLLATION_NAME']); + $changes[] = ColumnTargetChange::forColumn($db, $fk->table, $column)->setCharsetCollation((string) $parentCharset, $referenced['COLLATION_NAME']); } $entries[] = ['table' => $fk->table, 'column' => $column, 'kind' => 0, 'violation' => new Violation('foreign_key.charset_mismatch', 'Column ' . $sourceSource->toString() . ' references column ' . $referencedSource->toString() . ' but the character set does not match.', $sourceSource, $changes !== [], $changes !== [] ? self::FixHint : null, $changes)]; }
Test for mutants (ubuntu-latest, 8.4): src/Auditor/ForeignKeyColumnTypeMismatchMysqlAuditor.php#L57
Escaped Mutant for Mutator "Continue_": @@ @@ // absent (e.g. the referenced table does not exist) is excluded — that is the referenced-column // existence auditor's concern. if ($source === null || $referenced === null) { - continue; + break; } $charsetDiffers = $source['CHARACTER_SET_NAME'] !== $referenced['CHARACTER_SET_NAME']; $sizeDiffers = $source['COLUMN_TYPE'] !== $referenced['COLUMN_TYPE'];
Test for mutants (ubuntu-latest, 8.4): src/Auditor/ForeignKeyColumnNameMismatchMysqlAuditor.php#L42
Escaped Mutant for Mutator "TrueValue": @@ @@ $pattern = $this->config->getPattern(); $baseTables = []; foreach ($this->schema->getTables() as $table) { - $baseTables[$table['TABLE_NAME']] = true; + $baseTables[$table['TABLE_NAME']] = false; } $fkColumns = []; foreach ($this->schema->getForeignKeyGraph()->getConstraints() as $constraint) {
Test for mutants (ubuntu-latest, 8.4): src/Auditor/EmptyTableAuditor.php#L38
Escaped Mutant for Mutator "FalseValue": @@ @@ */ public function getSchemaRequest(): SchemaRequest { - return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), false, false, true); + return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), true, false, true); } public function getCategory(): AnalyserCategory {
Test for mutants (ubuntu-latest, 8.4): src/Auditor/EmptyColumnAuditor.php#L39
Escaped Mutant for Mutator "FalseValue": @@ @@ */ public function getSchemaRequest(): SchemaRequest { - return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), false, false, true); + return new SchemaRequest(ColumnCharsetClass::any(), new TableExclude(), false, true, true); } public function getCategory(): AnalyserCategory {
Tests - macOS (best-effort)
The macos-latest label will migrate to macOS 26 beginning June 15, 2026. For more information see https://github.com/actions/runner-images/issues/14167

Artifacts

Produced during runtime
Name Size Digest
Logs - Mutations
105 KB
sha256:e685a087b12c6f8265bed1f96f72f48738a743c82f1766f959b13b88d98409fa