Integrate GitHub Actions Logging (problem matchers)
Ein zugehöriger Pull Request wurde bereits gemerged.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 276
- Forks
- 37
- Ø Merge
- 1 T. 4 Std.
- Gemergte PRs (30 T.)
- 12
Beschreibung
https://github.com/actions/toolkit/blob/master/docs/problem-matchers.md
- clang #36
example:
ThinLTO: CMakeFiles/main.dir/Release/src/main/main.cpp.o0: error: Invalid record
LLVM ERROR: Can't load module, abort.
clang-14: error: unable to execute command: Abort trap: 6
clang-14: error: linker command failed due to signal (use -v to see invocation)
- gcc #35
- msvc #35
- clang-tidy #36
- cppcheck https://github.com/cpp-best-practices/project_options/pull/66
- cmake
example:
CMake Warning at /Users/runner/work/project_options/project_options/src/Cache.cmake:33 (message):
ccache is enabled but was not found. Not using it
Call Stack (most recent call first):
/Users/runner/work/project_options/project_options/src/Index.cmake:145 (enable_cache)
CMakeLists.txt:31 (project_options)
- meson
- ld
example:
ld: warning: dylib (/Users/runner/hostedtoolcache/llvm/14.0.0/x64/lib/libc++.dylib) was built for newer macOS version (11.6) than being linked (11.0)
- python #35
- ninja:
ninja: build stopped: subcommand failed.
- task:
task: Failed to run task "test_release": exit status 1
How to contribute:
Here is an example for GCC:
https://github.com/aminya/setup-cpp/blob/016b16a6b80fc35bd539850d0123841d8f3fca36/src/gcc/gcc.ts#L120-L131
The matcher file has a regex for matching the errors/warnings of the tool (escape " and \ in regex).
https://github.com/aminya/setup-cpp/blob/master/src/gcc/gcc_matcher.json
Script for copying the matcher to dist
https://github.com/aminya/setup-cpp/blob/016b16a6b80fc35bd539850d0123841d8f3fca36/package.json#L19
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit den referenzierten Beispielen in src/gcc/gcc.ts und src/gcc/gcc_matcher.json und sieh dir anschließend package.json für das matcher-copy-Skript an. Überprüfe die nicht abgehakten cmake-, meson-, ld-, ninja- und task-Fälle sowie deren Beispielausgabe. Erledigt bedeutet, Problem-Matcher für die verbleibenden Tools hinzuzufügen und sicherzustellen, dass sie in der verteilten Action enthalten sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cmake, github-actions, python, typescript
- Bereich
- ci-cd, devops, tooling
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100