Skip to content
Linter for ABAP
Branch: master
Clone or download
Latest commit 030363b Jul 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode json Feb 6, 2019
src
test
web fixes #447 Jul 18, 2019
.gitignore update deps, add pkg lock, close #300 Feb 28, 2019
.npmignore some LSP + refactoring Dec 23, 2018
.travis.yml
LICENSE Initial commit Dec 20, 2015
README.md Update README.md Jul 6, 2019
abaplint abaplint bin command fix (#298) Dec 18, 2018
abaplint-x abaplint bin command fix (#298) Dec 18, 2018
package-lock.json Greenkeeper/@types/node 12.6.6 (#452) Jul 18, 2019
package.json 1.7.10 Jul 19, 2019
travis.sh rename Nov 7, 2018
tsconfig.json incremental typescript builds Mar 31, 2019
tslint.json additional object types Dec 21, 2018
version.sh move version method to Registry Dec 23, 2018

README.md

npm version Build Status Dependency Status Greenkeeper badge

abaplint

Linter for ABAP, code must be serialized using abapGit.

Regarding versioning: semantic versioning is currently not followed, recommend fixing usage to a specific version

Online Playground

Syntax Diagrams

The code is in active development and some rules may not be described in documentation yet. In order to see the default configuration with all the rules run abaplint -d. You may also save it as the current config in the root dir of your project abaplint -d > abaplint.json

Works with

For checking ABAP code inside the ABAP system use code inspector or ATC, also see project abapOpenChecks.

Requirements

Node.js 10

Building

npm install
npm test

Parsing vs standard ABAP

  • Spaces required after string literals and before right parenthesis, following gives parser error lo_obj->method( 'FOO').

  • CALL FUNCTION EXCEPTIONS must be well formed, eg not

  CALL FUNCTION 'RFC_PING'
    EXCEPTIONS
      OTHERS.

  CALL FUNCTION 'RFC_PING'
    EXCEPTIONS = 2.
  • Only single chaining, following gives parser error: WRITE: bar: foo.
You can’t perform that action at this time.