AddMissingHeaderRule
Verify if required header comments exist in a module.
Configuration is required in .fixit.config.yaml
in order to enable this rule:
rule_config:
AddMissingHeaderRule:
path: pkg/*.py
header: |-
# header line 1
# header line 2
(Use |-
to keep newlines and add no new line at the end of header comments.)
path
is a glob-style str
used in Path.match().
The specified header
is a newline-separated str
to be enforced in files whose path matches.
Message
A required header comment for this file is missing.
Has Autofix: Yes
VALID Code Examples
# 1:
import libcst
# 2:
config:
repo_root: .
rule_config:
AddMissingHeaderRule:
header: '# header line 1
# header line 2'
path: '*.py'
# header line 1
# header line 2
import libcst
# 3:
config:
repo_root: .
rule_config:
AddMissingHeaderRule:
header: '# header line 1
# header line 2'
path: '*.py'
# header line 1
# header line 2
# An extra header line is ok
import libcst
# 4:
config:
repo_root: .
rule_config:
AddMissingHeaderRule:
header: '# header line 1
# header line 2'
path: a/*.py
path: b/m.py
# other header in an unrelated file
import libcst
INVALID Code Examples
# 1:
config:
repo_root: .
rule_config:
AddMissingHeaderRule:
header: '# header line'
path: '*.py'
# wrong header
Autofix:
---
+++
@@ -1 +1,2 @@
+# header line
# wrong header
# 2:
config:
repo_root: .
rule_config:
AddMissingHeaderRule:
header: '# header line'
path: '*.py'
#!/usr/bin/env python
# wrong header
Autofix:
---
+++
@@ -1,3 +1,3 @@
-
#!/usr/bin/env python
+# header line
# wrong header