Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
upload-cloud

GitHub Action

Python Syntax Checker

0.1.2

Python Syntax Checker

upload-cloud

Python Syntax Checker

Run flake8 to find syntax errors in a Python repo

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Python Syntax Checker

uses: cclauss/Find-Python-syntax-errors-action@0.1.2

Learn more about this action in cclauss/Find-Python-syntax-errors-action

Choose a version

Action that finds Python 3 syntax errors and undefined names

A GitHub Action that runs selected flake8 tests on the Python code in your repo. If there are syntax errors or undefined names found in your Python code then this Action will fail.

Example workflow (Put the following text into .github/main.workflow):

workflow "New workflow" {
  on = "push"
  resolves = ["Find Python 3 syntax errors and undefined names"]
}

action "Find Python 3 syntax errors and undefined names" {
  uses = "cclauss/Find-Python-syntax-errors-action@master"
}

Flake8 finds Python 3 syntax errors and undefined names

$ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics

E901,E999,F821,F822,F823 are the "showstopper" flake8 issues that can halt the runtime with a SyntaxError, NameError, etc. These 5 are different from most other flake8 issues which are merely "style violations" -- useful for readability but they do not effect runtime safety.

  • F821: undefined name name
  • F822: undefined name name in __all__
  • F823: local variable name referenced before assignment
  • E901: SyntaxError or IndentationError
  • E999: SyntaxError -- failed to compile a file into an Abstract Syntax Tree