From da25b9475d4e622183eb21ad8eae926d09f51c1c Mon Sep 17 00:00:00 2001 From: Joshua Bird Date: Mon, 12 Sep 2022 13:37:51 -0400 Subject: [PATCH] fix: Try to add a trailing newline if the file had one (#1260) --- packages/cli/src/api/formats/minimal.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/cli/src/api/formats/minimal.ts b/packages/cli/src/api/formats/minimal.ts index 635da9934..7ddbd8f53 100644 --- a/packages/cli/src/api/formats/minimal.ts +++ b/packages/cli/src/api/formats/minimal.ts @@ -23,7 +23,17 @@ const minimal: CatalogFormatter = { write(filename, catalog) { const messages = serialize(catalog) - writeFileIfChanged(filename, JSON.stringify(messages, null, 2)) + let file = null + try { + file = await fsPromises.readFile(filePath, 'utf8') + } catch (error) { + if (error.code !== "ENOENT") { + throw error + } + } + const shouldUseTrailingNewline = file === null || file?.endsWith("\n") + const trailingNewLine = shouldUseTrailingNewline ? "\n" : "" + fs.writeFileSync(filename, `${JSON.stringify(messages, null, 2)}${trailingNewLine}`) }, read(filename) {