aminya / aminya/setup-cpp

Integrate GitHub Actions Logging (problem matchers)

Offen
#34 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Ein zugehöriger Pull Request wurde bereits gemerged.

  • #35 von @aminya — gemerged
  • #36 von @aminya — gemerged
enhancement help wanted
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)
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

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Ö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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.