Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

1from __future__ import annotations
2
3import pathlib
4import tempfile
5
6import pytest
7
8from ansible.errors import AnsibleJSONParserError
9from ansible._internal._errors._utils import format_exception_message
10from ansible._internal._datatag._tags import Origin
11from ansible.parsing.utils.yaml import from_yaml
12
13
14def test_json_parser_error() -> None:
15 # This is basically a copy of test_yaml_parser_error in test/units/parsing/yaml/test_errors.py.
…lines 16–42 unchanged (27 lines)

After

1from __future__ import annotations
2
3import pathlib
4import tempfile
5
6import pytest
7
8from ansible.errors import AnsibleJSONParserError
9from ansible._internal._errors._error_utils import format_exception_message
10from ansible._internal._datatag._tags import Origin
11from ansible.parsing.utils.yaml import from_yaml
12
13
14def test_json_parser_error() -> None:
15 # This is basically a copy of test_yaml_parser_error in test/units/parsing/yaml/test_errors.py.
…lines 16–42 unchanged (27 lines)

Before

module
future_import_statement
from "from"
__future__ "__future__"
import "import"
dotted_name
identifier "annotations"
import_statement
import "import"
dotted_name
identifier "pathlib"
import_statement
import "import"
dotted_name
identifier "tempfile"
import_statement
import "import"
dotted_name
identifier "pytest"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "errors"
import "import"
dotted_name
identifier "AnsibleJSONParserError"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "_internal"
. "."
identifier "_errors"
. "."
identifier "_utils"
import "import"
dotted_name
identifier "format_exception_message"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "_internal"
. "."
identifier "_datatag"
. "."
identifier "_tags"
import "import"
dotted_name
identifier "Origin"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "parsing"
. "."
identifier "utils"
. "."
identifier "yaml"
import "import"
dotted_name
identifier "from_yaml"
function_definition (+260 nodes collapsed)

After

module
future_import_statement
from "from"
__future__ "__future__"
import "import"
dotted_name
identifier "annotations"
import_statement
import "import"
dotted_name
identifier "pathlib"
import_statement
import "import"
dotted_name
identifier "tempfile"
import_statement
import "import"
dotted_name
identifier "pytest"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "errors"
import "import"
dotted_name
identifier "AnsibleJSONParserError"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "_internal"
. "."
identifier "_errors"
. "."
identifier "_error_utils"
import "import"
dotted_name
identifier "format_exception_message"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "_internal"
. "."
identifier "_datatag"
. "."
identifier "_tags"
import "import"
dotted_name
identifier "Origin"
import_from_statement
from "from"
dotted_name
identifier "ansible"
. "."
identifier "parsing"
. "."
identifier "utils"
. "."
identifier "yaml"
import "import"
dotted_name
identifier "from_yaml"
function_definition (+260 nodes collapsed)