mirror of
https://github.com/PartialVolume/shredos.x86_64.git
synced 2026-03-28 13:32:11 +00:00
Create 3 new check functions to warn when: - there are consecutive empty lines in the file, see [1]; - the last line of the file is empty, see [2]; - there are lines with trailing whitespace, see [3]. Apply these functions to Config.*, *.mk and *.hash, but not for *.patch files since they can contain any of these and still be valid. [1] http://patchwork.ozlabs.org/patch/682660/ [2] http://patchwork.ozlabs.org/patch/643288/ [3] http://patchwork.ozlabs.org/patch/398984/ Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
55 lines
1.6 KiB
Python
55 lines
1.6 KiB
Python
# See support/scripts/check-package.txt before editing this file.
|
|
|
|
from checkpackagebase import _CheckFunction
|
|
|
|
|
|
class ConsecutiveEmptyLines(_CheckFunction):
|
|
def before(self):
|
|
self.lastline = "non empty"
|
|
|
|
def check_line(self, lineno, text):
|
|
if text.strip() == "" == self.lastline.strip():
|
|
return ["{}:{}: consecutive empty lines"
|
|
.format(self.filename, lineno)]
|
|
self.lastline = text
|
|
|
|
|
|
class EmptyLastLine(_CheckFunction):
|
|
def before(self):
|
|
self.lastlineno = 0
|
|
self.lastline = "non empty"
|
|
|
|
def check_line(self, lineno, text):
|
|
self.lastlineno = lineno
|
|
self.lastline = text
|
|
|
|
def after(self):
|
|
if self.lastline.strip() == "":
|
|
return ["{}:{}: empty line at end of file"
|
|
.format(self.filename, self.lastlineno)]
|
|
|
|
|
|
class NewlineAtEof(_CheckFunction):
|
|
def before(self):
|
|
self.lastlineno = 0
|
|
self.lastline = "\n"
|
|
|
|
def check_line(self, lineno, text):
|
|
self.lastlineno = lineno
|
|
self.lastline = text
|
|
|
|
def after(self):
|
|
if self.lastline == self.lastline.rstrip("\r\n"):
|
|
return ["{}:{}: missing newline at end of file"
|
|
.format(self.filename, self.lastlineno),
|
|
self.lastline]
|
|
|
|
|
|
class TrailingSpace(_CheckFunction):
|
|
def check_line(self, lineno, text):
|
|
line = text.rstrip("\r\n")
|
|
if line != line.rstrip():
|
|
return ["{}:{}: line contains trailing whitespace"
|
|
.format(self.filename, lineno),
|
|
text]
|