about summary refs log tree commit diff
path: root/docs/dev
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2020-01-29 12:51:52 +0000
committerGitHub <noreply@github.com>2020-01-29 12:51:52 +0000
commitabc5828c057f65c8caa7e1adaca4d55519be457b (patch)
treefa72ecad87a91d9613591a464af6a57f723eb65d /docs/dev
parent9f68f7acf2e4cae65122cae072bae2386f48bff1 (diff)
parent4ec5f6e25850b3064b258739eabefdeb8a4bd1b5 (diff)
downloadrust-abc5828c057f65c8caa7e1adaca4d55519be457b.tar.gz
rust-abc5828c057f65c8caa7e1adaca4d55519be457b.zip
Merge #2937
2937: Parse cargo output a line at a time. r=kiljacken a=kiljacken

We previously used serde's stream deserializer to read json blobs from
the cargo output. It has an issue though: If the deserializer encounters
invalid input, it gets stuck reporting the same error again and again
because it is unable to foward over the input until it reaches a new
valid object.

Reading a line at a time and manually deserializing fixes this issue,
because cargo makes sure to only outpu one json blob per line, so should
we encounter invalid input, we can just skip a line and continue.

The main reason this would happen is stray printf-debugging in
procedural macros, so we still report that an error occured, but we
handle it gracefully now.

Fixes #2935

Co-authored-by: Emil Lauridsen <mine809@gmail.com>
Diffstat (limited to 'docs/dev')
0 files changed, 0 insertions, 0 deletions