From 7f17f6ea4b11d931f84a21971a47ea4a2adfbc55 Mon Sep 17 00:00:00 2001 From: David Souther Date: Wed, 27 Nov 2024 10:35:48 -0500 Subject: [PATCH] Normalize adding (and allowing missing) trailing newlines for READMEs. (#7110) * Normalize adding (and allowing missing) trailing newlines for READMEs. * Ensure ending newline in renderer, rather than renderer and diff. --- .tools/readmes/render.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.tools/readmes/render.py b/.tools/readmes/render.py index f4e97cd335e..d99270fbd58 100644 --- a/.tools/readmes/render.py +++ b/.tools/readmes/render.py @@ -304,6 +304,7 @@ def render(self) -> RenderStatus: customs=customs, unsupported=unsupported, ) + self.readme_text += "\n" # Jinja is the worst and strips trailing new lines [text, errors] = expand_all_entities(self.readme_text, self.scanner.doc_gen.entities) if errors: raise errors @@ -332,7 +333,11 @@ def write(self): def read_current(self): try: with self.readme_filename.open("r", encoding="utf-8") as f: - return f.read() + current = f.read() + if current[-1] != "\n": + # Ensure there's always an ending newline + current += "\n" + return current except FileNotFoundError: return ""