mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-30 02:37:19 +02:00
Merge branch 'fix/runtool_crcrlf_v5.1' into 'release/v5.1'
fix: save RunTool command output with correct line endings (v5.1) See merge request espressif/esp-idf!28678
This commit is contained in:
@ -1,4 +1,4 @@
|
|||||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
# SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
import asyncio
|
import asyncio
|
||||||
import importlib
|
import importlib
|
||||||
@ -8,7 +8,6 @@ import re
|
|||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
from asyncio.subprocess import Process
|
from asyncio.subprocess import Process
|
||||||
from io import open
|
|
||||||
from pkgutil import iter_modules
|
from pkgutil import iter_modules
|
||||||
from types import FunctionType
|
from types import FunctionType
|
||||||
from typing import Any, Dict, Generator, List, Match, Optional, TextIO, Tuple, Union
|
from typing import Any, Dict, Generator, List, Match, Optional, TextIO, Tuple, Union
|
||||||
@ -396,7 +395,11 @@ class RunTool:
|
|||||||
last_line = ''
|
last_line = ''
|
||||||
|
|
||||||
try:
|
try:
|
||||||
with open(output_filename, 'w', encoding='utf8') as output_file:
|
# The command output from asyncio stream already contains OS specific line ending,
|
||||||
|
# because it's read in as bytes and decoded to string. On Windows "output" already
|
||||||
|
# contains CRLF. Use "newline=''" to prevent python to convert CRLF into CRCRLF.
|
||||||
|
# Please see "newline" description at https://docs.python.org/3/library/functions.html#open
|
||||||
|
with open(output_filename, 'w', encoding='utf8', newline='') as output_file:
|
||||||
while True:
|
while True:
|
||||||
if self.interactive:
|
if self.interactive:
|
||||||
output = await read_interactive_stream()
|
output = await read_interactive_stream()
|
||||||
|
Reference in New Issue
Block a user