| 1001 | } |
| 1002 | |
| 1003 | static void merge_pkg_entries(cbm_pipeline_ctx_t *ctx, cbm_pkg_entries_t *pkg_entries, |
| 1004 | int worker_count) { |
| 1005 | if (!pkg_entries) { |
| 1006 | return; |
| 1007 | } |
| 1008 | /* Supplement with a repo-wide filesystem walk so manifests filtered |
| 1009 | * by the main discoverer (package.json, composer.json — in |
| 1010 | * IGNORED_JSON_FILES) still feed pkgmap. Append into worker 0's |
| 1011 | * array so the existing merge below sees them. */ |
| 1012 | cbm_pkgmap_scan_repo(ctx->repo_path, &pkg_entries[0], ctx->excluded_dirs, ctx->excluded_count); |
| 1013 | cbm_pipeline_set_pkgmap(cbm_pkgmap_build(pkg_entries, worker_count, ctx->project_name)); |
| 1014 | for (int i = 0; i < worker_count; i++) { |
| 1015 | cbm_pkg_entries_free(&pkg_entries[i]); |
| 1016 | } |
| 1017 | free(pkg_entries); |
| 1018 | } |
| 1019 | |
| 1020 | static void log_extract_mem_stats(int worker_count) { |
| 1021 | if (cbm_mem_budget() > 0) { |
no test coverage detected