When reporting problematic blocks, focus on the relevant lines.
This commit is contained in:
parent
fc166e41a1
commit
d00937c6eb
@ -12,6 +12,8 @@ from typing import Generator, List, Tuple, Union
|
|||||||
|
|
||||||
from . import dom
|
from . import dom
|
||||||
|
|
||||||
|
DEBUG_DIFF_CONTEXT = 10
|
||||||
|
|
||||||
BASE_ENVIRONMENT = {
|
BASE_ENVIRONMENT = {
|
||||||
"org-footnote-section": "Footnotes",
|
"org-footnote-section": "Footnotes",
|
||||||
"org-options-keywords": (
|
"org-options-keywords": (
|
||||||
@ -1880,7 +1882,24 @@ def loads(s, environment=BASE_ENVIRONMENT, extra_cautious=True):
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
sys.stderr.writelines(diff)
|
context_start = None
|
||||||
|
context_last_line = None
|
||||||
|
for i, line in enumerate(diff):
|
||||||
|
if not line.startswith(" "):
|
||||||
|
if context_start is None:
|
||||||
|
context_start = i
|
||||||
|
context_last_line = i
|
||||||
|
elif context_start:
|
||||||
|
if i > (context_last_line + DEBUG_DIFF_CONTEXT):
|
||||||
|
start = max(0, context_start - DEBUG_DIFF_CONTEXT)
|
||||||
|
end = min(len(diff), context_last_line + DEBUG_DIFF_CONTEXT)
|
||||||
|
print(
|
||||||
|
"## Lines {} to {}".format(start + 1, end + 1),
|
||||||
|
file=sys.stderr,
|
||||||
|
)
|
||||||
|
sys.stderr.writelines(diff[start:end])
|
||||||
|
context_start = None
|
||||||
|
context_last_line = None
|
||||||
# print("---\n" + after_dump + "\n---")
|
# print("---\n" + after_dump + "\n---")
|
||||||
|
|
||||||
raise Exception("Difference found between existing version and dumped")
|
raise Exception("Difference found between existing version and dumped")
|
||||||
|
Loading…
Reference in New Issue
Block a user