abap2ui5/abap2UI5 linter

Validate abap2UI5 app classes — the ABAP and the view it builds, checked together. No SAP system needed.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Aug 29, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: abap2ui5/linter@8ae804f2db216f6cff629194ebd46db3af01fa9c # v0.5.1

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
pathsFiles or directories to check (space-separated). Unset: the repo's abap2ui5lint.jsonc "paths", falling back to srcno""
min-ui5UI5 floor for the property gate. Unset: the repo's abap2ui5lint.jsonc, falling back to 1.71no""
fail-onLowest severity that fails the job: error, warning, hint or never. Unset: the repo's abap2ui5lint.jsonc, falling back to warningno""
annotationsAnnotate the findings on the pull request diff (GitHub workflow commands). Set to false to keep the log plainnotrue
badgeWrite the verdict badge ("check-abap2UI5 | 147 rules passed") to this path, e.g. .github/badges/check-abap2ui5.json. Unset: the repo's abap2ui5lint.jsonc "badge", or no badge at all. Committing the file is the workflow's jobno""
sarifAlso write a SARIF report to this path, e.g. abap2ui5lint.sarif, for a following github/codeql-action/upload-sarif step to put the findings in the repository's code-scanning tab. Written in the SAME run as the log report, so the render gate is not paid twiceno""
badge-corpusWrite the corpus badge ("abap2UI5 | 148 apps · 172 views · 2,176 controls") to this path, e.g. .github/badges/abap2ui5.json. Same rules as "badge"no""
renderRun the render gate (a real XMLView.create in headless Chromium). On by default - it finds defects no static rule can. Set to false for a much faster job: it skips the ~118 MB UI5 runtime and the Chromium download, and every property-gate rule still runsnotrue
screenshotsAlso photograph every checked view into this directory (e.g. build/screenshots), for the workflow to upload as an artifact or post on the pull request. Runs after the check whether it passed or failed - a picture of what broke is worth more than one of what did not. Needs the render gate; skipped with a warning when render is falseno""
screenshot-sizeViewport(s) for the screenshots, e.g. "390x844,1280x900" for a phone-and-desktop matrix. Unset: 1280x900no""
screenshot-themeUI5 theme for the screenshots, e.g. sap_horizon_dark. Unset: sap_horizonno""
flagsExtra CLI flags, e.g. "--allow sap.m.Avatar.displaySize"no""
namedescription
problemsTotal findings reported (errors + warnings + hints)
errorsFindings of severity error
warningsFindings of severity warning
hintsFindings of severity hint
filesNumber of files the gates were run over
exit-codeThe linter's exit code: 0 clean, 1 findings at or above fail-on
sarifPath of the SARIF file, when the "sarif" input asked for one