Skip to content

Latest commit

 

History

History
79 lines (61 loc) · 2.25 KB

axioms.md

File metadata and controls

79 lines (61 loc) · 2.25 KB

Axioms

Below is a complete list of axioms that Repolinter can check.

Contents

Reference

contributor-count

This axiom uses gitlog to count the number of contributors to the current git repository. Contributors are counted based on unique occurrences of an author name in the git log. This axiom is a numerical axiom, meaning numerical comparisons can be used.

An example of using this axiom:

{
  "axioms": {
    "contributor-count": "contributors"
  },
  "rules": {
    "my-rule": {
      "where": ["contributors>6", "contributors<200"],
      // ...
    }
  }
}

licensee

This axiom uses licensee to detect the license used in the current repository. To use this axiom licensee must be installed in your PATH or in the same directory as Repolinter. This axiom will return a list of license identifiers associated with the current repository.

An example of using this axiom:

{
  "axioms": {
    "licensee": "license"
  },
  "rules": {
    "my-rule": {
      "where": ["license=Apache-2.0"],
      // ...
    }
  }
}

linguist

This axiom uses GitHub's linguist to detect programming languages in the current repository. To use this axiom, linguist must be installed in the system PATH or in the same directory as Repolinter. This axiom will return a lowercase list of programming languages from this list of supported languages.

An example of using this axiom:

{
  "axioms": {
    "linguist":" language"
  },
  "rules": {
    "my-rule": {
      "where": ["language=javascript"],
      // ...
    }
  }
}

packagers

This axiom detects the projects packaging system by looking for project metadata files such as the package.json. The list of detectable packaging systems can be found in the axiom source.