schneespur/vendor/psy/psysh/.phan/merge-baselines.php
Michael ee3dbba6cc Initial release v1.0.0
Schneespur — Open-source winter service documentation software (PWA + Admin).
GPS tracking via OwnTracks, weather data, photo evidence, and legally
compliant service records for winter maintenance operators.

License: AGPL-3.0-or-later
2026-05-17 13:33:51 +00:00

31 lines
1,000 B
PHP

<?php
/**
* Helper function to merge multiple Phan baseline files.
*
* @param string[] $baselineFiles Array of baseline file paths to merge
*
* @return array Merged baseline array with 'file_suppressions' key
*/
function mergeBaselines(array $baselineFiles): array
{
$merged = ['file_suppressions' => []];
foreach ($baselineFiles as $baseline) {
if (file_exists($baseline)) {
$data = require $baseline;
if (isset($data['file_suppressions'])) {
foreach ($data['file_suppressions'] as $file => $suppressions) {
if (!isset($merged['file_suppressions'][$file])) {
$merged['file_suppressions'][$file] = [];
}
$merged['file_suppressions'][$file] = array_values(array_unique(
array_merge($merged['file_suppressions'][$file], $suppressions)
));
}
}
}
}
return $merged;
}