Repository navigation
fix: add all found executables to PATH - #22
Conversation
Рефакторинг #20 случайно изменил семантику addExecutablesToPath: break вышел из внешнего цикла по списку исполняемых файлов, поэтому в PATH добавлялся только первый найденный (ring), а 1cedtcli.sh перестал находиться последующими шагами workflow. Убрал break: в PATH добавляются все найденные исполнаемые файлы, как было до рефакторинга.
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Check all executable names src/tools/pathManager.ts |
The loop continues after adding a matching executable’s directory to PATH. |
Priority:
Estimated code review effort: 2 (Simple) | ~5 minutes
Change: Bug fix
Merge Risk: 
Minimal · up to e95ce
-
No merge-blocking issue is identified; normal checks remain appropriate before merging.
Pre-merge checks: 
5
-
Full details: Docstring Coverage
-
Explanation
No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 0 files.
-
Finishing Touches: 💡 1
-
🛠️ Fix failing CI checks: 💡
-
- Commit to this branch
- Create a new PR
📝 Generate docstrings
-
- Commit to this branch
- Create a new PR
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands.
|
Красный чек TypeScript Tests — pre-existing, не связан с правкой: на чистом Существенные проверки: Check dist/ — pass, GitHub Actions Test (реальный прогон action) — pass. |
Описание
После рефакторинга #20 (ad7affb)
PathManager.addExecutablesToPathдобавляет вPATHтолько первый найденный исполняемый файл:breakпри переносе кода изupdatePath()оказался во внешнем цикле по спискуexecutablesвместо внутреннего цикла по результатам glob.До рефакторинга
breakзавершал только обход результатов glob для одного имени файла, и вPATHпопадали все исполняемые файлы из спискаgetRunFileNames().Последствия бага
Для EDT список такой:
['ring', '1cedtcli.sh'](Linux). ВPATHдобавляется только каталогring, а каталог1cedtcli.sh— нет. Все последующие шаги, вызывающие1cedtcli.sh(например,alkoleft/onec-edtcli-command-action), падают:Пример упавшего workflow: https://github.com/bia-technologies/yaxunit/actions/runs/40744254070/job/123013706550 (шаг «Установка 1C:EDT» успешен, в логе только
add to PATH .../ring, следующий шаг не находит1cedtcli.sh).Все прогоны yaxunit с шагом конвертации EDT падают с 05.02.2026 — с момента, когда
@mainподтянул e1cd593.Изменения
breakвsrc/tools/pathManager.ts— вPATHдобавляются все найденные исполняемые файлы (возвращена семантика до рефакторинга).dist/(pnpm run package), diff диста содержит ровно то же удалениеbreak.Проверено
pnpm run format:check— okpnpm run lint— 0 ошибок (12 warnings — ранее существующие, не из этого PR)pnpm run package— собран, diffdist/соответствует изменению srcpathManagerв проекте нет (ci-testпустой)Summary by CodeRabbit