From e564e7c678f83929418245bdb958055c466bbcac Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 19 Sep 2023 11:48:37 +0100 Subject: [PATCH 01/53] Build for python 3.12 --- .github/workflows/release.yaml | 4 +-- .github/workflows/release_test.yaml | 10 +++--- .github/workflows/test.yaml | 4 +-- .github/workflows/test_corpus.yaml | 6 ++-- .github/workflows/verify_release.yaml | 4 +-- .github/workflows/xtest.yaml | 4 +-- README.md | 4 +-- docker/Dockerfile-fedora38 | 47 +++++++++++++++++++++++++++ docker/build-images.sh | 2 ++ docs/source/installation.rst | 2 +- setup.py | 4 +-- tox.ini | 8 +++++ 12 files changed, 78 insertions(+), 21 deletions(-) create mode 100644 docker/Dockerfile-fedora38 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index e5d39ea9..9d6a6c2b 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,7 +13,7 @@ jobs: release: runs-on: ubuntu-latest container: - image: danielflook/python-minifier-build:python3.11-2022-10-25 + image: danielflook/python-minifier-build:python3.12-2023-09-19 steps: - name: Checkout uses: actions/checkout@v3 @@ -51,7 +51,7 @@ jobs: id-token: write environment: name: pypi - url: https://pypi.org/project/python-minifier/ + url: https://pypi.org/project/python-minifier/${{ github.event.release.tag_name }} steps: - uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 37a51c8e..5e84fb6a 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -8,7 +8,7 @@ jobs: name: Create Package runs-on: ubuntu-latest container: - image: danielflook/python-minifier-build:python3.11-2022-10-25 + image: danielflook/python-minifier-build:python3.12-2023-09-19 steps: - name: Checkout uses: actions/checkout@v3 @@ -36,7 +36,7 @@ jobs: runs-on: ubuntu-latest needs: [package] container: - image: danielflook/python-minifier-build:python3.11-2022-10-25 + image: danielflook/python-minifier-build:python3.12-2023-09-19 steps: - uses: actions/download-artifact@v3 with: @@ -62,10 +62,10 @@ jobs: needs: [package] strategy: matrix: - python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11"] + python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] package_type: [.tar.gz, .whl] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2022-10-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-19 steps: - uses: actions/download-artifact@v3 with: @@ -95,7 +95,7 @@ jobs: matrix: package_type: [.tar.gz, .whl] container: - image: danielflook/python-minifier-build:python3.11-2022-10-25 + image: danielflook/python-minifier-build:python3.12-2023-09-19 steps: - uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index f9596298..0f0dbda3 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -10,9 +10,9 @@ jobs: strategy: fail-fast: false matrix: - python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "pypy", "pypy3"] + python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2022-10-25 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index d8368dd9..e374c464 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -41,10 +41,10 @@ jobs: strategy: fail-fast: false matrix: - python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11"] + python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12"] ref: ["${{ inputs.ref }}", "${{ inputs.base-ref }}"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2022-10-25 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 volumes: - /corpus:/corpus - /corpus-results:/corpus-results @@ -88,7 +88,7 @@ jobs: needs: generate_results runs-on: self-hosted container: - image: danielflook/python-minifier-build:python3.11-2022-10-25 + image: danielflook/python-minifier-build:python3.12-2023-09-19 volumes: - /corpus-results:/corpus-results if: ${{ always() }} diff --git a/.github/workflows/verify_release.yaml b/.github/workflows/verify_release.yaml index 54db516d..0ba0e3c7 100644 --- a/.github/workflows/verify_release.yaml +++ b/.github/workflows/verify_release.yaml @@ -13,9 +13,9 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11"] + python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2022-10-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-19 steps: - name: Test run: | diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index 245114de..9c3dcc41 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -10,9 +10,9 @@ jobs: strategy: fail-fast: false matrix: - python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "pypy3"] + python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2022-10-25 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/README.md b/README.md index 31c7d8bd..40863605 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Transforms Python source code into its most compact representation. [Try it out!](https://python-minifier.com) -python-minifier currently supports Python 2.7 and Python 3.3 to 3.11. Previous releases supported Python 2.6. +python-minifier currently supports Python 2.7 and Python 3.3 to 3.12. Previous releases supported Python 2.6. * [PyPI](https://pypi.org/project/python-minifier/) * [Documentation](https://dflook.github.io/python-minifier/) @@ -107,7 +107,7 @@ $ pip install python-minifier Note that python-minifier depends on the python interpreter for parsing source code, so install using a version of python appropriate for your source. -python-minifier runs with and can minify code written for Python 2.7 and Python 3.3 to 3.11. +python-minifier runs with and can minify code written for Python 2.7 and Python 3.3 to 3.12. ## Usage diff --git a/docker/Dockerfile-fedora38 b/docker/Dockerfile-fedora38 new file mode 100644 index 00000000..89db5cd0 --- /dev/null +++ b/docker/Dockerfile-fedora38 @@ -0,0 +1,47 @@ +FROM fedora:38 AS python3.12 + +# CircleCI required tools +RUN dnf install -y \ + git \ + tar \ + gzip \ + gpg \ + ca-certificates \ + && dnf clean all && rm -rf /var/cache/dnf/* + +# Development tools +RUN dnf install -y \ + @development-tools \ + findutils \ + zlib-devel \ + bzip2-devel \ + ncurses-devel \ + gdbm-devel \ + openssl-devel \ + sqlite-devel \ + tk-devel \ + libuuid-devel \ + readline-devel \ + libnsl2-devel \ + xz-devel \ + libffi-devel \ + wget \ + && git clone https://github.com/python/cpython.git \ + && cd cpython \ + && git checkout v3.12.0rc2 \ + && ./configure \ + && make \ + && make install \ + && cd .. \ + && rm -rf cpython \ + && dnf clean all && rm -rf /var/cache/dnf/* + +# Other packages required for tests +RUN dnf install -y \ + bzip2 \ + && dnf clean all && rm -rf /var/cache/dnf/* + +RUN pip3 install tox==4.11.3 + +WORKDIR /tmp/work +ENTRYPOINT ["/bin/bash"] diff --git a/docker/build-images.sh b/docker/build-images.sh index f4867f59..ee13d71f 100755 --- a/docker/build-images.sh +++ b/docker/build-images.sh @@ -27,6 +27,7 @@ docker pull fedora:36 docker build --tag danielflook/python-minifier-build:python3.11-$DATE -f Dockerfile-fedora36 --target python3.11 . docker pull fedora:38 +docker build --tag danielflook/python-minifier-build:python3.12-$DATE -f Dockerfile-fedora38 --target python3.12 . docker build --tag danielflook/python-minifier-build:fuzz-$DATE -f Dockerfile-fuzz --target fuzz . docker push danielflook/python-minifier-build:python3.3-$DATE @@ -39,6 +40,7 @@ docker push danielflook/python-minifier-build:python3.8-$DATE docker push danielflook/python-minifier-build:python3.9-$DATE docker push danielflook/python-minifier-build:python3.10-$DATE docker push danielflook/python-minifier-build:python3.11-$DATE +docker push danielflook/python-minifier-build:python3.12-$DATE docker push danielflook/python-minifier-build:pypy-$DATE docker push danielflook/python-minifier-build:pypy3-$DATE docker push danielflook/python-minifier-build:fuzz-$DATE diff --git a/docs/source/installation.rst b/docs/source/installation.rst index b1909d4f..1b36892a 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -9,4 +9,4 @@ To install python-minifier use pip: Note that python-minifier depends on the python interpreter for parsing source code, so install using a version of python appropriate for your source. -python-minifier runs with and can minify code written for Python 2.7 and Python 3.3 to 3.11. +python-minifier runs with and can minify code written for Python 2.7 and Python 3.3 to 3.12. diff --git a/setup.py b/setup.py index 6133edf4..c0846376 100644 --- a/setup.py +++ b/setup.py @@ -1,5 +1,4 @@ import os.path -import sys from setuptools import setup, find_packages @@ -27,7 +26,7 @@ long_description=long_desc, long_description_content_type='text/markdown', - python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, <3.12', + python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, <3.13', setup_requires=['setuptools_scm'], classifiers=[ @@ -44,6 +43,7 @@ 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: Implementation :: CPython', diff --git a/tox.ini b/tox.ini index 65bc6185..83814d0e 100644 --- a/tox.ini +++ b/tox.ini @@ -56,6 +56,14 @@ deps = pyyaml==6.0.0 pyperf==2.4.1 +[testenv:python312] +basepython = /usr/local/bin/python3.12 +deps = + pytest==7.4.2 + sh==2.0.6 + pyyaml==6.0.1 + pyperf==2.6.1 + [testenv:pypy] basepython = /usr/bin/pypy From 5bf58f87c1da9ccac009d0b6db013aa17f740cbe Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 19 Sep 2023 12:51:10 +0100 Subject: [PATCH 02/53] Add tests for python 3.12 new type parameter syntax --- test/test_generic_types.py | 234 +++++++++++++++++++++++++++++++++++++ 1 file changed, 234 insertions(+) create mode 100644 test/test_generic_types.py diff --git a/test/test_generic_types.py b/test/test_generic_types.py new file mode 100644 index 00000000..fef7a174 --- /dev/null +++ b/test/test_generic_types.py @@ -0,0 +1,234 @@ +import ast +import sys +import pytest +from python_minifier import unparse +from python_minifier.ast_compare import compare_ast + + +def test_pep695_unparse(): + if sys.version_info < (3, 12): + pytest.skip('Improved generic syntax python < 3.12') + + source = ''' +class ClassA[T: str]: + def method1(self) -> T: + ... + +def func[T](a: T, b: T) -> T: + ... + +type ListOrSet[T] = list[T] | set[T] + +# This generic class is parameterized by a TypeVar T, a +# TypeVarTuple Ts, and a ParamSpec P. +class ChildClass[T, *Ts, **P]: ... + +class ClassA[S, T](Protocol): ... # OK + +class ClassB[S, T](Protocol[S, T]): ... # Recommended type checker error + +class ClassA[T: str]: ... + +class ClassA[T: dict[str, int]]: ... # OK + +class ClassB[T: "ForwardReference"]: ... # OK + +class ClassC[V]: + class ClassD[T: dict[str, V]]: ... # Type checker error: generic type + +class ClassE[T: [str, int]]: ... # Type checker error: illegal expression form + +class ClassA[AnyStr: (str, bytes)]: ... # OK + +class ClassB[T: ("ForwardReference", bytes)]: ... # OK + +class ClassC[T: ()]: ... # Type checker error: two or more types required + +class ClassD[T: (str, )]: ... # Type checker error: two or more types required + +t1 = (bytes, str) +class ClassE[T: t1]: ... # Type checker error: literal tuple expression required + +class ClassF[T: (3, bytes)]: ... # Type checker error: invalid expression form + +class ClassG[T: (list[S], str)]: ... # Type checker error: generic type + +# A non-generic type alias +type IntOrStr = int | str + +# A generic type alias +type ListOrSet[T] = list[T] | set[T] + +# A type alias that includes a forward reference +type AnimalOrVegetable = Animal | "Vegetable" + +# A generic self-referential type alias +type RecursiveList[T] = T | list[RecursiveList[T]] + +T = TypeVar("T") +type MyList = list[T] # Type checker error: traditional type variable usage + +# The following generates no compiler error, but a type checker +# should generate an error because an upper bound type must be concrete, +# and ``Sequence[S]`` is generic. Future extensions to the type system may +# eliminate this limitation. +class ClassA[S, T: Sequence[S]]: ... + +# The following generates no compiler error, because the bound for ``S`` +# is lazily evaluated. However, type checkers should generate an error. +class ClassB[S: Sequence[T], T]: ... + +class ClassA[T](BaseClass[T], param = Foo[T]): ... # OK + +print(T) # Runtime error: 'T' is not defined + +@dec(Foo[T]) # Runtime error: 'T' is not defined +class ClassA[T]: ... + + + +def func1[T](a: T) -> T: ... # OK + +print(T) # Runtime error: 'T' is not defined + +def func2[T](a = list[T]): ... # Runtime error: 'T' is not defined + +@dec(list[T]) # Runtime error: 'T' is not defined +def func3[T](): ... + +type Alias1[K, V] = Mapping[K, V] | Sequence[K] + +S = 0 + +def outer1[S](): + S = 1 + T = 1 + + def outer2[T](): + + def inner1(): + nonlocal S # OK because it binds variable S from outer1 + #nonlocal T # Syntax error: nonlocal binding not allowed for type parameter + + def inner2(): + global S # OK because it binds variable S from global scope + +class Outer: + class Private: + pass + + # If the type parameter scope was like a traditional scope, + # the base class 'Private' would not be accessible here. + class Inner[T](Private, Sequence[T]): + pass + + # Likewise, 'Inner' would not be available in these type annotations. + def method1[T](self, a: Inner[T]) -> Inner[T]: + return a + +T = 0 + +@decorator(T) # Argument expression `T` evaluates to 0 +class ClassA[T](Sequence[T]): + T = 1 + + # All methods below should result in a type checker error + # "type parameter 'T' already in use" because they are using the + # type parameter 'T', which is already in use by the outer scope + # 'ClassA'. + def method1[T](self): + ... + + def method2[T](self, x = T): # Parameter 'x' gets default value of 1 + ... + + def method3[T](self, x: T): # Parameter 'x' has type T (scoped to method3) + ... + +T = 0 + +# T refers to the global variable +print(T) # Prints 0 + +class Outer[T]: + T = 1 + + # T refers to the local variable scoped to class 'Outer' + print(T) # Prints 1 + + class Inner1: + T = 2 + + # T refers to the local type variable within 'Inner1' + print(T) # Prints 2 + + def inner_method(self): + # T refers to the type parameter scoped to class 'Outer'; + # If 'Outer' did not use the new type parameter syntax, + # this would instead refer to the global variable 'T' + print(T) # Prints 'T' + + def outer_method(self): + T = 3 + + # T refers to the local variable within 'outer_method' + print(T) # Prints 3 + + def inner_func(): + # T refers to the variable captured from 'outer_method' + print(T) # Prints 3 + +class ClassA[T1, T2, T3](list[T1]): + def method1(self, a: T2) -> None: + ... + + def method2(self) -> T3: + ... + +upper = ClassA[object, Dummy, Dummy] +lower = ClassA[T1, Dummy, Dummy] + +upper = ClassA[Dummy, object, Dummy] +lower = ClassA[Dummy, T2, Dummy] + +upper = ClassA[Dummy, Dummy, object] +lower = ClassA[Dummy, Dummy, T3] + + + +T1 = TypeVar("T1", infer_variance=True) # Inferred variance +T2 = TypeVar("T2") # Invariant +T3 = TypeVar("T3", covariant=True) # Covariant + +# A type checker should infer the variance for T1 but use the +# specified variance for T2 and T3. +class ClassA(Generic[T1, T2, T3]): ... + +K = TypeVar("K") + +class ClassA[V](dict[K, V]): ... # Type checker error + +class ClassB[K, V](dict[K, V]): ... # OK + +class ClassC[V]: + # The use of K and V for "method1" is OK because it uses the + # "traditional" generic function mechanism where type parameters + # are implicit. In this case V comes from an outer scope (ClassC) + # and K is introduced implicitly as a type parameter for "method1". + def method1(self, a: V, b: K) -> V | K: ... + + # The use of M and K are not allowed for "method2". A type checker + # should generate an error in this case because this method uses the + # new syntax for type parameters, and all type parameters associated + # with the method must be explicitly declared. In this case, ``K`` + # is not declared by "method2", nor is it supplied by a new-style + # type parameter defined in an outer scope. + def method2[M](self, a: M, b: K) -> M | K: ... + + +''' + + expected_ast = ast.parse(source) + actual_ast = unparse(expected_ast) + compare_ast(expected_ast, ast.parse(actual_ast)) + From 0920e8f78d5b5e850d43600f1b96a1b0d9ca4fae Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 19 Sep 2023 13:30:28 +0100 Subject: [PATCH 03/53] Implement Python 3.12 type parameters --- src/python_minifier/module_printer.py | 60 ++++++++++++++++++++++++++- src/python_minifier/token_printer.py | 6 ++- test/test_generic_types.py | 48 ++++++++++++++++++++- 3 files changed, 109 insertions(+), 5 deletions(-) diff --git a/src/python_minifier/module_printer.py b/src/python_minifier/module_printer.py index cc2ec7d5..20ba1a8e 100644 --- a/src/python_minifier/module_printer.py +++ b/src/python_minifier/module_printer.py @@ -494,6 +494,15 @@ def visit_FunctionDef(self, node, is_async=False): self.printer.keyword('def') self.printer.identifier(node.name) + + if hasattr(node, 'type_params') and node.type_params: + self.printer.delimiter('[') + delimiter = Delimiter(self.printer) + for type_param in node.type_params: + delimiter.new_item() + self.visit(type_param) + self.printer.delimiter(']') + self.printer.delimiter('(') self.visit_arguments(node.args) self.printer.delimiter(')') @@ -523,6 +532,14 @@ def visit_ClassDef(self, node): self.printer.keyword('class') self.printer.identifier(node.name) + if hasattr(node, 'type_params') and node.type_params: + self.printer.delimiter('[') + delimiter = Delimiter(self.printer) + for type_param in node.type_params: + delimiter.new_item() + self.visit(type_param) + self.printer.delimiter(']') + with Delimiter(self.printer, add_parens=True) as delimiter: for b in node.bases: @@ -712,6 +729,46 @@ def visit_AsyncWith(self, node): # endregion + # region Generic Types + def visit_TypeAlias(self, node): + assert isinstance(node, ast.TypeAlias) + self.printer.keyword('type') + self.visit_Name(node.name) + + if hasattr(node, 'type_params') and node.type_params: + self.printer.delimiter('[') + delimiter = Delimiter(self.printer) + for param in node.type_params: + delimiter.new_item() + self.visit(param) + self.printer.delimiter(']') + + self.printer.delimiter('=') + self._expression(node.value) + self.printer.end_statement() + + def visit_TypeVar(self, node): + assert isinstance(node, ast.TypeVar) + assert isinstance(node.name, str) + self.printer.identifier(node.name) + + if node.bound: + self.printer.delimiter(':') + self._expression(node.bound) + + def visit_TypeVarTuple(self, node): + assert isinstance(node, ast.TypeVarTuple) + self.printer.operator('*') + self.printer.identifier(node.name) + + def visit_ParamSpec(self, node): + assert isinstance(node, ast.ParamSpec) + self.printer.operator('*') + self.printer.operator('*') + self.printer.identifier(node.name) + + # endregion + def visit_Module(self, node): if hasattr(node, 'docstring') and node.docstring is not None: # Python 3.6 added a docstring field! Really useful for every use case except this one... @@ -786,7 +843,8 @@ def _suite_body(self, node_list): 'Print': self.visit_Print, 'Exec': self.visit_Exec, 'Match': self.visit_Match, - 'match_case': self.visit_match_case + 'match_case': self.visit_match_case, + 'TypeAlias': self.visit_TypeAlias } for node in node_list: diff --git a/src/python_minifier/token_printer.py b/src/python_minifier/token_printer.py index 2a916434..e8813fd2 100644 --- a/src/python_minifier/token_printer.py +++ b/src/python_minifier/token_printer.py @@ -117,7 +117,9 @@ def keyword(self, kw): 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', - 'try', 'while', 'with', 'yield', '_', 'case', 'match', 'print', 'exec' + 'try', 'while', 'with', 'yield', '_', + 'case', 'match', 'print', 'exec', + 'type' ] if self.previous_token in [TokenTypes.Identifier, TokenTypes.Keyword, TokenTypes.SoftKeyword, TokenTypes.NumberLiteral]: @@ -125,7 +127,7 @@ def keyword(self, kw): self._code += kw - if kw in ['_', 'case', 'match']: + if kw in ['_', 'case', 'match', 'type']: self.previous_token = TokenTypes.SoftKeyword else: self.previous_token = TokenTypes.Keyword diff --git a/test/test_generic_types.py b/test/test_generic_types.py index fef7a174..07938798 100644 --- a/test/test_generic_types.py +++ b/test/test_generic_types.py @@ -4,6 +4,51 @@ from python_minifier import unparse from python_minifier.ast_compare import compare_ast +def test_type_statement(): + if sys.version_info < (3, 12): + pytest.skip('Improved generic syntax python < 3.12') + + + source = ''' +type Point = tuple[float, float] +type ListOrSet[T] = list[T] | set[T] +''' + + expected_ast = ast.parse(source) + actual_ast = unparse(expected_ast) + compare_ast(expected_ast, ast.parse(actual_ast)) + +def test_function_generic(): + if sys.version_info < (3, 12): + pytest.skip('Improved generic syntax python < 3.12') + + source = ''' +def a(): ... +def func[T](a: T, b: T) -> T: + ... +''' + + expected_ast = ast.parse(source) + actual_ast = unparse(expected_ast) + compare_ast(expected_ast, ast.parse(actual_ast)) + +def test_class_generic(): + if sys.version_info < (3, 12): + pytest.skip('Improved generic syntax python < 3.12') + + source = ''' +class A: + ... +class B[S]: + ... +class C[T: str]: + ... +''' + + expected_ast = ast.parse(source) + actual_ast = unparse(expected_ast) + compare_ast(expected_ast, ast.parse(actual_ast)) + def test_pep695_unparse(): if sys.version_info < (3, 12): @@ -229,6 +274,5 @@ def method2[M](self, a: M, b: K) -> M | K: ... ''' expected_ast = ast.parse(source) - actual_ast = unparse(expected_ast) - compare_ast(expected_ast, ast.parse(actual_ast)) + unparse(expected_ast) From 008cd55ea0c5d084167214239309cc49430d0166 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 19 Sep 2023 16:28:50 +0100 Subject: [PATCH 04/53] Fix version sourcing on Python 3.12 --- .github/workflows/release_test.yaml | 4 ++-- src/python_minifier/__main__.py | 25 +++++++++++++++++-------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 5e84fb6a..d7754463 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -104,14 +104,14 @@ jobs: - name: Install package run: | - pip3.11 install dist/*${{ matrix.package_type }} + pip3.12 install dist/*${{ matrix.package_type }} - name: Checkout uses: actions/checkout@v3 - name: Test typing run: | - pip3.11 install mypy types-setuptools + pip3.12 install mypy types-setuptools mypy --strict typing_test/test_typing.py if mypy --strict typing_test/test_badtyping.py; then diff --git a/src/python_minifier/__main__.py b/src/python_minifier/__main__.py index 6c81b4aa..056fe5ca 100644 --- a/src/python_minifier/__main__.py +++ b/src/python_minifier/__main__.py @@ -1,18 +1,24 @@ from __future__ import print_function -import sys -import os - import argparse -from pkg_resources import get_distribution, DistributionNotFound +import os +import sys from python_minifier import minify from python_minifier.transforms.remove_annotations_options import RemoveAnnotationsOptions -try: - version = get_distribution('python_minifier').version -except DistributionNotFound: - version = '0.0.0' +if sys.version_info >= (3, 8): + from importlib import metadata + try: + version = metadata.version('python-minifier') + except metadata.PackageNotFoundError: + version = '0.0.0' +else: + from pkg_resources import get_distribution, DistributionNotFound + try: + version = get_distribution('python_minifier').version + except DistributionNotFound: + version = '0.0.0' def main(): @@ -69,6 +75,7 @@ def main(): else: sys.stdout.write(minified) + def parse_args(): parser = argparse.ArgumentParser(prog='pyminify', description='Minify Python source code', formatter_class=argparse.RawDescriptionHelpFormatter, epilog=main.__doc__) @@ -253,6 +260,7 @@ def parse_args(): return args + def source_modules(args): def error(os_error): @@ -267,6 +275,7 @@ def error(os_error): else: yield path_arg + def do_minify(source, filename, minification_args): preserve_globals = [] From 6628f9a46134a40acc14dd32cb5bda6c6014ee94 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 19 Sep 2023 18:16:00 +0100 Subject: [PATCH 05/53] Avoid using setuptools --- .github/workflows/release.yaml | 4 ++-- .github/workflows/release_test.yaml | 11 ++++++++--- .github/workflows/xtest.yaml | 2 +- docs/source/conf.py | 6 +++--- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 9d6a6c2b..26dcc29c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -25,8 +25,8 @@ jobs: - name: Build package run: | - pip3 install --upgrade setuptools wheel - python3 setup.py sdist bdist_wheel --universal + pip3 install --upgrade build + python3 -m build - uses: actions/upload-artifact@v3 with: diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index d7754463..ca2af714 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -17,13 +17,14 @@ jobs: - name: Set version statically run: | - VERSION="$(python3 setup.py --version)" + pip3 install setuptools_scm + VERSION="$(python3 -m setuptools_scm)" sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" setup.py - name: Create Packages run: | - pip3 install --upgrade setuptools wheel twine - python3 setup.py sdist bdist_wheel --universal + pip3 install --upgrade build + python3 -m build - uses: actions/upload-artifact@v3 with: @@ -61,9 +62,13 @@ jobs: runs-on: ubuntu-latest needs: [package] strategy: + fail-fast: false matrix: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] package_type: [.tar.gz, .whl] + exclude: + - python: 2.7 + package_type: .whl container: image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-19 steps: diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index 9c3dcc41..b27d8456 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -35,7 +35,7 @@ jobs: (cd /usr/lib64/pypy3-7.0/lib-python/3/test && pypy3 make_ssl_certs.py) fi - tox -r -e $(echo "${{ matrix.python }}" | tr -d .) xtest + tox -r -e $(echo "${{ matrix.python }}" | tr -d .) -- xtest test-corpus: needs: test diff --git a/docs/source/conf.py b/docs/source/conf.py index 9fda54f1..d9f9d9bf 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -23,11 +23,11 @@ copyright = '2020, Daniel Flook' author = 'Daniel Flook' -from pkg_resources import get_distribution, DistributionNotFound +from importlib import metadata try: - release = get_distribution('python_minifier').version + release = metadata.version('python-minifier') version = '.'.join(release.split('.')[:3]) -except DistributionNotFound: +except metadata.PackageNotFoundError: release = '0.0.0' version = '0.0.0' From 29147c2dc9d3b1a1fc4460272ab7ecec78f9cfcd Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 20 Sep 2023 14:56:26 +0100 Subject: [PATCH 06/53] Add empty manifest for 3.12 --- xtest/manifests/python3.12_test_manifest.yaml | 0 xtest/test_regrtest.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 xtest/manifests/python3.12_test_manifest.yaml diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml new file mode 100644 index 00000000..e69de29b diff --git a/xtest/test_regrtest.py b/xtest/test_regrtest.py index 5c53deda..3120558a 100644 --- a/xtest/test_regrtest.py +++ b/xtest/test_regrtest.py @@ -37,7 +37,7 @@ def __init__(self, interpreter): def load(self): with open(self._manifest_path) as f: - self._files = yaml.safe_load(f) + self._files = yaml.safe_load(f) or {} def __len__(self): return sum([len(test_cases) for test_cases in self._files.values()]) From e4a793ea57a8c448ef536aa8b46da6c6aedd0007 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 23 Sep 2023 19:04:20 +0100 Subject: [PATCH 07/53] Introduce backward compatible ast module --- src/python_minifier/__init__.py | 3 +- src/python_minifier/ast_compare.py | 2 +- src/python_minifier/ast_compat.py | 36 +++++++++++++++++ src/python_minifier/ast_printer.py | 6 +-- src/python_minifier/expression_printer.py | 10 ++--- src/python_minifier/f_string.py | 2 +- src/python_minifier/module_printer.py | 10 ++--- src/python_minifier/rename/bind_names.py | 2 +- src/python_minifier/rename/binding.py | 2 +- src/python_minifier/rename/mapper.py | 2 +- src/python_minifier/rename/rename_literals.py | 2 +- src/python_minifier/rename/renamer.py | 2 +- src/python_minifier/rename/resolve_names.py | 2 +- src/python_minifier/rename/util.py | 2 +- .../transforms/combine_imports.py | 2 +- .../transforms/constant_folding.py | 2 +- .../transforms/remove_annotations.py | 2 +- .../transforms/remove_asserts.py | 2 +- .../transforms/remove_debug.py | 2 +- .../transforms/remove_exception_brackets.py | 2 +- .../transforms/remove_explicit_return_none.py | 2 +- .../transforms/remove_literal_statements.py | 2 +- .../transforms/remove_object_base.py | 2 +- src/python_minifier/transforms/remove_pass.py | 2 +- .../transforms/remove_posargs.py | 2 +- .../transforms/suite_transformer.py | 2 +- src/python_minifier/util.py | 14 +++---- test/test_is_ast_node.py | 40 +++++++++++++++++++ 28 files changed, 117 insertions(+), 44 deletions(-) create mode 100644 src/python_minifier/ast_compat.py create mode 100644 test/test_is_ast_node.py diff --git a/src/python_minifier/__init__.py b/src/python_minifier/__init__.py index bbeeeb62..9863b791 100644 --- a/src/python_minifier/__init__.py +++ b/src/python_minifier/__init__.py @@ -4,11 +4,10 @@ """ -import ast +import python_minifier.ast_compat as ast import re from python_minifier.ast_compare import CompareError, compare_ast -from python_minifier.ast_printer import print_ast from python_minifier.module_printer import ModulePrinter from python_minifier.rename import ( rename_literals, diff --git a/src/python_minifier/ast_compare.py b/src/python_minifier/ast_compare.py index 7c658389..8d034b5b 100644 --- a/src/python_minifier/ast_compare.py +++ b/src/python_minifier/ast_compare.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.util import is_ast_node diff --git a/src/python_minifier/ast_compat.py b/src/python_minifier/ast_compat.py new file mode 100644 index 00000000..31c3a88d --- /dev/null +++ b/src/python_minifier/ast_compat.py @@ -0,0 +1,36 @@ +""" +The is a backwards compatible shim for the ast module. + +This is the best way to make the ast module work the same in both python 2 and 3. +This is essentially what the ast module was doing until 3.12, when it started throwing +deprecation warnings. +""" + +from ast import * + +# Ideally we don't import anything else + +if 'TypeAlias' in globals(): + + Constant.n = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) + Constant.s = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) + + class Str(Constant): + def __new__(cls, s, *args, **kwargs): + return Constant(value=s, *args, **kwargs) + + class Bytes(Constant): + def __new__(cls, s, *args, **kwargs): + return Constant(value=s, *args, **kwargs) + + class Num(Constant): + def __new__(cls, n, *args, **kwargs): + return Constant(value=n, *args, **kwargs) + + class NameConstant(Constant): + def __new__(cls, *args, **kwargs): + return Constant(*args, **kwargs) + + class Ellipsis(Constant): + def __new__(cls, *args, **kwargs): + return Constant(value=literal_eval('...'), *args, **kwargs) \ No newline at end of file diff --git a/src/python_minifier/ast_printer.py b/src/python_minifier/ast_printer.py index 60ec8698..5480f506 100644 --- a/src/python_minifier/ast_printer.py +++ b/src/python_minifier/ast_printer.py @@ -10,7 +10,7 @@ """ -import ast +import python_minifier.ast_compat as ast from python_minifier.util import is_ast_node @@ -67,10 +67,10 @@ def is_literal(node, field): if hasattr(ast, 'Constant') and isinstance(node, ast.Constant) and field == 'value': return True - if isinstance(node, ast.Num) and field == 'n': + if is_ast_node(node, ast.Num) and field == 'n': return True - if isinstance(node, ast.Str) and field == 's': + if is_ast_node(node, ast.Str) and field == 's': return True if is_ast_node(node, 'Bytes') and field == 's': diff --git a/src/python_minifier/expression_printer.py b/src/python_minifier/expression_printer.py index 4544db96..587c232d 100644 --- a/src/python_minifier/expression_printer.py +++ b/src/python_minifier/expression_printer.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.util import is_ast_node @@ -69,7 +69,7 @@ def precedence(self, node): # Python2 parses negative ints as an ast.Num with a negative value. # Make sure the Num get the precedence of the USub operator in this case. - if sys.version_info < (3, 0) and isinstance(node, ast.Num): + if sys.version_info < (3, 0) and is_ast_node(node, ast.Num): if str(node.n)[0] == '-': return self.precedences['USub'] @@ -208,7 +208,7 @@ def visit_Starred(self, node): def visit_UnaryOp(self, node): self.visit(node.op) - if sys.version_info < (3, 0) and isinstance(node.op, ast.USub) and isinstance(node.operand, ast.Num): + if sys.version_info < (3, 0) and isinstance(node.op, ast.USub) and is_ast_node(node.operand, ast.Num): # For: -(1), which is parsed as a UnaryOp(USub, Num(1)). # Without this special case it would be printed as -1 # This is fine, but python 2 will then parse it at Num(-1) so the AST wouldn't round-trip. @@ -428,7 +428,7 @@ def visit_Attribute(self, node): value_precedence = self.precedence(node.value) attr_precedence = self.precedence(node) - if (value_precedence != 0 and (attr_precedence > value_precedence)) or isinstance(node.value, ast.Num): + if (value_precedence != 0 and (attr_precedence > value_precedence)) or is_ast_node(node.value, ast.Num): self.printer.delimiter('(') self._expression(node.value) self.printer.delimiter(')') @@ -462,7 +462,7 @@ def visit_Subscript(self, node): self.visit_Slice(node.slice) elif isinstance(node.slice, ast.ExtSlice): self.visit_ExtSlice(node.slice) - elif isinstance(node.slice, ast.Ellipsis): + elif is_ast_node(node.slice, ast.Ellipsis): self.visit_Ellipsis(node) elif sys.version_info >= (3, 9) and isinstance(node.slice, ast.Tuple): self.visit_Tuple(node.slice) diff --git a/src/python_minifier/f_string.py b/src/python_minifier/f_string.py index 2dead030..1fee3791 100644 --- a/src/python_minifier/f_string.py +++ b/src/python_minifier/f_string.py @@ -6,7 +6,7 @@ """ -import ast +import python_minifier.ast_compat as ast import copy import re diff --git a/src/python_minifier/module_printer.py b/src/python_minifier/module_printer.py index 20ba1a8e..3d57178b 100644 --- a/src/python_minifier/module_printer.py +++ b/src/python_minifier/module_printer.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from .expression_printer import ExpressionPrinter @@ -440,7 +440,7 @@ def visit_ExceptHandler(self, node, star=False): self._suite(node.body) def visit_With(self, node, is_async=False): - assert isinstance(node, ast.With) or (hasattr(ast, 'AsyncWith') and isinstance(node, ast.AsyncWith)) + assert is_ast_node(node, (ast.With, 'AsyncWith')) self.printer.newline() @@ -469,7 +469,7 @@ def visit_With(self, node, is_async=False): self._suite(node.body) def visit_withitem(self, node): - assert (hasattr(ast, 'withitem') and isinstance(node, ast.withitem)) or isinstance(node, ast.With) + assert is_ast_node(node, ('withitem', ast.With)) self._expression(node.context_expr) @@ -478,9 +478,7 @@ def visit_withitem(self, node): self._expression(node.optional_vars) def visit_FunctionDef(self, node, is_async=False): - assert isinstance(node, ast.FunctionDef) or ( - hasattr(ast, 'AsyncFunctionDef') and isinstance(node, ast.AsyncFunctionDef) - ) + assert is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')) self.printer.newline() diff --git a/src/python_minifier/rename/bind_names.py b/src/python_minifier/rename/bind_names.py index 9a065c88..f4808cf7 100644 --- a/src/python_minifier/rename/bind_names.py +++ b/src/python_minifier/rename/bind_names.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.binding import NameBinding from python_minifier.rename.util import arg_rename_in_place, get_global_namespace, get_nonlocal_namespace, builtins diff --git a/src/python_minifier/rename/binding.py b/src/python_minifier/rename/binding.py index 26d44700..49af234a 100644 --- a/src/python_minifier/rename/binding.py +++ b/src/python_minifier/rename/binding.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.util import arg_rename_in_place, insert from python_minifier.util import is_ast_node diff --git a/src/python_minifier/rename/mapper.py b/src/python_minifier/rename/mapper.py index 47817cd8..5c43b282 100644 --- a/src/python_minifier/rename/mapper.py +++ b/src/python_minifier/rename/mapper.py @@ -2,7 +2,7 @@ For each node in an AST set the namespace to use for name binding and resolution """ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.util import is_namespace from python_minifier.util import is_ast_node diff --git a/src/python_minifier/rename/rename_literals.py b/src/python_minifier/rename/rename_literals.py index 4ed65999..f881efcd 100644 --- a/src/python_minifier/rename/rename_literals.py +++ b/src/python_minifier/rename/rename_literals.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.binding import Binding from python_minifier.rename.util import insert diff --git a/src/python_minifier/rename/renamer.py b/src/python_minifier/rename/renamer.py index a879207e..9e9e6b54 100644 --- a/src/python_minifier/rename/renamer.py +++ b/src/python_minifier/rename/renamer.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.binding import NameBinding from python_minifier.rename.name_generator import name_filter diff --git a/src/python_minifier/rename/resolve_names.py b/src/python_minifier/rename/resolve_names.py index 602cb5e0..d22a0211 100644 --- a/src/python_minifier/rename/resolve_names.py +++ b/src/python_minifier/rename/resolve_names.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.binding import BuiltinBinding, NameBinding from python_minifier.rename.util import get_global_namespace, get_nonlocal_namespace, builtins diff --git a/src/python_minifier/rename/util.py b/src/python_minifier/rename/util.py index ed6f9fd0..b049c2ba 100644 --- a/src/python_minifier/rename/util.py +++ b/src/python_minifier/rename/util.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.util import is_ast_node diff --git a/src/python_minifier/transforms/combine_imports.py b/src/python_minifier/transforms/combine_imports.py index 748064d9..5373b2ed 100644 --- a/src/python_minifier/transforms/combine_imports.py +++ b/src/python_minifier/transforms/combine_imports.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.transforms.suite_transformer import SuiteTransformer diff --git a/src/python_minifier/transforms/constant_folding.py b/src/python_minifier/transforms/constant_folding.py index a7763d97..bc1a33b5 100644 --- a/src/python_minifier/transforms/constant_folding.py +++ b/src/python_minifier/transforms/constant_folding.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import math import sys diff --git a/src/python_minifier/transforms/remove_annotations.py b/src/python_minifier/transforms/remove_annotations.py index eff0ca1f..e836aba5 100644 --- a/src/python_minifier/transforms/remove_annotations.py +++ b/src/python_minifier/transforms/remove_annotations.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.transforms.remove_annotations_options import RemoveAnnotationsOptions diff --git a/src/python_minifier/transforms/remove_asserts.py b/src/python_minifier/transforms/remove_asserts.py index 924d88a1..c71fa016 100644 --- a/src/python_minifier/transforms/remove_asserts.py +++ b/src/python_minifier/transforms/remove_asserts.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.transforms.suite_transformer import SuiteTransformer from python_minifier.util import is_ast_node diff --git a/src/python_minifier/transforms/remove_debug.py b/src/python_minifier/transforms/remove_debug.py index 2d0afbd4..d744c3aa 100644 --- a/src/python_minifier/transforms/remove_debug.py +++ b/src/python_minifier/transforms/remove_debug.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.transforms.suite_transformer import SuiteTransformer diff --git a/src/python_minifier/transforms/remove_exception_brackets.py b/src/python_minifier/transforms/remove_exception_brackets.py index 05150bdc..aac64976 100644 --- a/src/python_minifier/transforms/remove_exception_brackets.py +++ b/src/python_minifier/transforms/remove_exception_brackets.py @@ -8,7 +8,7 @@ We can't generally know if a name refers to an exception, so we only do this for builtin exceptions """ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.rename.binding import BuiltinBinding diff --git a/src/python_minifier/transforms/remove_explicit_return_none.py b/src/python_minifier/transforms/remove_explicit_return_none.py index 2148dbcc..c152ea54 100644 --- a/src/python_minifier/transforms/remove_explicit_return_none.py +++ b/src/python_minifier/transforms/remove_explicit_return_none.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.transforms.suite_transformer import SuiteTransformer diff --git a/src/python_minifier/transforms/remove_literal_statements.py b/src/python_minifier/transforms/remove_literal_statements.py index 62910e86..89d28189 100644 --- a/src/python_minifier/transforms/remove_literal_statements.py +++ b/src/python_minifier/transforms/remove_literal_statements.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.transforms.suite_transformer import SuiteTransformer from python_minifier.util import is_ast_node diff --git a/src/python_minifier/transforms/remove_object_base.py b/src/python_minifier/transforms/remove_object_base.py index d7234128..98b6b457 100644 --- a/src/python_minifier/transforms/remove_object_base.py +++ b/src/python_minifier/transforms/remove_object_base.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast import sys from python_minifier.transforms.suite_transformer import SuiteTransformer diff --git a/src/python_minifier/transforms/remove_pass.py b/src/python_minifier/transforms/remove_pass.py index 2f4e14ce..8183c8a9 100644 --- a/src/python_minifier/transforms/remove_pass.py +++ b/src/python_minifier/transforms/remove_pass.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.transforms.suite_transformer import SuiteTransformer from python_minifier.util import is_ast_node diff --git a/src/python_minifier/transforms/remove_posargs.py b/src/python_minifier/transforms/remove_posargs.py index 7eabe629..a5e72d52 100644 --- a/src/python_minifier/transforms/remove_posargs.py +++ b/src/python_minifier/transforms/remove_posargs.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast def remove_posargs(node): diff --git a/src/python_minifier/transforms/suite_transformer.py b/src/python_minifier/transforms/suite_transformer.py index 2743d902..ef8eb820 100644 --- a/src/python_minifier/transforms/suite_transformer.py +++ b/src/python_minifier/transforms/suite_transformer.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast from python_minifier.rename.mapper import add_parent from python_minifier.util import is_ast_node diff --git a/src/python_minifier/util.py b/src/python_minifier/util.py index c7d0cafe..9e80a73b 100644 --- a/src/python_minifier/util.py +++ b/src/python_minifier/util.py @@ -1,4 +1,4 @@ -import ast +import python_minifier.ast_compat as ast def is_ast_node(node, types): """ @@ -32,16 +32,16 @@ def is_ast_node(node, types): return True if hasattr(ast, 'Constant') and isinstance(node, ast.Constant): - if node.value in [None, True, False]: - return ast.NameConstant in types + if type(node.value) in [type(None), type(True), type(False)]: + return ast.NameConstant in actual_types elif isinstance(node.value, (int, float, complex)): - return ast.Num in types + return ast.Num in actual_types elif isinstance(node.value, str): - return ast.Str in types + return ast.Str in actual_types elif isinstance(node.value, bytes): - return ast.Bytes in types + return ast.Bytes in actual_types elif node.value == Ellipsis: - return ast.Ellipsis in types + return ast.Ellipsis in actual_types else: raise RuntimeError('Unknown Constant value %r' % type(node.value)) diff --git a/test/test_is_ast_node.py b/test/test_is_ast_node.py new file mode 100644 index 00000000..25d8b253 --- /dev/null +++ b/test/test_is_ast_node.py @@ -0,0 +1,40 @@ +import sys + +import pytest + +import python_minifier.ast_compat as ast +from python_minifier.util import is_ast_node + +def test_type_nodes(): + assert is_ast_node(ast.Str('a'), ast.Str) + + if hasattr(ast, 'Bytes'): + assert is_ast_node(ast.Bytes(b'a'), ast.Bytes) + + assert is_ast_node(ast.Num(1), ast.Num) + assert is_ast_node(ast.Num(0), ast.Num) + + if hasattr(ast, 'NameConstant'): + assert is_ast_node(ast.NameConstant(True), ast.NameConstant) + assert is_ast_node(ast.NameConstant(False), ast.NameConstant) + assert is_ast_node(ast.NameConstant(None), ast.NameConstant) + else: + assert is_ast_node(ast.Name(id='True', ctx=ast.Load()), ast.Name) + assert is_ast_node(ast.Name(id='False', ctx=ast.Load()), ast.Name) + assert is_ast_node(ast.Name(id='None', ctx=ast.Load()), ast.Name) + + assert is_ast_node(ast.Ellipsis(), ast.Ellipsis) + +def test_constant_nodes(): + # only test on python 3.8+ + if sys.version_info < (3, 8): + pytest.skip('Constant not available') + + assert is_ast_node(ast.Constant('a'), ast.Str) + assert is_ast_node(ast.Constant(b'a'), ast.Bytes) + assert is_ast_node(ast.Constant(1), ast.Num) + assert is_ast_node(ast.Constant(0), ast.Num) + assert is_ast_node(ast.Constant(True), ast.NameConstant) + assert is_ast_node(ast.Constant(False), ast.NameConstant) + assert is_ast_node(ast.Constant(None), ast.NameConstant) + assert is_ast_node(ast.Constant(ast.literal_eval('...')), ast.Ellipsis) From e82874f7909981ab09b796cc4f39312dcb563946 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Mon, 25 Sep 2023 17:34:02 +0100 Subject: [PATCH 08/53] 3.12-rc3 --- .github/workflows/release.yaml | 2 +- .github/workflows/release_test.yaml | 8 ++++---- .github/workflows/test.yaml | 2 +- .github/workflows/test_corpus.yaml | 4 ++-- .github/workflows/verify_release.yaml | 2 +- .github/workflows/xtest.yaml | 2 +- docker/Dockerfile-fedora38 | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 26dcc29c..ae106cef 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,7 +13,7 @@ jobs: release: runs-on: ubuntu-latest container: - image: danielflook/python-minifier-build:python3.12-2023-09-19 + image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index ca2af714..365ad02b 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -8,7 +8,7 @@ jobs: name: Create Package runs-on: ubuntu-latest container: - image: danielflook/python-minifier-build:python3.12-2023-09-19 + image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - name: Checkout uses: actions/checkout@v3 @@ -37,7 +37,7 @@ jobs: runs-on: ubuntu-latest needs: [package] container: - image: danielflook/python-minifier-build:python3.12-2023-09-19 + image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - uses: actions/download-artifact@v3 with: @@ -70,7 +70,7 @@ jobs: - python: 2.7 package_type: .whl container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-19 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 steps: - uses: actions/download-artifact@v3 with: @@ -100,7 +100,7 @@ jobs: matrix: package_type: [.tar.gz, .whl] container: - image: danielflook/python-minifier-build:python3.12-2023-09-19 + image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 0f0dbda3..d22fe4f9 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -12,7 +12,7 @@ jobs: matrix: python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index e374c464..81a126d5 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -44,7 +44,7 @@ jobs: python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12"] ref: ["${{ inputs.ref }}", "${{ inputs.base-ref }}"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 volumes: - /corpus:/corpus - /corpus-results:/corpus-results @@ -88,7 +88,7 @@ jobs: needs: generate_results runs-on: self-hosted container: - image: danielflook/python-minifier-build:python3.12-2023-09-19 + image: danielflook/python-minifier-build:python3.12-2023-09-25 volumes: - /corpus-results:/corpus-results if: ${{ always() }} diff --git a/.github/workflows/verify_release.yaml b/.github/workflows/verify_release.yaml index 0ba0e3c7..83442cc9 100644 --- a/.github/workflows/verify_release.yaml +++ b/.github/workflows/verify_release.yaml @@ -15,7 +15,7 @@ jobs: matrix: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-19 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 steps: - name: Test run: | diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index b27d8456..4c0548b4 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -12,7 +12,7 @@ jobs: matrix: python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-19 + image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/docker/Dockerfile-fedora38 b/docker/Dockerfile-fedora38 index 89db5cd0..36578524 100644 --- a/docker/Dockerfile-fedora38 +++ b/docker/Dockerfile-fedora38 @@ -28,7 +28,7 @@ RUN dnf install -y \ wget \ && git clone https://github.com/python/cpython.git \ && cd cpython \ - && git checkout v3.12.0rc2 \ + && git checkout v3.12.0rc3 \ && ./configure \ && make \ && make install \ From 1329e9d7504415dd044a5f0b5f0b6d50380b5d1f Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 26 Sep 2023 13:52:58 +0100 Subject: [PATCH 09/53] Set namespace for TypeParam nodes While technically the value should be in an annotation scope, I can't see any difference for our use. They are supposed to behave as if executing the parent's namespace. --- src/python_minifier/rename/mapper.py | 8 ++++++++ src/python_minifier/transforms/remove_annotations.py | 3 +++ src/python_minifier/transforms/remove_object_base.py | 3 +++ src/python_minifier/transforms/suite_transformer.py | 3 +++ 4 files changed, 17 insertions(+) diff --git a/src/python_minifier/rename/mapper.py b/src/python_minifier/rename/mapper.py index 5c43b282..f2a98321 100644 --- a/src/python_minifier/rename/mapper.py +++ b/src/python_minifier/rename/mapper.py @@ -61,6 +61,10 @@ def add_parent_to_functiondef(functiondef): for node in functiondef.decorator_list: add_parent(node, parent=functiondef, namespace=functiondef.namespace) + if hasattr(functiondef, 'type_params') and functiondef.type_params is not None: + for node in functiondef.type_params: + add_parent(node, parent=functiondef, namespace=functiondef.namespace) + if hasattr(functiondef, 'returns') and functiondef.returns is not None: add_parent(functiondef.returns, parent=functiondef, namespace=functiondef.namespace) @@ -89,6 +93,10 @@ def add_parent_to_classdef(classdef): for node in classdef.decorator_list: add_parent(node, parent=classdef, namespace=classdef.namespace) + if hasattr(classdef, 'type_params') and classdef.type_params is not None: + for node in classdef.type_params: + add_parent(node, parent=classdef, namespace=classdef.namespace) + def add_parent_to_comprehension(node, namespace): assert is_ast_node(node, (ast.GeneratorExp, 'SetComp', 'DictComp', 'ListComp')) diff --git a/src/python_minifier/transforms/remove_annotations.py b/src/python_minifier/transforms/remove_annotations.py index e836aba5..114dbaaa 100644 --- a/src/python_minifier/transforms/remove_annotations.py +++ b/src/python_minifier/transforms/remove_annotations.py @@ -25,6 +25,9 @@ def visit_FunctionDef(self, node): node.body = self.suite(node.body, parent=node) node.decorator_list = [self.visit(d) for d in node.decorator_list] + if hasattr(node, 'type_params') and node.type_params is not None: + node.type_params = [self.visit(t) for t in node.type_params] + if hasattr(node, 'returns') and self._options.remove_return_annotations: node.returns = None diff --git a/src/python_minifier/transforms/remove_object_base.py b/src/python_minifier/transforms/remove_object_base.py index 98b6b457..9a34b9c9 100644 --- a/src/python_minifier/transforms/remove_object_base.py +++ b/src/python_minifier/transforms/remove_object_base.py @@ -16,6 +16,9 @@ def visit_ClassDef(self, node): b for b in node.bases if not isinstance(b, ast.Name) or (isinstance(b, ast.Name) and b.id != 'object') ] + if hasattr(node, 'type_params') and node.type_params is not None: + node.type_params = [self.visit(t) for t in node.type_params] + node.body = [self.visit(n) for n in node.body] return node diff --git a/src/python_minifier/transforms/suite_transformer.py b/src/python_minifier/transforms/suite_transformer.py index ef8eb820..0b0982a7 100644 --- a/src/python_minifier/transforms/suite_transformer.py +++ b/src/python_minifier/transforms/suite_transformer.py @@ -50,6 +50,9 @@ def __call__(self, node): def visit_ClassDef(self, node): node.bases = [self.visit(b) for b in node.bases] + if hasattr(node, 'type_params') and node.type_params is not None: + node.type_params = [self.visit(t) for t in node.type_params] + node.body = self.suite(node.body, parent=node) node.decorator_list = [self.visit(d) for d in node.decorator_list] From 4831e3b2e601e2581cf0004a6e42b6e812aa9c92 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 26 Sep 2023 18:34:12 +0100 Subject: [PATCH 10/53] Avoid using setuptools in corpus test --- .github/workflows/test_corpus.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 81a126d5..9cc69a62 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -41,10 +41,10 @@ jobs: strategy: fail-fast: false matrix: - python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12"] + python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] ref: ["${{ inputs.ref }}", "${{ inputs.base-ref }}"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 volumes: - /corpus:/corpus - /corpus-results:/corpus-results @@ -70,18 +70,18 @@ jobs: cat sha.txt VERSION=0.0.0 sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" python-minifier/setup.py - (cd python-minifier && ${{matrix.python}} setup.py install) + (cd python-minifier && pip${{ matrix.python }} install .) - name: Run tests run: | - if [[ "${{ matrix.python }}" == "python3.3" || "${{ matrix.python }}" == "python3.4" || "${{ matrix.python }}" == "python3.5" ]]; then + if [[ "${{ matrix.python }}" == "3.3" || "${{ matrix.python }}" == "3.4" || "${{ matrix.python }}" == "3.5" ]]; then # These versions randomise the hash seed, but don't preserve dict order # This affects how names are assigned. Disable the hash randomisation for # deterministic results. export PYTHONHASHSEED=0 fi - ${{matrix.python}} workflow/corpus_test/generate_results.py /corpus /corpus-results $(> $GITHUB_STEP_SUMMARY + python3.12 workflow/corpus_test/generate_report.py /corpus-results ${{ inputs.ref }} $(> $GITHUB_STEP_SUMMARY From 85da9f833f6e7b61eb162958283109126ffde824 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 26 Sep 2023 23:55:19 +0100 Subject: [PATCH 11/53] Fix type warnings This module does redefine some things, tell mypy that's not a problem --- src/python_minifier/ast_compat.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/python_minifier/ast_compat.py b/src/python_minifier/ast_compat.py index 31c3a88d..ba198d56 100644 --- a/src/python_minifier/ast_compat.py +++ b/src/python_minifier/ast_compat.py @@ -12,25 +12,29 @@ if 'TypeAlias' in globals(): - Constant.n = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) - Constant.s = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) + # Add n and s properties to Constant so it can stand in for Num, Str and Bytes + Constant.n = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) # type: ignore[assignment] + Constant.s = property(lambda self: self.value, lambda self, value: setattr(self, 'value', value)) # type: ignore[assignment] - class Str(Constant): + # These classes are redefined from the ones in ast that complain about deprecation + # They will continue to work once they are removed from ast + + class Str(Constant): # type: ignore[no-redef] def __new__(cls, s, *args, **kwargs): return Constant(value=s, *args, **kwargs) - class Bytes(Constant): + class Bytes(Constant): # type: ignore[no-redef] def __new__(cls, s, *args, **kwargs): return Constant(value=s, *args, **kwargs) - class Num(Constant): + class Num(Constant): # type: ignore[no-redef] def __new__(cls, n, *args, **kwargs): return Constant(value=n, *args, **kwargs) - class NameConstant(Constant): + class NameConstant(Constant): # type: ignore[no-redef] def __new__(cls, *args, **kwargs): return Constant(*args, **kwargs) - class Ellipsis(Constant): + class Ellipsis(Constant): # type: ignore[no-redef] def __new__(cls, *args, **kwargs): - return Constant(value=literal_eval('...'), *args, **kwargs) \ No newline at end of file + return Constant(value=literal_eval('...'), *args, **kwargs) From d3428a4ea0a6bff5e244b495c0b4d263cc43e466 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 26 Sep 2023 23:56:57 +0100 Subject: [PATCH 12/53] Skip testing incompatible python/ref --- .github/workflows/test_corpus.yaml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 9cc69a62..80dc20d2 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -64,15 +64,25 @@ jobs: path: python-minifier - name: Install ref + id: install run: | set -ex (cd python-minifier && git log --pretty=format:'%H' -n 1) > sha.txt cat sha.txt VERSION=0.0.0 sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" python-minifier/setup.py - (cd python-minifier && pip${{ matrix.python }} install .) + + if ! pip${{ matrix.python }} install python-minifier/ 2> >(tee -a stderr.log >&2) then; + if grep -q "requires a different Python" stderr.log; then + echo "${{ matrix.ref }} doesn't support Python ${{ matrix.python }}. Skipping." + echo "skip=true" >> "$GITHUB_OUTPUT" + else + exit 1 + fi + fi - name: Run tests + if: steps.install.outputs.skip != 'true' run: | if [[ "${{ matrix.python }}" == "3.3" || "${{ matrix.python }}" == "3.4" || "${{ matrix.python }}" == "3.5" ]]; then # These versions randomise the hash seed, but don't preserve dict order From 2b85ff1df03438c9d855e4f45826d29e3ef3f58a Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 27 Sep 2023 18:07:24 +0100 Subject: [PATCH 13/53] Fix stubtest --- .github/workflows/release_test.yaml | 2 +- typing_test/stubtest-allowlist.txt | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 typing_test/stubtest-allowlist.txt diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 365ad02b..5139929e 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -124,4 +124,4 @@ jobs: exit 1 fi - stubtest python_minifier + stubtest python_minifier --allowlist typing_test/stubtest-allowlist.txt diff --git a/typing_test/stubtest-allowlist.txt b/typing_test/stubtest-allowlist.txt new file mode 100644 index 00000000..dcab540d --- /dev/null +++ b/typing_test/stubtest-allowlist.txt @@ -0,0 +1 @@ +python_minifier.ast_compat.* From b9a961d4524f0805b8aa69ad77018d94fd2e2602 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 27 Sep 2023 18:08:30 +0100 Subject: [PATCH 14/53] Fix report generation with missing results --- .github/workflows/test_corpus.yaml | 4 ++-- corpus_test/generate_report.py | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 80dc20d2..177a1fc9 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -72,8 +72,8 @@ jobs: VERSION=0.0.0 sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" python-minifier/setup.py - if ! pip${{ matrix.python }} install python-minifier/ 2> >(tee -a stderr.log >&2) then; - if grep -q "requires a different Python" stderr.log; then + if ! pip${{ matrix.python }} install python-minifier/ 2> >(tee -a stderr.log >&2); then + if grep -q "require a different python version" stderr.log; then echo "${{ matrix.ref }} doesn't support Python ${{ matrix.python }}. Skipping." echo "skip=true" >> "$GITHUB_OUTPUT" else diff --git a/corpus_test/generate_report.py b/corpus_test/generate_report.py index fccf9beb..d4052cf6 100644 --- a/corpus_test/generate_report.py +++ b/corpus_test/generate_report.py @@ -257,7 +257,11 @@ def report_larger_than_base(results_dir: str, python_versions: str, minifier_sha except FileNotFoundError: continue - base_summary = result_summary(results_dir, python_version, base_sha) + try: + base_summary = result_summary(results_dir, python_version, base_sha) + except FileNotFoundError: + continue + larger_than_original = sorted(summary.compare_size_increase(base_summary), key=lambda result: result.original_size)[:10] for entry in larger_than_original: @@ -275,7 +279,10 @@ def report_slowest(results_dir: str, python_versions: str, minifier_sha: str) -> |--------------|--------------:|--------------:|-----:|''' for python_version in python_versions: - summary = result_summary(results_dir, python_version, minifier_sha) + try: + summary = result_summary(results_dir, python_version, minifier_sha) + except FileNotFoundError: + continue for entry in sorted(summary.entries.values(), key=lambda entry: entry.time, reverse=True)[:10]: yield f'| {entry.corpus_entry} | {entry.original_size} | {entry.minified_size} | {entry.time:.3f} |' From ef4cf306007c678362acceb58477b74a76639e53 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 27 Sep 2023 23:45:07 +0100 Subject: [PATCH 15/53] Fix corpus test --- .github/workflows/test_corpus.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 177a1fc9..dcba7599 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -72,8 +72,10 @@ jobs: VERSION=0.0.0 sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" python-minifier/setup.py - if ! pip${{ matrix.python }} install python-minifier/ 2> >(tee -a stderr.log >&2); then - if grep -q "require a different python version" stderr.log; then + if ! pip${{ matrix.python }} install python-minifier/ 2>stderr.log; then + echo stderr.log + + if grep -q -E 'require a different python version|requires a different Python' stderr.log; then echo "${{ matrix.ref }} doesn't support Python ${{ matrix.python }}. Skipping." echo "skip=true" >> "$GITHUB_OUTPUT" else From 420f84c52c834ba6e3ffe0779f40478986c795a1 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 28 Sep 2023 13:06:55 +0100 Subject: [PATCH 16/53] Update report for 3.12 --- corpus_test/generate_report.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/corpus_test/generate_report.py b/corpus_test/generate_report.py index d4052cf6..c4432254 100644 --- a/corpus_test/generate_report.py +++ b/corpus_test/generate_report.py @@ -315,7 +315,7 @@ def report(results_dir: str, minifier_ref: str, minifier_sha: str, base_ref: str | Python Version | Valid Corpus Entries | Average Time | Minified Size | Larger than original | Recursion Error | Unstable Minification | Exception | |----------------|---------------------:|-------------:|--------------:|---------------------:|----------------:|----------------------:|----------:|''' - for python_version in ['2.7', '3.3', '3.4', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11']: + for python_version in ['2.7', '3.3', '3.4', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11', '3.12']: try: summary = result_summary(results_dir, python_version, minifier_sha) except FileNotFoundError: @@ -358,11 +358,11 @@ def format_size_change_detail() -> str: ) if ENHANCED_REPORT: - yield from report_larger_than_original(results_dir, ['3.11'], minifier_sha) - yield from report_larger_than_base(results_dir, ['3.11'], minifier_sha, base_sha) - yield from report_slowest(results_dir, ['3.11'], minifier_sha) - yield from report_unstable(results_dir, ['2.7', '3.3', '3.4', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11'], minifier_sha) - yield from report_exceptions(results_dir, ['3.6', '3.7', '3.8', '3.9', '3.10', '3.11'], minifier_sha) + yield from report_larger_than_original(results_dir, ['3.12'], minifier_sha) + yield from report_larger_than_base(results_dir, ['3.12'], minifier_sha, base_sha) + yield from report_slowest(results_dir, ['3.12'], minifier_sha) + yield from report_unstable(results_dir, ['2.7', '3.3', '3.4', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11', '3.12'], minifier_sha) + yield from report_exceptions(results_dir, ['3.6', '3.7', '3.8', '3.9', '3.10', '3.11', '3.12'], minifier_sha) def main(): From 88009543b4f338755b4f3c045392a82d9189a207 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 28 Sep 2023 15:32:58 +0100 Subject: [PATCH 17/53] Fix report generation for empty result sets --- corpus_test/generate_report.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/corpus_test/generate_report.py b/corpus_test/generate_report.py index c4432254..18b1c6d6 100644 --- a/corpus_test/generate_report.py +++ b/corpus_test/generate_report.py @@ -54,12 +54,12 @@ def add(self, result: Result): @property def mean_time(self) -> float: """Return the mean time to minify a file""" - return self.total_time / self.valid_count + return self.total_time / self.valid_count if self.valid_count else 0 @property def mean_percent_of_original(self) -> float: """Return the mean minified size as a percent of the original size""" - return self.total_percent_of_original / self.valid_count + return self.total_percent_of_original / self.valid_count if self.valid_count else 0 def larger_than_original(self) -> Iterable[Result]: """Return those entries that have a larger minified size than the original size""" From 6731de23bd53dd6d9d3cfdade3af517b3e4b6b27 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 29 Sep 2023 16:58:38 +0100 Subject: [PATCH 18/53] Create wheel --- .github/workflows/release_test.yaml | 70 +++++++++++++++++++++++------ 1 file changed, 56 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 5139929e..cc286de9 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -4,16 +4,20 @@ on: [push] jobs: - package: - name: Create Package + package_python3: + name: Create sdist and Python 3 Wheel runs-on: ubuntu-latest + outputs: + sdist: ${{ steps.package.outputs.sdist }} + wheel: ${{ steps.package.outputs.wheel }} container: image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 + progress: false - name: Set version statically run: | @@ -22,9 +26,39 @@ jobs: sed -i "s/setup_requires=.*/version='$VERSION',/; s/use_scm_version=.*//" setup.py - name: Create Packages + id: package run: | pip3 install --upgrade build python3 -m build + + echo "sdist=$(find dist -name '*.tar.gz' -printf "%f\n")" >> "$GITHUB_OUTPUT" + echo "wheel=$(find dist -name '*-py3-*.whl' -printf "%f\n")" >> "$GITHUB_OUTPUT" + + - uses: actions/upload-artifact@v3 + with: + name: dist + path: dist/ + if-no-files-found: error + + package_python2: + name: Create Python 2 Wheel + runs-on: ubuntu-latest + needs: [package_python3] + outputs: + wheel: ${{ steps.package.outputs.wheel }} + container: + image: danielflook/python-minifier-build:python2.7-2023-09-25 + steps: + - uses: actions/download-artifact@v3 + with: + name: dist + path: dist/ + + - name: Build wheel + id: package + run: | + pip wheel dist/${{ needs.package_python3.outputs.sdist }} -w dist + echo "wheel=$(find dist -name '*-py2-*.whl' -printf "%f\n")" >> "$GITHUB_OUTPUT" - uses: actions/upload-artifact@v3 with: @@ -35,7 +69,7 @@ jobs: test_docs: name: Test Documentation runs-on: ubuntu-latest - needs: [package] + needs: [package_python3] container: image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: @@ -46,7 +80,7 @@ jobs: - name: Install package run: | - pip3 install dist/*.tar.gz + pip3 install dist/${{needs.package_python3.outputs.sdist}} pyminify --version - name: Checkout @@ -60,15 +94,12 @@ jobs: test_package: name: Test Package runs-on: ubuntu-latest - needs: [package] + needs: [package_python3, package_python2] strategy: fail-fast: false matrix: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] - package_type: [.tar.gz, .whl] - exclude: - - python: 2.7 - package_type: .whl + package_type: [sdist, wheel] container: image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 steps: @@ -79,7 +110,14 @@ jobs: - name: Install package run: | - pip${{ matrix.python }} install dist/*${{ matrix.package_type }} + if [[ "${{ matrix.package_type }}" == "sdist" ]]; then + pip${{ matrix.python }} install dist/${{needs.package_python3.outputs.sdist}} + elif [[ "${{ matrix.python }}" == "2.7" ]]; then + pip${{ matrix.python }} install dist/${{needs.package_python2.outputs.wheel}} + else + pip${{ matrix.python }} install dist/${{needs.package_python3.outputs.wheel}} + fi + pyminify --version - name: Checkout @@ -95,10 +133,10 @@ jobs: test_typing: runs-on: ubuntu-latest - needs: [package] + needs: [package_python3] strategy: matrix: - package_type: [.tar.gz, .whl] + package_type: [sdist, wheel] container: image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: @@ -109,7 +147,11 @@ jobs: - name: Install package run: | - pip3.12 install dist/*${{ matrix.package_type }} + if [[ "${{ matrix.package_type }}" == "sdist" ]]; then + pip3.12 install dist/${{needs.package_python3.outputs.sdist}} + else + pip3.12 install dist/${{needs.package_python3.outputs.wheel}} + fi - name: Checkout uses: actions/checkout@v3 From bd002c7529368037cc832e188bb6eaefd4962a7f Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 30 Sep 2023 09:01:09 +0100 Subject: [PATCH 19/53] Retest with test-set-1 --- .github/workflows/release_test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index cc286de9..238044d6 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -66,7 +66,7 @@ jobs: path: dist/ if-no-files-found: error - test_docs: + documentation: name: Test Documentation runs-on: ubuntu-latest needs: [package_python3] From c168261fa4d98add0584f1e736392d1ebc40cd5b Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 30 Sep 2023 18:30:12 +0100 Subject: [PATCH 20/53] Fix python2 package --- .github/workflows/release_test.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 238044d6..29ed892e 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -57,6 +57,7 @@ jobs: - name: Build wheel id: package run: | + pip install --upgrade wheel pip wheel dist/${{ needs.package_python3.outputs.sdist }} -w dist echo "wheel=$(find dist -name '*-py2-*.whl' -printf "%f\n")" >> "$GITHUB_OUTPUT" From 981e99e8331d57f96b6cbd510ac8f8732aa7dec3 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 30 Sep 2023 18:45:06 +0100 Subject: [PATCH 21/53] Fix python2 wheel build --- .github/workflows/release_test.yaml | 18 ++++++++++++++---- docker/Dockerfile-fedora30 | 1 + 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 29ed892e..65219b78 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -17,7 +17,7 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - progress: false + show-progress: false - name: Set version statically run: | @@ -57,6 +57,7 @@ jobs: - name: Build wheel id: package run: | + dnf install -y findutils pip install --upgrade wheel pip wheel dist/${{ needs.package_python3.outputs.sdist }} -w dist echo "wheel=$(find dist -name '*-py2-*.whl' -printf "%f\n")" >> "$GITHUB_OUTPUT" @@ -85,7 +86,10 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 + with: + fetch-depth: 0 + show-progress: false - name: Build documentation run: | @@ -122,7 +126,10 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 + with: + fetch-depth: 0 + show-progress: false - name: Test pyminify run: | @@ -155,7 +162,10 @@ jobs: fi - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 + with: + fetch-depth: 0 + show-progress: false - name: Test typing run: | diff --git a/docker/Dockerfile-fedora30 b/docker/Dockerfile-fedora30 index 37912b4e..525270cd 100644 --- a/docker/Dockerfile-fedora30 +++ b/docker/Dockerfile-fedora30 @@ -27,6 +27,7 @@ RUN dnf install -y \ python27 \ python2-test \ python2-pip \ + findutils \ && dnf clean all && rm -rf /var/cache/dnf/* ## From f34ebbd073d6cf640704e543f35ec5a6d58bb304 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 30 Sep 2023 20:01:15 +0100 Subject: [PATCH 22/53] Add hypothesis tests for type parameters --- hypo_test/module.py | 31 ++++++++++++++++++++++++++---- hypo_test/test_it.py | 45 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 71 insertions(+), 5 deletions(-) diff --git a/hypo_test/module.py b/hypo_test/module.py index 5c871dfe..50eabfae 100644 --- a/hypo_test/module.py +++ b/hypo_test/module.py @@ -168,14 +168,34 @@ def ImportFrom(draw) -> ast.ImportFrom: names=draw(lists(alias(), min_size=1, max_size=3)), level=draw(integers(min_value=0, max_value=2))) +@composite +def TypeVar(draw) -> ast.TypeVar: + return ast.TypeVar(name=draw(name()), + bound=draw(none() | expression())) + +@composite +def TypeVarTuple(draw) -> ast.TypeVarTuple: + return ast.TypeVarTuple(name=draw(name())) + +@composite +def ParamSpec(draw) -> ast.ParamSpec: + return ast.ParamSpec(name=draw(name())) + +@composite +def TypeAlias(draw) -> ast.TypeAlias: + return ast.TypeAlias(name=draw(Name(ast.Store)), + value=draw(expression()), + type_params=draw(lists(one_of(TypeVar(), TypeVarTuple(), ParamSpec()), min_size=0, max_size=3))) + @composite def FunctionDef(draw, statements) -> ast.FunctionDef: n = draw(name()) args = draw(arguments()) body = draw(lists(statements, min_size=1, max_size=3)) decorator_list = draw(lists(Name(), min_size=0, max_size=2)) + type_params = draw(none() | lists(one_of(TypeVar(), TypeVarTuple(), ParamSpec()), min_size=0, max_size=3)) returns = draw(none() | expression()) - return ast.FunctionDef(n, args, body, decorator_list, returns) + return ast.FunctionDef(n, args, body, decorator_list, returns, type_params=type_params) @composite def AsyncFunctionDef(draw, statements) -> ast.AsyncFunctionDef: @@ -183,8 +203,9 @@ def AsyncFunctionDef(draw, statements) -> ast.AsyncFunctionDef: args = draw(arguments()) body = draw(lists(statements, min_size=1, max_size=3)) decorator_list = draw(lists(Name(), min_size=0, max_size=2)) + type_params = draw(none() | lists(one_of(TypeVar(), TypeVarTuple(), ParamSpec()), min_size=0, max_size=3)) returns = draw(none() | expression()) - return ast.AsyncFunctionDef(n, args, body, decorator_list, returns) + return ast.AsyncFunctionDef(n, args, body, decorator_list, returns, type_params=type_params) @composite def keyword(draw) -> ast.keyword: @@ -208,7 +229,8 @@ def ClassDef(draw, statements) -> ast.ClassDef: bases=bases, keywords=keywords, body=body, - decorator_list=decorator_list + decorator_list=decorator_list, + type_params=draw(none() | lists(one_of(TypeVar(), TypeVarTuple(), ParamSpec()), min_size=0, max_size=3)) ) if hasattr(ast, 'Print'): @@ -244,7 +266,8 @@ def ClassDef(draw, statements) -> ast.ClassDef: AnnAssign(), AugAssign(), Import(), - ImportFrom() + ImportFrom(), + TypeAlias() ) def suite() -> SearchStrategy: diff --git a/hypo_test/test_it.py b/hypo_test/test_it.py index 608dd002..9327f4b9 100644 --- a/hypo_test/test_it.py +++ b/hypo_test/test_it.py @@ -10,7 +10,7 @@ from python_minifier.ast_printer import print_ast from python_minifier.expression_printer import ExpressionPrinter from expressions import Expression -from module import Module +from module import Module, TypeAlias from python_minifier.rename.mapper import add_parent from python_minifier.transforms.constant_folding import FoldConstants @@ -72,3 +72,46 @@ def test_folding(node): # The constant folder asserts the value is correct constant_folder(node) + +@given(node=TypeAlias()) +@settings(report_multiple_bugs=False, deadline=timedelta(seconds=2), max_examples=1000, verbosity=Verbosity.verbose) +def test_type_alias(node): + + module = ast.Module( + body=[node], + type_ignores=[] + ) + + printer = ModulePrinter() + code = printer(module) + note(code) + compare_ast(module, ast.parse(code, 'test_type_alias')) + +@given(node=TypeAlias()) +@settings(report_multiple_bugs=False, deadline=timedelta(seconds=2), max_examples=1000, verbosity=Verbosity.verbose) +def test_function_type_param(node): + + module = ast.Module( + body=[ast.FunctionDef( + name='test', + args=ast.arguments( + posonlyargs=[], + args=[], + vararg=None, + kwonlyargs=[], + kw_defaults=[], + kwarg=None, + defaults=[], + ), + body=[ast.Pass()], + type_params=node.type_params, + decorator_list=[], + returns=None + )], + type_ignores=[] + ) + + printer = ModulePrinter() + code = printer(module) + note(code) + compare_ast(module, ast.parse(code, 'test_function_type_param')) From 654a3e15df0ecd7c681e54f83509295ae5a27a1f Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Mon, 8 Jan 2024 17:02:58 +0000 Subject: [PATCH 23/53] Rollback to actions/checkout@v3 --- .github/workflows/release_test.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 65219b78..b8f401f3 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -14,7 +14,7 @@ jobs: image: danielflook/python-minifier-build:python3.12-2023-09-25 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -86,7 +86,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -126,7 +126,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -162,7 +162,7 @@ jobs: fi - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false From 0a7cd60d388e2b722810b28215827e1141ad0f88 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 9 Jan 2024 17:24:16 +0000 Subject: [PATCH 24/53] Allow reusing quotes in f-strings --- src/python_minifier/expression_printer.py | 7 +++++- src/python_minifier/f_string.py | 28 ++++++++++++++--------- 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/python_minifier/expression_printer.py b/src/python_minifier/expression_printer.py index 587c232d..3f5d3b72 100644 --- a/src/python_minifier/expression_printer.py +++ b/src/python_minifier/expression_printer.py @@ -735,7 +735,12 @@ def visit_JoinedStr(self, node): import python_minifier.f_string - self.printer.fstring(str(python_minifier.f_string.OuterFString(node))) + if sys.version_info < (3, 12): + quote_reuse = False + else: + quote_reuse = True + + self.printer.fstring(str(python_minifier.f_string.OuterFString(node, quote_reuse=quote_reuse))) def visit_NamedExpr(self, node): self._expression(node.target) diff --git a/src/python_minifier/f_string.py b/src/python_minifier/f_string.py index 1fee3791..89d730f0 100644 --- a/src/python_minifier/f_string.py +++ b/src/python_minifier/f_string.py @@ -24,11 +24,12 @@ class FString(object): An F-string in the expression part of another f-string """ - def __init__(self, node, allowed_quotes): + def __init__(self, node, allowed_quotes, quote_reuse): assert isinstance(node, ast.JoinedStr) self.node = node self.allowed_quotes = allowed_quotes + self.quote_reuse = quote_reuse def is_correct_ast(self, code): try: @@ -53,7 +54,7 @@ def complete_debug_specifier(self, partial_specifier_candidates, value_node): conversion_candidates = [x + conversion for x in partial_specifier_candidates] if value_node.format_spec is not None: - conversion_candidates = [c + ':' + fs for c in conversion_candidates for fs in FormatSpec(value_node.format_spec, self.allowed_quotes).candidates()] + conversion_candidates = [c + ':' + fs for c in conversion_candidates for fs in FormatSpec(value_node.format_spec, self.allowed_quotes, self.quote_reuse).candidates()] return [x + '}' for x in conversion_candidates] @@ -64,7 +65,10 @@ def candidates(self): candidates = [''] debug_specifier_candidates = [] nested_allowed = copy.copy(self.allowed_quotes) - nested_allowed.remove(quote) + + if not self.quote_reuse: + nested_allowed.remove(quote) + for v in self.node.values: if is_ast_node(v, ast.Str): @@ -86,7 +90,7 @@ def candidates(self): try: completed = self.complete_debug_specifier(debug_specifier_candidates, v) candidates = [ - x + y for x in candidates for y in FormattedValue(v, nested_allowed).get_candidates() + x + y for x in candidates for y in FormattedValue(v, nested_allowed, self.quote_reuse).get_candidates() ] + completed debug_specifier_candidates = [] except Exception as e: @@ -111,9 +115,9 @@ class OuterFString(FString): OuterFString is free to use backslashes in the Str parts """ - def __init__(self, node): + def __init__(self, node, quote_reuse=False): assert isinstance(node, ast.JoinedStr) - super(OuterFString, self).__init__(node, ['"', "'", '"""', "'''"]) + super(OuterFString, self).__init__(node, ['"', "'", '"""', "'''"], quote_reuse=quote_reuse) def __str__(self): if len(self.node.values) == 0: @@ -151,12 +155,13 @@ class FormattedValue(ExpressionPrinter): An F-String Expression Part """ - def __init__(self, node, allowed_quotes): + def __init__(self, node, allowed_quotes, quote_reuse): super(FormattedValue, self).__init__() assert isinstance(node, ast.FormattedValue) self.node = node self.allowed_quotes = allowed_quotes + self.quote_reuse = quote_reuse self.candidates = [''] def get_candidates(self): @@ -177,7 +182,7 @@ def get_candidates(self): if self.node.format_spec is not None: self.printer.delimiter(':') - self._append(FormatSpec(self.node.format_spec, self.allowed_quotes).candidates()) + self._append(FormatSpec(self.node.format_spec, self.allowed_quotes, quote_reuse=self.quote_reuse).candidates()) self.printer.delimiter('}') @@ -215,7 +220,7 @@ def visit_JoinedStr(self, node): assert isinstance(node, ast.JoinedStr) if self.printer.previous_token in [TokenTypes.Identifier, TokenTypes.Keyword, TokenTypes.SoftKeyword]: self.printer.delimiter(' ') - self._append(FString(node, allowed_quotes=self.allowed_quotes).candidates()) + self._append(FString(node, allowed_quotes=self.allowed_quotes, quote_reuse=self.quote_reuse).candidates()) def _finalize(self): self.candidates = [x + str(self.printer) for x in self.candidates] @@ -319,11 +324,12 @@ class FormatSpec(object): """ - def __init__(self, node, allowed_quotes): + def __init__(self, node, allowed_quotes, quote_reuse): assert isinstance(node, ast.JoinedStr) self.node = node self.allowed_quotes = allowed_quotes + self.quote_reuse = quote_reuse def candidates(self): @@ -333,7 +339,7 @@ def candidates(self): candidates = [x + self.str_for(v.s) for x in candidates] elif isinstance(v, ast.FormattedValue): candidates = [ - x + y for x in candidates for y in FormattedValue(v, self.allowed_quotes).get_candidates() + x + y for x in candidates for y in FormattedValue(v, self.allowed_quotes, self.quote_reuse).get_candidates() ] else: raise RuntimeError('Unexpected JoinedStr value') From 710f128e40974d05594e49d1b8785d16e303b1ad Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 11 Jan 2024 11:14:38 +0000 Subject: [PATCH 25/53] Relax restrictions about backslashes in pep701 f-strings --- corpus_test/generate_report.py | 4 +- src/python_minifier/expression_printer.py | 6 +- src/python_minifier/f_string.py | 49 +++++----- test/test_empty_fstring.py | 19 ---- test/test_fstring.py | 105 ++++++++++++++++++++++ 5 files changed, 138 insertions(+), 45 deletions(-) delete mode 100644 test/test_empty_fstring.py create mode 100644 test/test_fstring.py diff --git a/corpus_test/generate_report.py b/corpus_test/generate_report.py index 18b1c6d6..b0ee2d04 100644 --- a/corpus_test/generate_report.py +++ b/corpus_test/generate_report.py @@ -338,9 +338,9 @@ def format_size_change_detail() -> str: got_smaller_count = len(list(summary.compare_size_decrease(base_summary))) if got_bigger_count > 0: - s += f', {got_bigger_count}:chart_with_upwards_trend:' + s += f', {got_bigger_count} :chart_with_upwards_trend:' if got_smaller_count > 0: - s += f', {got_smaller_count}:chart_with_downwards_trend:' + s += f', {got_smaller_count} :chart_with_downwards_trend:' s += ')' diff --git a/src/python_minifier/expression_printer.py b/src/python_minifier/expression_printer.py index 3f5d3b72..300f399c 100644 --- a/src/python_minifier/expression_printer.py +++ b/src/python_minifier/expression_printer.py @@ -736,11 +736,11 @@ def visit_JoinedStr(self, node): import python_minifier.f_string if sys.version_info < (3, 12): - quote_reuse = False + pep701 = False else: - quote_reuse = True + pep701 = True - self.printer.fstring(str(python_minifier.f_string.OuterFString(node, quote_reuse=quote_reuse))) + self.printer.fstring(str(python_minifier.f_string.OuterFString(node, pep701=pep701))) def visit_NamedExpr(self, node): self._expression(node.target) diff --git a/src/python_minifier/f_string.py b/src/python_minifier/f_string.py index 89d730f0..5abe74c6 100644 --- a/src/python_minifier/f_string.py +++ b/src/python_minifier/f_string.py @@ -24,12 +24,12 @@ class FString(object): An F-string in the expression part of another f-string """ - def __init__(self, node, allowed_quotes, quote_reuse): + def __init__(self, node, allowed_quotes, pep701): assert isinstance(node, ast.JoinedStr) self.node = node self.allowed_quotes = allowed_quotes - self.quote_reuse = quote_reuse + self.pep701 = pep701 def is_correct_ast(self, code): try: @@ -54,7 +54,7 @@ def complete_debug_specifier(self, partial_specifier_candidates, value_node): conversion_candidates = [x + conversion for x in partial_specifier_candidates] if value_node.format_spec is not None: - conversion_candidates = [c + ':' + fs for c in conversion_candidates for fs in FormatSpec(value_node.format_spec, self.allowed_quotes, self.quote_reuse).candidates()] + conversion_candidates = [c + ':' + fs for c in conversion_candidates for fs in FormatSpec(value_node.format_spec, self.allowed_quotes, self.pep701).candidates()] return [x + '}' for x in conversion_candidates] @@ -66,7 +66,7 @@ def candidates(self): debug_specifier_candidates = [] nested_allowed = copy.copy(self.allowed_quotes) - if not self.quote_reuse: + if not self.pep701: nested_allowed.remove(quote) for v in self.node.values: @@ -90,7 +90,7 @@ def candidates(self): try: completed = self.complete_debug_specifier(debug_specifier_candidates, v) candidates = [ - x + y for x in candidates for y in FormattedValue(v, nested_allowed, self.quote_reuse).get_candidates() + x + y for x in candidates for y in FormattedValue(v, nested_allowed, self.pep701).get_candidates() ] + completed debug_specifier_candidates = [] except Exception as e: @@ -115,9 +115,9 @@ class OuterFString(FString): OuterFString is free to use backslashes in the Str parts """ - def __init__(self, node, quote_reuse=False): + def __init__(self, node, pep701=False): assert isinstance(node, ast.JoinedStr) - super(OuterFString, self).__init__(node, ['"', "'", '"""', "'''"], quote_reuse=quote_reuse) + super(OuterFString, self).__init__(node, ['"', "'", '"""', "'''"], pep701=pep701) def __str__(self): if len(self.node.values) == 0: @@ -155,13 +155,13 @@ class FormattedValue(ExpressionPrinter): An F-String Expression Part """ - def __init__(self, node, allowed_quotes, quote_reuse): + def __init__(self, node, allowed_quotes, pep701): super(FormattedValue, self).__init__() assert isinstance(node, ast.FormattedValue) self.node = node self.allowed_quotes = allowed_quotes - self.quote_reuse = quote_reuse + self.pep701 = pep701 self.candidates = [''] def get_candidates(self): @@ -182,7 +182,7 @@ def get_candidates(self): if self.node.format_spec is not None: self.printer.delimiter(':') - self._append(FormatSpec(self.node.format_spec, self.allowed_quotes, quote_reuse=self.quote_reuse).candidates()) + self._append(FormatSpec(self.node.format_spec, self.allowed_quotes, pep701=self.pep701).candidates()) self.printer.delimiter('}') @@ -211,7 +211,7 @@ def is_curly(self, node): return False def visit_Str(self, node): - self.printer.append(str(Str(node.s, self.allowed_quotes)), TokenTypes.NonNumberLiteral) + self.printer.append(str(Str(node.s, self.allowed_quotes, self.pep701)), TokenTypes.NonNumberLiteral) def visit_Bytes(self, node): self.printer.append(str(Bytes(node.s, self.allowed_quotes)), TokenTypes.NonNumberLiteral) @@ -220,7 +220,7 @@ def visit_JoinedStr(self, node): assert isinstance(node, ast.JoinedStr) if self.printer.previous_token in [TokenTypes.Identifier, TokenTypes.Keyword, TokenTypes.SoftKeyword]: self.printer.delimiter(' ') - self._append(FString(node, allowed_quotes=self.allowed_quotes, quote_reuse=self.quote_reuse).candidates()) + self._append(FString(node, allowed_quotes=self.allowed_quotes, pep701=self.pep701).candidates()) def _finalize(self): self.candidates = [x + str(self.printer) for x in self.candidates] @@ -235,20 +235,21 @@ class Str(object): """ A Str node inside an f-string expression - May use any of the allowed quotes, no backslashes! + May use any of the allowed quotes. In Python <3.12, backslashes are not allowed. """ - def __init__(self, s, allowed_quotes): + def __init__(self, s, allowed_quotes, pep701=False): self._s = s self.allowed_quotes = allowed_quotes self.current_quote = None + self.pep701 = pep701 def _can_quote(self, c): if self.current_quote is None: return False - if (c == '\n' or c == '\r') and len(self.current_quote) == 1: + if (c == '\n' or c == '\r') and len(self.current_quote) == 1 and not self.pep701: return False if c == self.current_quote[0]: @@ -258,7 +259,7 @@ def _can_quote(self, c): def _get_quote(self, c): for quote in self.allowed_quotes: - if c == '\n' or c == '\r': + if not self.pep701 and (c == '\n' or c == '\r'): if len(quote) == 3: return quote elif c != quote: @@ -279,7 +280,13 @@ def _literals(self): if l == '': l += self.current_quote - l += c + + if c == '\n': + l += '\\n' + elif c == '\r': + l += '\\r' + else: + l += c if l: l += self.current_quote @@ -292,7 +299,7 @@ def __str__(self): if '\0' in self._s or '\\' in self._s: raise ValueError('Impossible to represent a %r character in f-string expression part') - if '\n' in self._s or '\r' in self._s: + if not self.pep701 and ('\n' in self._s or '\r' in self._s): if '"""' not in self.allowed_quotes and "'''" not in self.allowed_quotes: raise ValueError( 'Impossible to represent newline character in f-string expression part without a long quote' @@ -324,12 +331,12 @@ class FormatSpec(object): """ - def __init__(self, node, allowed_quotes, quote_reuse): + def __init__(self, node, allowed_quotes, pep701): assert isinstance(node, ast.JoinedStr) self.node = node self.allowed_quotes = allowed_quotes - self.quote_reuse = quote_reuse + self.pep701 = pep701 def candidates(self): @@ -339,7 +346,7 @@ def candidates(self): candidates = [x + self.str_for(v.s) for x in candidates] elif isinstance(v, ast.FormattedValue): candidates = [ - x + y for x in candidates for y in FormattedValue(v, self.allowed_quotes, self.quote_reuse).get_candidates() + x + y for x in candidates for y in FormattedValue(v, self.allowed_quotes, self.pep701).get_candidates() ] else: raise RuntimeError('Unexpected JoinedStr value') diff --git a/test/test_empty_fstring.py b/test/test_empty_fstring.py deleted file mode 100644 index 9fa23656..00000000 --- a/test/test_empty_fstring.py +++ /dev/null @@ -1,19 +0,0 @@ -import ast -import sys -import pytest -from python_minifier import unparse -from python_minifier.ast_compare import compare_ast - -def test_fstring_empty_str(): - if sys.version_info < (3, 6): - pytest.skip('f-string expressions not allowed in python < 3.6') - - source = r''' -f"""\ -{fg_br}""" -''' - - print(source) - expected_ast = ast.parse(source) - actual_ast = unparse(expected_ast) - compare_ast(expected_ast, ast.parse(actual_ast)) diff --git a/test/test_fstring.py b/test/test_fstring.py new file mode 100644 index 00000000..0c041a43 --- /dev/null +++ b/test/test_fstring.py @@ -0,0 +1,105 @@ +import ast +import sys + +import pytest + +from python_minifier import unparse +from python_minifier.ast_compare import compare_ast + + +@pytest.mark.parametrize('statement', [ + 'f"{1=!r:.4}"', + 'f"{1=:.4}"', + 'f"{1=!s:.4}"', + 'f"{1=:.4}"', + 'f"{1}"', + 'f"{1=}"', + 'f"{1=!s}"', + 'f"{1=!a}"' +]) +def test_fstring_statement(statement): + if sys.version_info < (3, 8): + pytest.skip('f-string debug specifier added in python 3.8') + + assert unparse(ast.parse(statement)) == statement + +def test_pep0701(): + if sys.version_info < (3, 12): + pytest.skip('f-string syntax is bonkers before python 3.12') + + statement = 'f"{f"{f"{f"{"hello"}"}"}"}"' + assert unparse(ast.parse(statement)) == statement + + statement = 'f"This is the playlist: {", ".join([])}"' + assert unparse(ast.parse(statement)) == statement + + statement = 'f"{f"{f"{f"{f"{f"{1+1}"}"}"}"}"}"' + assert unparse(ast.parse(statement)) == statement + + statement = """ +f"This is the playlist: {", ".join([ + 'Take me back to Eden', # My, my, those eyes like fire + 'Alkaline', # Not acid nor alkaline + 'Ascensionism' # Take to the broken skies at last +])}" +""" + assert unparse(ast.parse(statement)) == 'f"This is the playlist: {", ".join(["Take me back to Eden","Alkaline","Ascensionism"])}"' + + statement = '''print(f"This is the playlist: {"\N{BLACK HEART SUIT}".join(songs)}")''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"Magic wand: {bag["wand"]}"''' + assert unparse(ast.parse(statement)) == statement + + statement = """ +f'''A complex trick: { + bag['bag'] # recursive bags! +}''' + """ + assert unparse(ast.parse(statement)) == 'f"A complex trick: {bag["bag"]}"' + + statement = '''f"These are the things: {", ".join(things)}"''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"{source.removesuffix(".py")}.c: $(srcdir)/{source}"''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"{f"{f"infinite"}"}"+' '+f"{f"nesting!!!"}"''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"{"\\n".join(a)}"''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"{f"{f"{f"{f"{f"{1+1}"}"}"}"}"}"''' + assert unparse(ast.parse(statement)) == statement + + statement = '''f"{"":*^{1:{1}}}"''' + assert unparse(ast.parse(statement)) == statement + + #statement = '''f"{"":*^{1:{1:{1}}}}"''' + #assert unparse(ast.parse(statement)) == statement + # SyntaxError: f-string: expressions nested too deeply + + statement = '''f"___{ + x +}___"''' + assert unparse(ast.parse(statement)) == '''f"___{x}___"''' + + statement = '''f"___{( + x +)}___"''' + assert unparse(ast.parse(statement)) == '''f"___{x}___"''' + +def test_fstring_empty_str(): + if sys.version_info < (3, 6): + pytest.skip('f-string expressions not allowed in python < 3.6') + + source = r''' +f"""\ +{fg_br}""" +''' + + print(source) + expected_ast = ast.parse(source) + actual_ast = unparse(expected_ast) + compare_ast(expected_ast, ast.parse(actual_ast)) From baee4a85c363679fdd3f7485f8d58a47e1207ef7 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 11 Jan 2024 16:37:26 +0000 Subject: [PATCH 26/53] Wrap lambda expressions in parentheses The top level ':' will fail to parse --- src/python_minifier/f_string.py | 5 +++++ test/test_fstring.py | 10 ++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/python_minifier/f_string.py b/src/python_minifier/f_string.py index 5abe74c6..ae65a808 100644 --- a/src/python_minifier/f_string.py +++ b/src/python_minifier/f_string.py @@ -222,6 +222,11 @@ def visit_JoinedStr(self, node): self.printer.delimiter(' ') self._append(FString(node, allowed_quotes=self.allowed_quotes, pep701=self.pep701).candidates()) + def visit_Lambda(self, node): + self.printer.delimiter('(') + super().visit_Lambda(node) + self.printer.delimiter(')') + def _finalize(self): self.candidates = [x + str(self.printer) for x in self.candidates] self.printer._code = '' diff --git a/test/test_fstring.py b/test/test_fstring.py index 0c041a43..fb9821cf 100644 --- a/test/test_fstring.py +++ b/test/test_fstring.py @@ -45,8 +45,8 @@ def test_pep0701(): """ assert unparse(ast.parse(statement)) == 'f"This is the playlist: {", ".join(["Take me back to Eden","Alkaline","Ascensionism"])}"' - statement = '''print(f"This is the playlist: {"\N{BLACK HEART SUIT}".join(songs)}")''' - assert unparse(ast.parse(statement)) == statement + #statement = '''print(f"This is the playlist: {"\N{BLACK HEART SUIT}".join(songs)}")''' + #assert unparse(ast.parse(statement)) == statement statement = '''f"Magic wand: {bag["wand"]}"''' assert unparse(ast.parse(statement)) == statement @@ -85,10 +85,8 @@ def test_pep0701(): }___"''' assert unparse(ast.parse(statement)) == '''f"___{x}___"''' - statement = '''f"___{( - x -)}___"''' - assert unparse(ast.parse(statement)) == '''f"___{x}___"''' + statement = '''f"Useless use of lambdas: {(lambda x:x*2)}"''' + assert unparse(ast.parse(statement)) == statement def test_fstring_empty_str(): if sys.version_info < (3, 6): From 0da44dc70af0d4a663637e49d7c44daa2398e452 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 12 Jan 2024 11:20:25 +0000 Subject: [PATCH 27/53] Update python 12 build container to use Python 3.12.1 --- .github/workflows/release.yaml | 2 +- .github/workflows/release_test.yaml | 10 +++++----- .github/workflows/test.yaml | 2 +- .github/workflows/test_corpus.yaml | 4 ++-- .github/workflows/verify_release.yaml | 2 +- .github/workflows/xtest.yaml | 2 +- docker/Dockerfile-fedora38 | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index ae106cef..247dcfb5 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,7 +13,7 @@ jobs: release: runs-on: ubuntu-latest container: - image: danielflook/python-minifier-build:python3.12-2023-09-25 + image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index b8f401f3..2e5f65a2 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -11,7 +11,7 @@ jobs: sdist: ${{ steps.package.outputs.sdist }} wheel: ${{ steps.package.outputs.wheel }} container: - image: danielflook/python-minifier-build:python3.12-2023-09-25 + image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout uses: actions/checkout@v3 @@ -47,7 +47,7 @@ jobs: outputs: wheel: ${{ steps.package.outputs.wheel }} container: - image: danielflook/python-minifier-build:python2.7-2023-09-25 + image: danielflook/python-minifier-build:python2.7-2024-01-12 steps: - uses: actions/download-artifact@v3 with: @@ -73,7 +73,7 @@ jobs: runs-on: ubuntu-latest needs: [package_python3] container: - image: danielflook/python-minifier-build:python3.12-2023-09-25 + image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - uses: actions/download-artifact@v3 with: @@ -106,7 +106,7 @@ jobs: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] package_type: [sdist, wheel] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2024-01-12 steps: - uses: actions/download-artifact@v3 with: @@ -146,7 +146,7 @@ jobs: matrix: package_type: [sdist, wheel] container: - image: danielflook/python-minifier-build:python3.12-2023-09-25 + image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index d22fe4f9..eeb0cd58 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -12,7 +12,7 @@ jobs: matrix: python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index dcba7599..4b56c5a2 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -44,7 +44,7 @@ jobs: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] ref: ["${{ inputs.ref }}", "${{ inputs.base-ref }}"] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2024-01-12 volumes: - /corpus:/corpus - /corpus-results:/corpus-results @@ -100,7 +100,7 @@ jobs: needs: generate_results runs-on: self-hosted container: - image: danielflook/python-minifier-build:python3.12-2023-09-25 + image: danielflook/python-minifier-build:python3.12-2024-01-12 volumes: - /corpus-results:/corpus-results if: ${{ always() }} diff --git a/.github/workflows/verify_release.yaml b/.github/workflows/verify_release.yaml index 83442cc9..ce1564c5 100644 --- a/.github/workflows/verify_release.yaml +++ b/.github/workflows/verify_release.yaml @@ -15,7 +15,7 @@ jobs: matrix: python: ["2.7", "3.3", "3.4", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] container: - image: danielflook/python-minifier-build:python${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:python${{ matrix.python }}-2024-01-12 steps: - name: Test run: | diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index 4c0548b4..95fdeaf7 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -12,7 +12,7 @@ jobs: matrix: python: ["python2.7", "python3.3", "python3.4", "python3.5", "python3.6", "python3.7", "python3.8", "python3.9", "python3.10", "python3.11", "python3.12", "pypy3"] container: - image: danielflook/python-minifier-build:${{ matrix.python }}-2023-09-25 + image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/docker/Dockerfile-fedora38 b/docker/Dockerfile-fedora38 index 36578524..a6a0bbc9 100644 --- a/docker/Dockerfile-fedora38 +++ b/docker/Dockerfile-fedora38 @@ -28,7 +28,7 @@ RUN dnf install -y \ wget \ && git clone https://github.com/python/cpython.git \ && cd cpython \ - && git checkout v3.12.0rc3 \ + && git checkout v3.12.1 \ && ./configure \ && make \ && make install \ From 34e4edec9480e2e8fa3443d636c09382c83592e8 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 12 Jan 2024 17:51:20 +0000 Subject: [PATCH 28/53] Initial python 3.12 test manifest --- xtest/manifests/python3.12_test_manifest.yaml | 5076 +++++++++++++++++ 1 file changed, 5076 insertions(+) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index e69de29b..1e216608 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -0,0 +1,5076 @@ +/usr/local/lib/python3.12/test/leakers/test_ctypes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/leakers/test_selftype.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test___all__.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test__locale.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test__opcode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test__osx_support.py: [] +/usr/local/lib/python3.12/test/test__xxinterpchannels.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test__xxsubinterpreters.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_abc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_abstract_numbers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_aifc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_argparse.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_array.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asdl_parser.py: [] +/usr/local/lib/python3.12/test/test_ast.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncgen.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_base_events.py: [] +/usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_context.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_eager_task_factory.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_events.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_futures.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_runners.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_server.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_streams.py: [] +/usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_tasks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_transports.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_unix_events.py: [] +/usr/local/lib/python3.12/test/test_asyncio/test_waitfor.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_asyncio/test_windows_events.py: [] +/usr/local/lib/python3.12/test/test_asyncio/test_windows_utils.py: [] +/usr/local/lib/python3.12/test/test_atexit.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_audioop.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_audit.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_augassign.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_base64.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_baseexception.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bdb.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bigaddrspace.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bigmem.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_binascii.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_binop.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bisect.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bool.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_buffer.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bufio.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_builtin.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bytes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_bz2.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_c_locale_coercion.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_calendar.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_call.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_abstract.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_bytearray.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_bytes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_codecs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_complex.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_dict.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_exceptions.py: [] +/usr/local/lib/python3.12/test/test_capi/test_float.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_getargs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_immortal.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_list.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_long.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_mem.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_misc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_set.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_structmembers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_sys.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_unicode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_capi/test_watchers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cgi.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cgitb.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_charmapcodec.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_class.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_clinic.py: [] +/usr/local/lib/python3.12/test/test_cmath.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cmd.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cmd_line.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cmd_line_script.py: [] +/usr/local/lib/python3.12/test/test_code.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_code_module.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codeccallbacks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_cn.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_hk.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_jp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_kr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecencodings_tw.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecmaps_cn.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecmaps_hk.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecmaps_jp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecmaps_kr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecmaps_tw.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codecs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_codeop.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_collections.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_colorsys.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_compare.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_compile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_compileall.py: [] +/usr/local/lib/python3.12/test/test_compiler_assemble.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_compiler_codegen.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_complex.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_configparser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_contains.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_context.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_contextlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_contextlib_async.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_copy.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_copyreg.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_coroutines.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_cprofile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_crashers.py: [] +/usr/local/lib/python3.12/test/test_crypt.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_csv.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_anon.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_bitfields.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_errno.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_find.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_functions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_init.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_internals.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_keeprefs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_libc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_loading.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_macholib.py: [] +/usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_objects.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_pointers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_random_things.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_repr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_structures.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_values.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_win32.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_curses.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_datetime.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dbm.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dbm_dumb.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dbm_gnu.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dbm_ndbm.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_decimal.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_decorators.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_defaultdict.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_deque.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_descr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_descrtut.py: [] +/usr/local/lib/python3.12/test/test_devpoll.py: [] +/usr/local/lib/python3.12/test/test_dict.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dict_version.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dictcomps.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dictviews.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_difflib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dis.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_doctest.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_doctest2.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_docxmlrpc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dtrace.py: [] +/usr/local/lib/python3.12/test/test_dynamic.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_dynamicclassattribute.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_eintr.py: [] +/usr/local/lib/python3.12/test/test_email/test__encoded_words.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_email.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_generator.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_headerregistry.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_inversion.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_message.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_parser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_pickleable.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_policy.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_email/test_utils.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_embed.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ensurepip.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_enum.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_enumerate.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_eof.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_epoll.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_errno.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_except_star.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_exception_group.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_exception_hierarchy.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_exception_variations.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_exceptions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_extcall.py: [] +/usr/local/lib/python3.12/test/test_faulthandler.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fcntl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_file.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_file_eintr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_filecmp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fileinput.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fileio.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fileutils.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_finalization.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_float.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_flufl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fnmatch.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fork1.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_format.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fractions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_frame.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_frozen.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_fstring.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ftplib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_funcattrs.py: [] +/usr/local/lib/python3.12/test/test_functools.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_future_stmt/test_future.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_future_stmt/test_future_flags.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_gc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_gdb/test_backtrace.py: [] +/usr/local/lib/python3.12/test/test_gdb/test_cfunction.py: [] +/usr/local/lib/python3.12/test/test_gdb/test_cfunction_full.py: [] +/usr/local/lib/python3.12/test/test_gdb/test_misc.py: [] +/usr/local/lib/python3.12/test/test_gdb/test_pretty_print.py: [] +/usr/local/lib/python3.12/test/test_generator_stop.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_generators.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_genericalias.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_genericclass.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_genericpath.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_genexps.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_getopt.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_getpass.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_getpath.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_gettext.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_glob.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_global.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_grammar.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_graphlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_grp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_gzip.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_hash.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_hashlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_heapq.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_hmac.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_html.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_htmlparser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_http_cookiejar.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_http_cookies.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_httplib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_httpservers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_idle.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_imaplib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_imghdr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/extension/test_case_sensitivity.py: [] +/usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_helpers.py: [] +/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/resources/test_compatibilty_files.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_contents.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_custom.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_files.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_open.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_path.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_read.py: [] +/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/resources/test_resource.py: [] +/usr/local/lib/python3.12/test/test_importlib/source/test_case_sensitivity.py: [] +/usr/local/lib/python3.12/test/test_importlib/source/test_file_loader.py: [] +/usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/source/test_path_hook.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_abc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_api.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_lazy.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_locks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_main.py: [] +/usr/local/lib/python3.12/test/test_importlib/test_metadata_api.py: [] +/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_spec.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_threaded_import.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_util.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/test_windows.py: [] +/usr/local/lib/python3.12/test/test_importlib/test_zip.py: [] +/usr/local/lib/python3.12/test/test_index.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_inspect/test_inspect.py: [] +/usr/local/lib/python3.12/test/test_int.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_int_literal.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_interpreters.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_io.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ioctl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ipaddress.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_isinstance.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_iter.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_iterlen.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_itertools.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_decode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_default.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_dump.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_enum.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_fail.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_float.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_indent.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_pass1.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_pass2.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_pass3.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_recursion.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_scanstring.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_separators.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_speedups.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_tool.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_json/test_unicode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_keyword.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_keywordonlyarg.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_kqueue.py: [] +/usr/local/lib/python3.12/test/test_largefile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_launcher.py: [] +/usr/local/lib/python3.12/test/test_lib2to3/test_all_fixers.py: [] +/usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_lib2to3/test_parser.py: [] +/usr/local/lib/python3.12/test/test_lib2to3/test_pytree.py: [] +/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_lib2to3/test_util.py: [] +/usr/local/lib/python3.12/test/test_linecache.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_list.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_listcomps.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_lltrace.py: [] +/usr/local/lib/python3.12/test/test_locale.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_logging.py: [] +/usr/local/lib/python3.12/test/test_long.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_longexp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_lzma.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_mailbox.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_mailcap.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_marshal.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_math.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_math_property.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_memoryio.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_memoryview.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_metaclass.py: [] +/usr/local/lib/python3.12/test/test_mimetypes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_minidom.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_mmap.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_modulefinder.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_monitoring.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_msilib.py: [] +/usr/local/lib/python3.12/test/test_multibytecodec.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_named_expressions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_netrc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_nis.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_nntplib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ntpath.py: [] +/usr/local/lib/python3.12/test/test_numeric_tower.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_opcache.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_opcodes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_openpty.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_operator.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_optparse.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ordered_dict.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_os.py: [] +/usr/local/lib/python3.12/test/test_ossaudiodev.py: [] +/usr/local/lib/python3.12/test/test_osx_env.py: [] +/usr/local/lib/python3.12/test/test_pathlib.py: [] +/usr/local/lib/python3.12/test/test_patma.py: [] +/usr/local/lib/python3.12/test/test_pdb.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_peepholer.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_peg_generator/test_c_parser.py: [] +/usr/local/lib/python3.12/test/test_peg_generator/test_first_sets.py: [] +/usr/local/lib/python3.12/test/test_peg_generator/test_grammar_validator.py: [] +/usr/local/lib/python3.12/test/test_peg_generator/test_pegen.py: [] +/usr/local/lib/python3.12/test/test_pep646_syntax.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_perf_profiler.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_perfmaps.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pickle.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_picklebuffer.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pickletools.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pipes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pkg.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pkgutil.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_platform.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_plistlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_poll.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_popen.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_poplib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_positional_only_arg.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_posix.py: [] +/usr/local/lib/python3.12/test/test_posixpath.py: [] +/usr/local/lib/python3.12/test/test_pow.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pprint.py: [] +/usr/local/lib/python3.12/test/test_print.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_profile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_property.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pstats.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pty.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pulldom.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pwd.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_py_compile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pyclbr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_pydoc.py: [] +/usr/local/lib/python3.12/test/test_pyexpat.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_queue.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_quopri.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_raise.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_random.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_range.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_re.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_readline.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_regrtest.py: [] +/usr/local/lib/python3.12/test/test_repl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_reprlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_resource.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_richcmp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_rlcompleter.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_robotparser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_runpy.py: [] +/usr/local/lib/python3.12/test/test_sax.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sched.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_scope.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_script_helper.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_secrets.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_select.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_selectors.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_set.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_setcomps.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_shelve.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_shlex.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_shutil.py: [] +/usr/local/lib/python3.12/test/test_signal.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_site.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_slice.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_smtplib.py: [] +/usr/local/lib/python3.12/test/test_smtpnet.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sndhdr.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_socket.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_socketserver.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sort.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_source_encoding.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_spwd.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_dbapi.py: [] +/usr/local/lib/python3.12/test/test_sqlite3/test_dump.py: [] +/usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_hooks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ssl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_startfile.py: [] +/usr/local/lib/python3.12/test/test_stat.py: [] +/usr/local/lib/python3.12/test/test_statistics.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_strftime.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_string.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_string_literals.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_stringprep.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_strptime.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_strtod.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_struct.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_structseq.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_subclassinit.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_subprocess.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sunau.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sundry.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_super.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_support.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_symtable.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_syntax.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sys.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sys_setprofile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sys_settrace.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_sysconfig.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_syslog.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tabnanny.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tarfile.py: [] +/usr/local/lib/python3.12/test/test_tcl.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_telnetlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tempfile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_termios.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_textwrap.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_thread.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_threadedtempfile.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_threading.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_threading_local.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_threadsignals.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_time.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_timeit.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_timeout.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tix.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_colorchooser.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_font.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_geometry_managers.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_images.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_loadtk.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_messagebox.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_misc.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_simpledialog.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_text.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_variables.py: [] +/usr/local/lib/python3.12/test/test_tkinter/test_widgets.py: [] +/usr/local/lib/python3.12/test/test_tokenize.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tomllib/test_data.py: [] +/usr/local/lib/python3.12/test/test_tomllib/test_error.py: [] +/usr/local/lib/python3.12/test/test_tomllib/test_misc.py: [] +/usr/local/lib/python3.12/test/test_tools/test_freeze.py: [] +/usr/local/lib/python3.12/test/test_tools/test_i18n.py: [] +/usr/local/lib/python3.12/test/test_tools/test_reindent.py: [] +/usr/local/lib/python3.12/test/test_tools/test_sundry.py: [] +/usr/local/lib/python3.12/test/test_trace.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_traceback.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tracemalloc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ttk/test_extensions.py: [] +/usr/local/lib/python3.12/test/test_ttk/test_style.py: [] +/usr/local/lib/python3.12/test/test_ttk/test_widgets.py: [] +/usr/local/lib/python3.12/test/test_ttk_textonly.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tty.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_tuple.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_turtle.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_type_aliases.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_type_annotations.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_type_cache.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_type_comments.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_type_params.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_typechecks.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_types.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_typing.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_ucn.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unary.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unicode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unicode_file.py: [] +/usr/local/lib/python3.12/test/test_unicode_file_functions.py: [] +/usr/local/lib/python3.12/test/test_unicode_identifiers.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unicodedata.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_assertions.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_async_case.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_break.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_case.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_discovery.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_loader.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_program.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_result.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_runner.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_setups.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_skipping.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unittest/test_suite.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_univnewlines.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_unpack.py: [] +/usr/local/lib/python3.12/test/test_unpack_ex.py: [] +/usr/local/lib/python3.12/test/test_unparse.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllib2.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllib2_localnet.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllib2net.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllib_response.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urllibnet.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_urlparse.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_userdict.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_userlist.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_userstring.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_utf8_mode.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_utf8source.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_uu.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_uuid.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_venv.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_wait3.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_wait4.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_wave.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_weakref.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_weakset.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_webbrowser.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_winconsoleio.py: [] +/usr/local/lib/python3.12/test/test_winreg.py: [] +/usr/local/lib/python3.12/test/test_winsound.py: [] +/usr/local/lib/python3.12/test/test_with.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_wmi.py: [] +/usr/local/lib/python3.12/test/test_wsgiref.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xdrlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xml_etree.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xml_etree_c.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xmlrpc.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xmlrpc_net.py: [] +/usr/local/lib/python3.12/test/test_xxlimited.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_xxtestfuzz.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_yield_from.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zipapp.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zipfile/_path/test_complexity.py: [] +/usr/local/lib/python3.12/test/test_zipfile/_path/test_path.py: [] +/usr/local/lib/python3.12/test/test_zipfile/test_core.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zipfile64.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zipimport.py: [] +/usr/local/lib/python3.12/test/test_zipimport_support.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zlib.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true +/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: +- options: {} +- options: + rename_globals: true +- options: + remove_literal_statements: true +- options: + remove_literal_statements: true + rename_globals: true From 8492be88ff2a728ef70767b71e8fe468e0ab5568 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 13 Jan 2024 11:40:47 +0000 Subject: [PATCH 29/53] Allow backslashes in pep701 f-strings --- src/python_minifier/__init__.py | 1 + src/python_minifier/f_string.py | 6 +- xtest/manifests/python3.12_test_manifest.yaml | 5076 ----------------- 3 files changed, 5 insertions(+), 5078 deletions(-) diff --git a/src/python_minifier/__init__.py b/src/python_minifier/__init__.py index 9863b791..79753a73 100644 --- a/src/python_minifier/__init__.py +++ b/src/python_minifier/__init__.py @@ -228,6 +228,7 @@ def unparse(module): try: compare_ast(module, minified_module) except CompareError as compare_error: + print(printer.code) raise UnstableMinification(compare_error, '', printer.code) return printer.code diff --git a/src/python_minifier/f_string.py b/src/python_minifier/f_string.py index ae65a808..332a2546 100644 --- a/src/python_minifier/f_string.py +++ b/src/python_minifier/f_string.py @@ -290,6 +290,8 @@ def _literals(self): l += '\\n' elif c == '\r': l += '\\r' + elif c == '\\': + l += '\\\\' else: l += c @@ -301,8 +303,8 @@ def __str__(self): if self._s == '': return str(min(self.allowed_quotes, key=len)) * 2 - if '\0' in self._s or '\\' in self._s: - raise ValueError('Impossible to represent a %r character in f-string expression part') + if '\0' in self._s or ('\\' in self._s and not self.pep701): + raise ValueError('Impossible to represent a character in f-string expression part') if not self.pep701 and ('\n' in self._s or '\r' in self._s): if '"""' not in self.allowed_quotes and "'''" not in self.allowed_quotes: diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index 1e216608..e69de29b 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -1,5076 +0,0 @@ -/usr/local/lib/python3.12/test/leakers/test_ctypes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/leakers/test_selftype.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test___all__.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test__locale.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test__opcode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test__osx_support.py: [] -/usr/local/lib/python3.12/test/test__xxinterpchannels.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test__xxsubinterpreters.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_abc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_abstract_numbers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_aifc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_argparse.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_array.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asdl_parser.py: [] -/usr/local/lib/python3.12/test/test_ast.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncgen.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_base_events.py: [] -/usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_context.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_eager_task_factory.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_events.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_futures.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_runners.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_server.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_streams.py: [] -/usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_tasks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_transports.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_unix_events.py: [] -/usr/local/lib/python3.12/test/test_asyncio/test_waitfor.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_asyncio/test_windows_events.py: [] -/usr/local/lib/python3.12/test/test_asyncio/test_windows_utils.py: [] -/usr/local/lib/python3.12/test/test_atexit.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_audioop.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_audit.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_augassign.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_base64.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_baseexception.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bdb.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bigaddrspace.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bigmem.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_binascii.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_binop.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bisect.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bool.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_buffer.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bufio.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_builtin.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bytes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_bz2.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_c_locale_coercion.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_calendar.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_call.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_abstract.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_bytearray.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_bytes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_codecs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_complex.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_dict.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_exceptions.py: [] -/usr/local/lib/python3.12/test/test_capi/test_float.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_getargs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_immortal.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_list.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_long.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_mem.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_misc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_set.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_structmembers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_sys.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_unicode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_capi/test_watchers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cgi.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cgitb.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_charmapcodec.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_class.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_clinic.py: [] -/usr/local/lib/python3.12/test/test_cmath.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cmd.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cmd_line.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cmd_line_script.py: [] -/usr/local/lib/python3.12/test/test_code.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_code_module.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codeccallbacks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_cn.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_hk.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_jp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_kr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecencodings_tw.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecmaps_cn.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecmaps_hk.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecmaps_jp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecmaps_kr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecmaps_tw.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codecs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_codeop.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_collections.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_colorsys.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_compare.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_compile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_compileall.py: [] -/usr/local/lib/python3.12/test/test_compiler_assemble.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_compiler_codegen.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_complex.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_configparser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_contains.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_context.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_contextlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_contextlib_async.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_copy.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_copyreg.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_coroutines.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_cprofile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_crashers.py: [] -/usr/local/lib/python3.12/test/test_crypt.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_csv.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_anon.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_bitfields.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_errno.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_find.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_functions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_init.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_internals.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_keeprefs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_libc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_loading.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_macholib.py: [] -/usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_objects.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_pointers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_random_things.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_repr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_structures.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_values.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_win32.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_curses.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_datetime.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dbm.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dbm_dumb.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dbm_gnu.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dbm_ndbm.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_decimal.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_decorators.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_defaultdict.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_deque.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_descr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_descrtut.py: [] -/usr/local/lib/python3.12/test/test_devpoll.py: [] -/usr/local/lib/python3.12/test/test_dict.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dict_version.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dictcomps.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dictviews.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_difflib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dis.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_doctest.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_doctest2.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_docxmlrpc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dtrace.py: [] -/usr/local/lib/python3.12/test/test_dynamic.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_dynamicclassattribute.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_eintr.py: [] -/usr/local/lib/python3.12/test/test_email/test__encoded_words.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_email.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_generator.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_headerregistry.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_inversion.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_message.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_parser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_pickleable.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_policy.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_email/test_utils.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_embed.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ensurepip.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_enum.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_enumerate.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_eof.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_epoll.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_errno.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_except_star.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_exception_group.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_exception_hierarchy.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_exception_variations.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_exceptions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_extcall.py: [] -/usr/local/lib/python3.12/test/test_faulthandler.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fcntl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_file.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_file_eintr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_filecmp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fileinput.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fileio.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fileutils.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_finalization.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_float.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_flufl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fnmatch.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fork1.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_format.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fractions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_frame.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_frozen.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_fstring.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ftplib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_funcattrs.py: [] -/usr/local/lib/python3.12/test/test_functools.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_future_stmt/test_future.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_future_stmt/test_future_flags.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_gc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_gdb/test_backtrace.py: [] -/usr/local/lib/python3.12/test/test_gdb/test_cfunction.py: [] -/usr/local/lib/python3.12/test/test_gdb/test_cfunction_full.py: [] -/usr/local/lib/python3.12/test/test_gdb/test_misc.py: [] -/usr/local/lib/python3.12/test/test_gdb/test_pretty_print.py: [] -/usr/local/lib/python3.12/test/test_generator_stop.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_generators.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_genericalias.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_genericclass.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_genericpath.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_genexps.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_getopt.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_getpass.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_getpath.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_gettext.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_glob.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_global.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_grammar.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_graphlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_grp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_gzip.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_hash.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_hashlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_heapq.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_hmac.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_html.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_htmlparser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_http_cookiejar.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_http_cookies.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_httplib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_httpservers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_idle.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_imaplib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_imghdr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/extension/test_case_sensitivity.py: [] -/usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_helpers.py: [] -/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/resources/test_compatibilty_files.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_contents.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_custom.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_files.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_open.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_path.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_read.py: [] -/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/resources/test_resource.py: [] -/usr/local/lib/python3.12/test/test_importlib/source/test_case_sensitivity.py: [] -/usr/local/lib/python3.12/test/test_importlib/source/test_file_loader.py: [] -/usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/source/test_path_hook.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_abc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_api.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_lazy.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_locks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_main.py: [] -/usr/local/lib/python3.12/test/test_importlib/test_metadata_api.py: [] -/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_spec.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_threaded_import.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_util.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_importlib/test_windows.py: [] -/usr/local/lib/python3.12/test/test_importlib/test_zip.py: [] -/usr/local/lib/python3.12/test/test_index.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_inspect/test_inspect.py: [] -/usr/local/lib/python3.12/test/test_int.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_int_literal.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_interpreters.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_io.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ioctl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ipaddress.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_isinstance.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_iter.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_iterlen.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_itertools.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_decode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_default.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_dump.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_enum.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_fail.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_float.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_indent.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_pass1.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_pass2.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_pass3.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_recursion.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_scanstring.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_separators.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_speedups.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_tool.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_json/test_unicode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_keyword.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_keywordonlyarg.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_kqueue.py: [] -/usr/local/lib/python3.12/test/test_largefile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_launcher.py: [] -/usr/local/lib/python3.12/test/test_lib2to3/test_all_fixers.py: [] -/usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_lib2to3/test_parser.py: [] -/usr/local/lib/python3.12/test/test_lib2to3/test_pytree.py: [] -/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_lib2to3/test_util.py: [] -/usr/local/lib/python3.12/test/test_linecache.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_list.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_listcomps.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_lltrace.py: [] -/usr/local/lib/python3.12/test/test_locale.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_logging.py: [] -/usr/local/lib/python3.12/test/test_long.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_longexp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_lzma.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_mailbox.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_mailcap.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_marshal.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_math.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_math_property.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_memoryio.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_memoryview.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_metaclass.py: [] -/usr/local/lib/python3.12/test/test_mimetypes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_minidom.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_mmap.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_modulefinder.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_monitoring.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_msilib.py: [] -/usr/local/lib/python3.12/test/test_multibytecodec.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_named_expressions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_netrc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_nis.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_nntplib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ntpath.py: [] -/usr/local/lib/python3.12/test/test_numeric_tower.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_opcache.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_opcodes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_openpty.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_operator.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_optparse.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ordered_dict.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_os.py: [] -/usr/local/lib/python3.12/test/test_ossaudiodev.py: [] -/usr/local/lib/python3.12/test/test_osx_env.py: [] -/usr/local/lib/python3.12/test/test_pathlib.py: [] -/usr/local/lib/python3.12/test/test_patma.py: [] -/usr/local/lib/python3.12/test/test_pdb.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_peepholer.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_peg_generator/test_c_parser.py: [] -/usr/local/lib/python3.12/test/test_peg_generator/test_first_sets.py: [] -/usr/local/lib/python3.12/test/test_peg_generator/test_grammar_validator.py: [] -/usr/local/lib/python3.12/test/test_peg_generator/test_pegen.py: [] -/usr/local/lib/python3.12/test/test_pep646_syntax.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_perf_profiler.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_perfmaps.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pickle.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_picklebuffer.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pickletools.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pipes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pkg.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pkgutil.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_platform.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_plistlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_poll.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_popen.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_poplib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_positional_only_arg.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_posix.py: [] -/usr/local/lib/python3.12/test/test_posixpath.py: [] -/usr/local/lib/python3.12/test/test_pow.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pprint.py: [] -/usr/local/lib/python3.12/test/test_print.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_profile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_property.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pstats.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pty.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pulldom.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pwd.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_py_compile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pyclbr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_pydoc.py: [] -/usr/local/lib/python3.12/test/test_pyexpat.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_queue.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_quopri.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_raise.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_random.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_range.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_re.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_readline.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_regrtest.py: [] -/usr/local/lib/python3.12/test/test_repl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_reprlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_resource.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_richcmp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_rlcompleter.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_robotparser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_runpy.py: [] -/usr/local/lib/python3.12/test/test_sax.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sched.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_scope.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_script_helper.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_secrets.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_select.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_selectors.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_set.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_setcomps.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_shelve.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_shlex.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_shutil.py: [] -/usr/local/lib/python3.12/test/test_signal.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_site.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_slice.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_smtplib.py: [] -/usr/local/lib/python3.12/test/test_smtpnet.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sndhdr.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_socket.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_socketserver.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sort.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_source_encoding.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_spwd.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_dbapi.py: [] -/usr/local/lib/python3.12/test/test_sqlite3/test_dump.py: [] -/usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_hooks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ssl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_startfile.py: [] -/usr/local/lib/python3.12/test/test_stat.py: [] -/usr/local/lib/python3.12/test/test_statistics.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_strftime.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_string.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_string_literals.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_stringprep.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_strptime.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_strtod.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_struct.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_structseq.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_subclassinit.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_subprocess.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sunau.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sundry.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_super.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_support.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_symtable.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_syntax.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sys.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sys_setprofile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sys_settrace.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_sysconfig.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_syslog.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tabnanny.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tarfile.py: [] -/usr/local/lib/python3.12/test/test_tcl.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_telnetlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tempfile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_termios.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_textwrap.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_thread.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_threadedtempfile.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_threading.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_threading_local.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_threadsignals.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_time.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_timeit.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_timeout.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tix.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_colorchooser.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_font.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_geometry_managers.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_images.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_loadtk.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_messagebox.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_misc.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_simpledialog.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_text.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_variables.py: [] -/usr/local/lib/python3.12/test/test_tkinter/test_widgets.py: [] -/usr/local/lib/python3.12/test/test_tokenize.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tomllib/test_data.py: [] -/usr/local/lib/python3.12/test/test_tomllib/test_error.py: [] -/usr/local/lib/python3.12/test/test_tomllib/test_misc.py: [] -/usr/local/lib/python3.12/test/test_tools/test_freeze.py: [] -/usr/local/lib/python3.12/test/test_tools/test_i18n.py: [] -/usr/local/lib/python3.12/test/test_tools/test_reindent.py: [] -/usr/local/lib/python3.12/test/test_tools/test_sundry.py: [] -/usr/local/lib/python3.12/test/test_trace.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_traceback.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tracemalloc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ttk/test_extensions.py: [] -/usr/local/lib/python3.12/test/test_ttk/test_style.py: [] -/usr/local/lib/python3.12/test/test_ttk/test_widgets.py: [] -/usr/local/lib/python3.12/test/test_ttk_textonly.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tty.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_tuple.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_turtle.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_type_aliases.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_type_annotations.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_type_cache.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_type_comments.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_type_params.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_typechecks.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_types.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_typing.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_ucn.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unary.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unicode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unicode_file.py: [] -/usr/local/lib/python3.12/test/test_unicode_file_functions.py: [] -/usr/local/lib/python3.12/test/test_unicode_identifiers.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unicodedata.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_assertions.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_async_case.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_break.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_case.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_discovery.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_loader.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_program.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_result.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_runner.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_setups.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_skipping.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unittest/test_suite.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_univnewlines.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_unpack.py: [] -/usr/local/lib/python3.12/test/test_unpack_ex.py: [] -/usr/local/lib/python3.12/test/test_unparse.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllib2.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllib2_localnet.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllib2net.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllib_response.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urllibnet.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_urlparse.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_userdict.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_userlist.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_userstring.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_utf8_mode.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_utf8source.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_uu.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_uuid.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_venv.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_wait3.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_wait4.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_wave.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_weakref.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_weakset.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_webbrowser.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_winconsoleio.py: [] -/usr/local/lib/python3.12/test/test_winreg.py: [] -/usr/local/lib/python3.12/test/test_winsound.py: [] -/usr/local/lib/python3.12/test/test_with.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_wmi.py: [] -/usr/local/lib/python3.12/test/test_wsgiref.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xdrlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xml_etree.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xml_etree_c.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xmlrpc.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xmlrpc_net.py: [] -/usr/local/lib/python3.12/test/test_xxlimited.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_xxtestfuzz.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_yield_from.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zipapp.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zipfile/_path/test_complexity.py: [] -/usr/local/lib/python3.12/test/test_zipfile/_path/test_path.py: [] -/usr/local/lib/python3.12/test/test_zipfile/test_core.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zipfile64.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zipimport.py: [] -/usr/local/lib/python3.12/test/test_zipimport_support.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zlib.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true -/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true From 6e00ae0889449374ec7d7d7f5819b03943bf8cd9 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 16:58:50 +0100 Subject: [PATCH 30/53] Don't hoist literals in __slots__ --- src/python_minifier/rename/rename_literals.py | 17 ++++++++++++++++- test/test_hoist_literals.py | 17 +++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/src/python_minifier/rename/rename_literals.py b/src/python_minifier/rename/rename_literals.py index f881efcd..b5e2cf5d 100644 --- a/src/python_minifier/rename/rename_literals.py +++ b/src/python_minifier/rename/rename_literals.py @@ -113,8 +113,9 @@ class HoistLiterals(NodeVisitor): Hoist literal strings to module level variables """ - def __call__(self, module): + def __call__(self, module, ignore_slots=True): self.module = module + self._ignore_slots = ignore_slots self._hoisted = {} self.visit(module) self.place_bindings() @@ -230,5 +231,19 @@ def visit_match_case(self, node): for n in node.body: self.visit(n) + def visit_Assign(self, node): + if not self._ignore_slots: + return self.generic_visit(node) + + if not is_ast_node(node.namespace, ast.ClassDef): + return self.generic_visit(node) + + for target in node.targets: + if is_ast_node(target, ast.Name) and target.id == '__slots__': + # This is a __slots__ assignment, don't hoist the literals + return + + return self.generic_visit(node) + def rename_literals(module): HoistLiterals()(module) diff --git a/test/test_hoist_literals.py b/test/test_hoist_literals.py index 7a7be678..445f347f 100644 --- a/test/test_hoist_literals.py +++ b/test/test_hoist_literals.py @@ -491,3 +491,20 @@ def test_hoisted_types_py2(): expected_ast = ast.parse(expected) actual_ast = hoist(source) compare_ast(expected_ast, actual_ast) + +def test_no_hoist_slots(): + source = ''' +class SlotsA(object): + __slots__ = ['aaaaa', 'bbbbb'] +class SlotsB(object): + __slots__ = 'aaaaa', 'bbbbb' +''' + expected = ''' +class A: + __slots__=['aaaaa', 'bbbbb'] +class B: + __slots__='aaaaa', 'bbbbb' +''' + expected_ast = ast.parse(expected) + actual_ast = hoist(source) + compare_ast(expected_ast, actual_ast) \ No newline at end of file From 3ed7c919f1d3759447c7b826ff3c612ee256e3c5 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 16:59:11 +0100 Subject: [PATCH 31/53] Add python3.12 xtest manifest --- xtest/manifests/python3.12_test_manifest.yaml | 7285 +++++++++++++++++ 1 file changed, 7285 insertions(+) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index e69de29b..aba2c3c4 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -0,0 +1,7285 @@ +/usr/local/lib/python3.12/test/leakers/test_ctypes.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/leakers/test_selftype.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test___all__.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test__locale.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test__opcode.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test__xxinterpchannels.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test__xxsubinterpreters.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_abc.py: +- options: + preserve_locals: + - A + - B + - C + - D + status: passing +- options: + preserve_locals: + - A + - B + - C + - D + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - A + - B + - C + - D + rename_globals: true + status: passing +- options: + preserve_locals: + - A + - B + - C + - D + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_abstract_numbers.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_aifc.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_argparse.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_array.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ast.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncgen.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_context.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_eager_task_factory.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: +- options: + preserve_locals: future + status: passing +- options: + preserve_locals: future + remove_literal_statements: true + status: passing +- options: + preserve_locals: future + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: future + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: +- options: + preserve_locals: + - foo + - spam + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - foo + - spam + status: passing +- options: + preserve_locals: + - foo + - spam + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - foo + - spam + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_runners.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_server.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - TestSubprocessTransport + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + preserve_globals: + - TestSubprocessTransport + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_transports.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_waitfor.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_atexit.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_audioop.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_audit.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_augassign.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_base64.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_baseexception.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_bigaddrspace.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_bigmem.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_binascii.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_binop.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_bisect.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_bool.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_buffer.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_bufio.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_builtin.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_bytes.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_bz2.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_c_locale_coercion.py: +- options: + preserve_globals: + - setUpModule + - tearDownModule + rename_globals: true + status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - setUpModule + - tearDownModule + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_calendar.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_call.py: +- options: + convert_posargs_to_args: false + preserve_globals: + - A + preserve_locals: + - arg + rename_globals: true + status: passing +- options: + convert_posargs_to_args: false + preserve_locals: + - arg + remove_literal_statements: true + status: passing +- options: + convert_posargs_to_args: false + preserve_locals: + - arg + status: passing +- options: + convert_posargs_to_args: false + preserve_globals: + - A + preserve_locals: + - arg + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_abstract.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_bytearray.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_bytes.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_codecs.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_complex.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_dict.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_float.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_getargs.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_immortal.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_list.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_long.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_mem.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_set.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_structmembers.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_sys.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_capi/test_unicode.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_capi/test_watchers.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_cgi.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_cgitb.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_charmapcodec.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_class.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_cmath.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_cmd.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_cmd_line.py: +- options: {} + status: passings +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_code_module.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codeccallbacks.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_cn.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_hk.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_jp.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_kr.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_codecencodings_tw.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_cn.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_hk.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_jp.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_kr.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_tw.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_codecs.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_codeop.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_collections.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_colorsys.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_compare.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_compiler_assemble.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_compiler_codegen.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_complex.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_configparser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_contains.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_context.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_copy.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_copyreg.py: +- options: + hoist_literals: false + preserve_globals: + - WithPrivate + - _WithLeadingUnderscoreAndPrivate + - TypeError + - type + - unittest + rename_globals: true + status: passing +- options: + hoist_literals: false + status: passing +- options: + hoist_literals: false + preserve_globals: + - WithPrivate + - _WithLeadingUnderscoreAndPrivate + - TypeError + - type + - unittest + remove_literal_statements: true + rename_globals: true + status: passing +- options: + hoist_literals: false + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_cprofile.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_crypt.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_csv.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_anon.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_bitfields.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_errno.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_find.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_functions.py: +- options: + remove_literal_statements: true + remove_object_base: false + status: passing +- options: + remove_object_base: false + rename_globals: true + status: passing +- options: + remove_literal_statements: true + remove_object_base: false + rename_globals: true + status: passing +- options: + remove_object_base: false + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_init.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_internals.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_keeprefs.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_libc.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_loading.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_objects.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pointers.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_random_things.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_repr.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_structures.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_values.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_win32.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_curses.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_datetime.py: +- options: {} + status: passing +- options: + preserve_globals: + - load_tests + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - load_tests + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_dbm.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_dbm_dumb.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_dbm_gnu.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_dbm_ndbm.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_decimal.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_decorators.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_defaultdict.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_deque.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_descr.py: +- options: + hoist_literals: false + preserve_locals: + - junk + - self + - A + - B + - C + - D + - E + - F + - G + - d + remove_literal_statements: true + status: passing +- options: + hoist_literals: false + preserve_locals: + - junk + - self + - A + - B + - C + - D + - E + - F + - G + - d + rename_globals: true + status: passing +- options: + hoist_literals: false + preserve_locals: + - junk + - self + - A + - B + - C + - D + - E + - F + - G + - d + status: passing +- options: + hoist_literals: false + preserve_locals: + - junk + - self + - A + - B + - C + - D + - E + - F + - G + - d + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_dict_version.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_dictcomps.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_dictviews.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_difflib.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_doctest2.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_dynamic.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_dynamicclassattribute.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test__encoded_words.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_email.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_generator.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_headerregistry.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_inversion.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_message.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_parser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_pickleable.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_policy.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_email/test_utils.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_embed.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ensurepip.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_enum.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_enumerate.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_eof.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_epoll.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_errno.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_except_star.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_exception_hierarchy.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_exception_variations.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_faulthandler.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_fcntl.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_file.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_file_eintr.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_filecmp.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_fileinput.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_fileio.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_fileutils.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_finalization.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_float.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_flufl.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_fnmatch.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_fork1.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_format.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_fractions.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_frozen.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_fstring.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ftplib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_functools.py: +- options: + remove_annotations: false + rename_globals: true + status: passing +- options: + remove_annotations: false + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_annotations: false + status: passing +- options: + remove_annotations: false + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_flags.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_gc.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_generator_stop.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_generators.py: +- options: + preserve_globals: + - GeneratorTest + - conjoin + - Queens + - Knights + - func + - a + - b + - support + preserve_locals: + - conjoin + - Queens + - Knights + - f + - g + - call_send + - call_throw + - func + - a + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - conjoin + - Queens + - Knights + - f + - g + - call_send + - call_throw + - func + - a + status: passing +- options: + preserve_globals: + - GeneratorTest + - conjoin + - Queens + - Knights + - func + - a + - b + - support + preserve_locals: + - conjoin + - Queens + - Knights + - f + - g + - call_send + - call_throw + - func + - a + rename_globals: true + status: passing +- options: + preserve_locals: + - conjoin + - Queens + - Knights + - f + - g + - call_send + - call_throw + - func + - a + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_genericalias.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_genericclass.py: +- options: + preserve_locals: + - D + - Meta + - C + - C_is_none + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - D + - Meta + - C + - C_is_none + status: passing +- options: + preserve_locals: + - D + - Meta + - C + - C_is_none + rename_globals: true + status: passing +- options: + preserve_locals: + - D + - Meta + - C + - C_is_none + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_genericpath.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_genexps.py: +- options: + preserve_globals: + - load_tests + rename_globals: true + status: passing +- options: {} + status: passing +- options: + preserve_globals: + - load_tests + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_getopt.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_getpass.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_getpath.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_glob.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_global.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_grammar.py: +- options: + preserve_locals: + - f + - x + - y + - b + - c + - e + - g + - k + - j + - h + - l + - k + - Spam + remove_annotations: false + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - f + - x + - y + - b + - c + - e + - g + - k + - j + - h + - l + - k + - Spam + remove_annotations: false + status: passing +- options: + preserve_locals: + - f + - x + - y + - b + - c + - e + - g + - k + - j + - h + - l + - k + - Spam + remove_annotations: false + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - f + - x + - y + - b + - c + - e + - g + - k + - j + - h + - l + - k + - Spam + remove_annotations: false + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_graphlib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_grp.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_gzip.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_hash.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_hashlib.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_heapq.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_hmac.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_html.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_htmlparser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_http_cookiejar.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_http_cookies.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_httplib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_httpservers.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_idle.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_imaplib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_imghdr.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/source/test_path_hook.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_abc.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_api.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_lazy.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_locks.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_spec.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_threaded_import.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_importlib/test_util.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_index.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_int.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_int_literal.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_interpreters.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_io.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_ioctl.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ipaddress.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_isinstance.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_iter.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_iterlen.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_itertools.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_decode.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_default.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_dump.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_enum.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_fail.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_float.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_indent.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_pass1.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_pass2.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_pass3.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_recursion.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_scanstring.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_separators.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_speedups.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_tool.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_json/test_unicode.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_keyword.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_keywordonlyarg.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_largefile.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_linecache.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_list.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_listcomps.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_locale.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_long.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_longexp.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_lzma.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_mailbox.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_mailcap.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_marshal.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_math.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_math_property.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_memoryio.py: +- options: + preserve_locals: + - PickleTestMemIO + rename_globals: true + status: passing +- options: + preserve_locals: + - PickleTestMemIO + status: passing +- options: + preserve_locals: + - PickleTestMemIO + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - PickleTestMemIO + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_memoryview.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_mimetypes.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_minidom.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_mmap.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_modulefinder.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_monitoring.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_multibytecodec.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_named_expressions.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_netrc.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_nis.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_nntplib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_numeric_tower.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_opcache.py: +- options: + preserve_locals: Class + status: passing +- options: + preserve_locals: Class + remove_literal_statements: true + status: passing +- options: + preserve_locals: Class + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: Class + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_opcodes.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_openpty.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_operator.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_optparse.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ordered_dict.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_pep646_syntax.py: +- options: + preserve_globals: + - load_tests + rename_globals: true + status: passing +- options: {} + status: passing +- options: + preserve_globals: + - load_tests + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_perf_profiler.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_perfmaps.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_pickle.py: +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_picklebuffer.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_pickletools.py: +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_pipes.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_pkg.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_pkgutil.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_platform.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_plistlib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_poll.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_popen.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_poplib.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_positional_only_arg.py: +- options: + convert_posargs_to_args: false + preserve_locals: + - something + - a + - x + - b + - f + - g + remove_annotations: false + status: passing +- options: + convert_posargs_to_args: false + preserve_locals: + - something + - a + - x + - b + - f + - g + remove_annotations: false + remove_literal_statements: true + status: passing +- options: + convert_posargs_to_args: false + preserve_globals: + - global_pos_only_f + - global_pos_only_and_normal + - global_pos_only_defaults + preserve_locals: + - something + - a + - x + - b + - f + - g + remove_annotations: false + remove_literal_statements: true + rename_globals: true + status: passing +- options: + convert_posargs_to_args: false + preserve_globals: + - global_pos_only_f + - global_pos_only_and_normal + - global_pos_only_defaults + preserve_locals: + - something + - a + - x + - b + - f + - g + remove_annotations: false + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_pow.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_print.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_profile.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_property.py: +- options: + preserve_globals: + - PropertyUnreachableAttributeNoName + - PropertyUnreachableAttributeWithName + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - PropertyUnreachableAttributeNoName + - PropertyUnreachableAttributeWithName + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_pstats.py: +- options: + preserve_locals: + - pass1 + - pass2 + - pass3 + rename_globals: true + status: passing +- options: + preserve_locals: + - pass1 + - pass2 + - pass3 + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - pass1 + - pass2 + - pass3 + status: passing +- options: + preserve_locals: + - pass1 + - pass2 + - pass3 + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_pty.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_pulldom.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_pwd.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_py_compile.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_pyclbr.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_pyexpat.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_queue.py: +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - import_helper + - threading + - threading_helper + - unittest + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_globals: + - import_helper + - threading + - threading_helper + - unittest + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_quopri.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_raise.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_random.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_range.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_re.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_readline.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_repl.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_reprlib.py: +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - ClassWithFailingRepr + - ReprTests + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_globals: + - ClassWithFailingRepr + - ReprTests + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_resource.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_richcmp.py: +- options: + preserve_locals: + - Spam + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - Spam + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - Spam + rename_globals: true + status: passing +- options: + preserve_locals: + - Spam + status: passing +/usr/local/lib/python3.12/test/test_rlcompleter.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_robotparser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sax.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_sched.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_scope.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_script_helper.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_secrets.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_select.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_selectors.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_set.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_setcomps.py: +- options: + preserve_globals: + - doctests + - load_tests + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - doctests + - load_tests + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_shelve.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_shlex.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_signal.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_site.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_slice.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_smtpnet.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_sndhdr.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_socket.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_socketserver.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_sort.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_source_encoding.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_spwd.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_hooks.py: +- options: + preserve_locals: + - bad_progress + status: passing +- options: + preserve_locals: + - bad_progress + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - bad_progress + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - bad_progress + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ssl.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_statistics.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_strftime.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_string.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_string_literals.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_stringprep.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_strptime.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_strtod.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_struct.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_structseq.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_subclassinit.py: +- options: + preserve_locals: + - MyClass + - NotGoingToWork + - Descriptor + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - MyClass + - NotGoingToWork + - Descriptor + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - MyClass + - NotGoingToWork + - Descriptor + rename_globals: true + status: passing +- options: + preserve_locals: + - MyClass + - NotGoingToWork + - Descriptor + status: passing +/usr/local/lib/python3.12/test/test_subprocess.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sunau.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_sundry.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_super.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_support.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_symtable.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_syntax.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sys_setprofile.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_sysconfig.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_syslog.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tabnanny.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tcl.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_telnetlib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tempfile.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_termios.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_textwrap.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_thread.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_threadedtempfile.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_threading_local.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_threadsignals.py: +- options: {} + status: passing +- options: + preserve_globals: + - setUpModule + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - setUpModule + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_time.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_timeit.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_timeout.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tokenize.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_ttk_textonly.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tty.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_tuple.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_turtle.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_type_aliases.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_type_annotations.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_type_cache.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_type_comments.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_type_params.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_typechecks.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_types.py: +- options: + remove_annotations: false + remove_literal_statements: true + status: passing +- options: + remove_annotations: false + rename_globals: true + status: passing +- options: + remove_annotations: false + remove_literal_statements: true + rename_globals: true + status: passing +- options: + remove_annotations: false + status: passing +/usr/local/lib/python3.12/test/test_ucn.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unary.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unicode.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_unicode_identifiers.py: +- options: + preserve_locals: + - Unicode + rename_globals: true + status: passing +- options: + preserve_locals: + - Unicode + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - Unicode + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - Unicode + status: passing +/usr/local/lib/python3.12/test/test_unicodedata.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_assertions.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_async_case.py: +- options: + preserve_globals: + - tearDownModule + - MyException + rename_globals: true + status: passing +- options: + preserve_globals: + - tearDownModule + - MyException + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_break.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_discovery.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_loader.py: +- options: + preserve_locals: + - MyTest + - MyTestCase + status: passing +- options: + preserve_locals: + - MyTest + - MyTestCase + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - MyTest + - MyTestCase + rename_globals: true + status: passing +- options: + preserve_locals: + - MyTest + - MyTestCase + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_program.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_result.py: +- options: {} + status: passing +- options: + preserve_globals: + - Test_TextTestResult + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_runner.py: +- options: + preserve_globals: + - CustomError + preserve_locals: + - cleanup1 + - cleanup2 + - CleanUpExc + - exc2 + - foo + - bar + rename_globals: true + status: passing +- options: + preserve_locals: + - cleanup1 + - cleanup2 + - CleanUpExc + - exc2 + - foo + - bar + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - CustomError + preserve_locals: + - cleanup1 + - cleanup2 + - CleanUpExc + - exc2 + - foo + - bar + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - cleanup1 + - cleanup2 + - CleanUpExc + - exc2 + - foo + - bar + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_setups.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_skipping.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_suite.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_univnewlines.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_unparse.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_urllib2.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_urllib2_localnet.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_urllib2net.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_urllib_response.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_urllibnet.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_urlparse.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_userdict.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_userlist.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_userstring.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_utf8_mode.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_utf8source.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_uu.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_uuid.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_venv.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_wait3.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_wait4.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_wave.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_weakref.py: +- options: + preserve_globals: + - FinalizeTestCase + preserve_locals: + - MyConfig + rename_globals: true + status: passing +- options: + preserve_locals: + - MyConfig + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - FinalizeTestCase + preserve_locals: + - MyConfig + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - MyConfig + status: passing +/usr/local/lib/python3.12/test/test_weakset.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_webbrowser.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_with.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_wsgiref.py: +- options: + preserve_locals: + - CustomException + rename_globals: true + status: passing +- options: + preserve_locals: + - CustomException + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - CustomException + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - CustomException + status: passing +/usr/local/lib/python3.12/test/test_xdrlib.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_xml_etree.py: +- options: + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - setUpModule + rename_globals: true + status: passing +- options: {} + status: passing +- options: + preserve_globals: + - setUpModule + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_xml_etree_c.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_xxlimited.py: +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_xxtestfuzz.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_yield_from.py: +- options: + preserve_locals: + - spam + - eggs + remove_literal_statements: true + rename_globals: true + status: passing +- options: + preserve_locals: + - spam + - eggs + rename_globals: true + status: passing +- options: + preserve_locals: + - spam + - eggs + remove_literal_statements: true + status: passing +- options: + preserve_locals: + - spam + - eggs + status: passing +/usr/local/lib/python3.12/test/test_zipapp.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_zipfile/test_core.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_zipfile64.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_zipimport_support.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_zlib.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo.py: +- options: + preserve_locals: + - ZISubclass + status: passing +- options: + preserve_globals: + - setUpModule + - tearDownModule + preserve_locals: + - ZISubclass + rename_globals: true + status: passing +- options: + preserve_locals: + - ZISubclass + remove_literal_statements: true + status: passing +- options: + preserve_globals: + - setUpModule + - tearDownModule + preserve_locals: + - ZISubclass + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: +- options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing From a765c26fbb93086d200c36be8f3032e7e45943ba Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 18:04:24 +0100 Subject: [PATCH 32/53] Fix test_no_hoist_slots --- ascii.py | 9 +++++++++ test/test_hoist_literals.py | 18 ++++++++++++++---- 2 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 ascii.py diff --git a/ascii.py b/ascii.py new file mode 100644 index 00000000..5e853982 --- /dev/null +++ b/ascii.py @@ -0,0 +1,9 @@ +from python_minifier import minify + +with open('snippet.py', 'rb') as f: + source = f.read() + +minified = minify(source) + +with open('minified.py', 'w', encoding='ascii', errors='backslashreplace') as f: + f.write(minified) diff --git a/test/test_hoist_literals.py b/test/test_hoist_literals.py index 445f347f..39e15d13 100644 --- a/test/test_hoist_literals.py +++ b/test/test_hoist_literals.py @@ -5,6 +5,7 @@ from python_minifier import unparse from python_minifier.ast_compare import compare_ast +from python_minifier.ast_printer import print_ast from python_minifier.rename import add_namespace, bind_names, resolve_names, rename, rename_literals, allow_rename_locals, allow_rename_globals def hoist(source): @@ -496,15 +497,24 @@ def test_no_hoist_slots(): source = ''' class SlotsA(object): __slots__ = ['aaaaa', 'bbbbb'] + notslots = ['aaaaa', 'bbbbb'] class SlotsB(object): __slots__ = 'aaaaa', 'bbbbb' + notslots = ['aaaaa', 'bbbbb'] ''' expected = ''' -class A: - __slots__=['aaaaa', 'bbbbb'] -class B: - __slots__='aaaaa', 'bbbbb' +B = 'bbbbb' +A = 'aaaaa' +class SlotsA(object): + __slots__ = ['aaaaa', 'bbbbb'] + notslots = [A, B] +class SlotsB(object): + __slots__ = 'aaaaa', 'bbbbb' + notslots = [A, B] ''' expected_ast = ast.parse(expected) actual_ast = hoist(source) + + print(print_ast(expected_ast)) + print(print_ast(actual_ast)) compare_ast(expected_ast, actual_ast) \ No newline at end of file From 326b0f3c8220fd4314a14eb4891c3e58a284c1de Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 18:04:55 +0100 Subject: [PATCH 33/53] f --- ascii.py | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 ascii.py diff --git a/ascii.py b/ascii.py deleted file mode 100644 index 5e853982..00000000 --- a/ascii.py +++ /dev/null @@ -1,9 +0,0 @@ -from python_minifier import minify - -with open('snippet.py', 'rb') as f: - source = f.read() - -minified = minify(source) - -with open('minified.py', 'w', encoding='ascii', errors='backslashreplace') as f: - f.write(minified) From 334340634e9d2c2377f5fa9bc9a17ea1ef659989 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 18:24:08 +0100 Subject: [PATCH 34/53] Fix no hoist __slots__ test on Python 2 --- test/test_hoist_literals.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/test/test_hoist_literals.py b/test/test_hoist_literals.py index 39e15d13..4490882f 100644 --- a/test/test_hoist_literals.py +++ b/test/test_hoist_literals.py @@ -494,6 +494,9 @@ def test_hoisted_types_py2(): compare_ast(expected_ast, actual_ast) def test_no_hoist_slots(): + if sys.version_info < (3, 3): + pytest.skip('Literal rename iterates bindings in a different order with Python2') + source = ''' class SlotsA(object): __slots__ = ['aaaaa', 'bbbbb'] @@ -515,6 +518,35 @@ class SlotsB(object): expected_ast = ast.parse(expected) actual_ast = hoist(source) + print(print_ast(expected_ast)) + print(print_ast(actual_ast)) + compare_ast(expected_ast, actual_ast) + +def test_no_hoist_slots_python2(): + if sys.version_info > (2, 7): + pytest.skip('Literal rename iterates bindings in a different order with Python3') + + source = ''' +class SlotsA(object): + __slots__ = ['aaaaa', 'bbbbb'] + notslots = ['aaaaa', 'bbbbb'] +class SlotsB(object): + __slots__ = 'aaaaa', 'bbbbb' + notslots = ['aaaaa', 'bbbbb'] +''' + expected = ''' +B = 'aaaaa' +A = 'bbbbb' +class SlotsA(object): + __slots__ = ['aaaaa', 'bbbbb'] + notslots = [A, B] +class SlotsB(object): + __slots__ = 'aaaaa', 'bbbbb' + notslots = [A, B] +''' + expected_ast = ast.parse(expected) + actual_ast = hoist(source) + print(print_ast(expected_ast)) print(print_ast(actual_ast)) compare_ast(expected_ast, actual_ast) \ No newline at end of file From 0552d380f57e51b798415526e9184aa6efa024fc Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 18:28:26 +0100 Subject: [PATCH 35/53] Remove tests that don't work on actions runners --- xtest/manifests/python3.12_test_manifest.yaml | 2260 ++++++++--------- 1 file changed, 1121 insertions(+), 1139 deletions(-) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index aba2c3c4..ac6a978c 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -1,56 +1,47 @@ /usr/local/lib/python3.12/test/leakers/test_ctypes.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/leakers/test_selftype.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/leakers/test_selftype.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test___all__.py: - options: {} status: passing - options: @@ -59,15 +50,20 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test___all__.py: - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test__locale.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test__locale.py: - options: {} status: passing - options: @@ -76,17 +72,21 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test__opcode.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test__opcode.py: +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test__xxinterpchannels.py: @@ -104,16 +104,16 @@ status: passing /usr/local/lib/python3.12/test/test__xxsubinterpreters.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_abc.py: - options: @@ -122,6 +122,7 @@ - B - C - D + rename_globals: true status: passing - options: preserve_locals: @@ -129,7 +130,6 @@ - B - C - D - remove_literal_statements: true status: passing - options: preserve_locals: @@ -137,7 +137,7 @@ - B - C - D - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: @@ -163,16 +163,16 @@ status: passing /usr/local/lib/python3.12/test/test_aifc.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_argparse.py: - options: @@ -191,46 +191,42 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ast.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_ast.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_asyncgen.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_asyncgen.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: - options: {} status: passing - options: @@ -239,6 +235,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_context.py: - options: rename_globals: true @@ -266,27 +266,23 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: -- options: - preserve_locals: future - status: passing - options: preserve_locals: future remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: future - remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: future - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: - options: + preserve_locals: future remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: - options: {} status: passing - options: @@ -295,6 +291,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: - options: preserve_locals: @@ -306,19 +306,19 @@ preserve_locals: - foo - spam + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - foo - spam - remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - foo - spam - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: - options: @@ -334,9 +334,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing @@ -346,18 +343,21 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_runners.py: - options: @@ -373,8 +373,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: -- options: {} - status: passing - options: rename_globals: true status: passing @@ -385,9 +383,9 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: - options: rename_globals: true status: passing @@ -398,12 +396,14 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_server.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true @@ -414,30 +414,21 @@ /usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: -- options: rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: - options: {} status: passing - options: @@ -446,14 +437,20 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: +- options: {} + status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: - options: preserve_globals: - TestSubprocessTransport @@ -467,11 +464,10 @@ - TestSubprocessTransport rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: - options: {} status: passing - options: @@ -480,24 +476,24 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: - options: {} status: passing - options: @@ -506,6 +502,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_transports.py: - options: remove_literal_statements: true @@ -533,32 +533,23 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_atexit.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_audioop.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_audioop.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_audit.py: - options: {} status: passing - options: @@ -567,28 +558,33 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_audit.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_augassign.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_augassign.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_base64.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_base64.py: - options: {} status: passing - options: @@ -597,10 +593,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_baseexception.py: - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_baseexception.py: - options: remove_literal_statements: true rename_globals: true @@ -610,6 +607,9 @@ - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_bigaddrspace.py: - options: remove_literal_statements: true @@ -624,19 +624,10 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_bigmem.py: -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_binascii.py: - options: {} status: passing - options: @@ -645,29 +636,20 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_binascii.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_binop.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_bisect.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_binop.py: - options: remove_literal_statements: true status: passing @@ -675,33 +657,29 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bool.py: - options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_bisect.py: - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_buffer.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_bool.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bufio.py: - options: {} status: passing - options: @@ -710,11 +688,7 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_builtin.py: +/usr/local/lib/python3.12/test/test_buffer.py: - options: rename_globals: true status: passing @@ -727,7 +701,7 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_bytes.py: +/usr/local/lib/python3.12/test/test_bufio.py: - options: {} status: passing - options: @@ -740,7 +714,7 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bz2.py: +/usr/local/lib/python3.12/test/test_builtin.py: - options: remove_literal_statements: true rename_globals: true @@ -753,30 +727,34 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_c_locale_coercion.py: +/usr/local/lib/python3.12/test/test_bytes.py: - options: - preserve_globals: - - setUpModule - - tearDownModule + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_bz2.py: - options: - preserve_globals: - - setUpModule - - tearDownModule remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_calendar.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_c_locale_coercion.py: [] +/usr/local/lib/python3.12/test/test_calendar.py: - options: {} status: passing - options: @@ -785,6 +763,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_call.py: - options: convert_posargs_to_args: false @@ -792,6 +774,7 @@ - A preserve_locals: - arg + remove_literal_statements: true rename_globals: true status: passing - options: @@ -802,17 +785,16 @@ status: passing - options: convert_posargs_to_args: false + preserve_globals: + - A preserve_locals: - arg + rename_globals: true status: passing - options: convert_posargs_to_args: false - preserve_globals: - - A preserve_locals: - arg - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_abstract.py: - options: @@ -841,9 +823,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_capi/test_bytes.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -851,13 +830,12 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_codecs.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_codecs.py: - options: {} status: passing - options: @@ -866,6 +844,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_capi/test_complex.py: - options: remove_literal_statements: true @@ -921,15 +903,15 @@ /usr/local/lib/python3.12/test/test_capi/test_getargs.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_capi/test_immortal.py: - options: @@ -952,10 +934,10 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_long.py: - options: @@ -972,16 +954,16 @@ status: passing /usr/local/lib/python3.12/test/test_capi/test_mem.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_capi/test_set.py: - options: @@ -997,6 +979,10 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_capi/test_structmembers.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing - options: @@ -1005,24 +991,24 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_sys.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_sys.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_unicode.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_capi/test_unicode.py: - options: {} status: passing - options: @@ -1031,11 +1017,11 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_watchers.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_watchers.py: - options: {} status: passing - options: @@ -1044,11 +1030,11 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_cgi.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_cgi.py: - options: {} status: passing - options: @@ -1057,17 +1043,13 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_cgitb.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_cgitb.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -1102,31 +1084,35 @@ status: passing /usr/local/lib/python3.12/test/test_cmath.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_cmd.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing -/usr/local/lib/python3.12/test/test_cmd.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_cmd_line.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_cmd_line.py: - options: {} status: passings - options: @@ -1135,11 +1121,10 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_code_module.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_code_module.py: - options: remove_literal_statements: true rename_globals: true @@ -1149,10 +1134,11 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codeccallbacks.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codeccallbacks.py: - options: {} status: passing - options: @@ -1161,63 +1147,63 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_codecencodings_cn.py: - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_cn.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_codecencodings_hk.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_hk.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_codecencodings_jp.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_jp.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_codecencodings_kr.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_kr.py: - options: {} status: passing - options: @@ -1226,22 +1212,18 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_codecencodings_tw.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codecencodings_tw.py: -- options: - rename_globals: true +- options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing /usr/local/lib/python3.12/test/test_codecmaps_cn.py: - options: @@ -1309,9 +1291,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_codecs.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -1321,63 +1300,49 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codeop.py: -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing -/usr/local/lib/python3.12/test/test_collections.py: +/usr/local/lib/python3.12/test/test_codeop.py: - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_colorsys.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_collections.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_compare.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_colorsys.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_compiler_assemble.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_compare.py: - options: {} status: passing - options: @@ -1386,7 +1351,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_compiler_codegen.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_compiler_assemble.py: - options: remove_literal_statements: true rename_globals: true @@ -1399,7 +1368,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_complex.py: +/usr/local/lib/python3.12/test/test_compiler_codegen.py: - options: rename_globals: true status: passing @@ -1412,7 +1381,7 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_configparser.py: +/usr/local/lib/python3.12/test/test_complex.py: - options: remove_literal_statements: true rename_globals: true @@ -1425,20 +1394,36 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_contains.py: +/usr/local/lib/python3.12/test/test_configparser.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_contains.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_context.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -1448,9 +1433,6 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_copy.py: - options: remove_literal_statements: true @@ -1473,8 +1455,13 @@ - TypeError - type - unittest + remove_literal_statements: true rename_globals: true status: passing +- options: + hoist_literals: false + remove_literal_statements: true + status: passing - options: hoist_literals: false status: passing @@ -1486,17 +1473,9 @@ - TypeError - type - unittest - remove_literal_statements: true rename_globals: true status: passing -- options: - hoist_literals: false - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_cprofile.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -1506,31 +1485,34 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_crypt.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_crypt.py: +- options: + remove_literal_statements: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_csv.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_csv.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_anon.py: - options: @@ -1548,15 +1530,15 @@ /usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: - options: @@ -1572,6 +1554,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -1581,9 +1566,6 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_bitfields.py: - options: remove_literal_statements: true @@ -1598,62 +1580,71 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: - options: {} status: passing - options: @@ -1662,20 +1653,24 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: +/usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: - options: rename_globals: true status: passing @@ -1688,7 +1683,7 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: +/usr/local/lib/python3.12/test/test_ctypes/test_errno.py: - options: remove_literal_statements: true rename_globals: true @@ -1701,25 +1696,20 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_errno.py: +/usr/local/lib/python3.12/test/test_ctypes/test_find.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_find.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: - options: remove_literal_statements: true status: passing @@ -1727,19 +1717,11 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: - options: remove_literal_statements: true @@ -1757,13 +1739,13 @@ - options: remove_literal_statements: true remove_object_base: false + rename_globals: true status: passing - options: + remove_literal_statements: true remove_object_base: false - rename_globals: true status: passing - options: - remove_literal_statements: true remove_object_base: false rename_globals: true status: passing @@ -1771,6 +1753,9 @@ remove_object_base: false status: passing /usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -1780,9 +1765,6 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_init.py: - options: rename_globals: true @@ -1823,23 +1805,19 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_libc.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_loading.py: +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_loading.py: - options: {} status: passing - options: @@ -1848,31 +1826,35 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_objects.py: - options: @@ -1888,10 +1870,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -1900,19 +1878,23 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: - options: remove_literal_statements: true @@ -1941,16 +1923,16 @@ status: passing /usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: - options: {} @@ -1966,6 +1948,9 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_random_things.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -1975,9 +1960,6 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: - options: remove_literal_statements: true @@ -1986,10 +1968,10 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_repr.py: - options: @@ -1998,17 +1980,13 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: - options: {} status: passing - options: @@ -2017,11 +1995,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: - options: {} status: passing - options: @@ -2030,9 +2008,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: - options: rename_globals: true status: passing @@ -2043,20 +2023,26 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: - options: {} status: passing - options: @@ -2065,21 +2051,17 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: @@ -2096,6 +2078,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_structures.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -2105,33 +2090,30 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_values.py: @@ -2142,10 +2124,10 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: - options: @@ -2174,40 +2156,40 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_curses.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_curses.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_datetime.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_datetime.py: - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -2219,21 +2201,17 @@ /usr/local/lib/python3.12/test/test_dbm.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_dbm_dumb.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_dbm_dumb.py: - options: {} status: passing - options: @@ -2242,6 +2220,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_dbm_gnu.py: - options: remove_literal_statements: true @@ -2250,10 +2232,10 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm_ndbm.py: - options: @@ -2269,8 +2251,6 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_decimal.py: -- options: {} - status: passing - options: rename_globals: true status: passing @@ -2281,6 +2261,8 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_decorators.py: - options: remove_literal_statements: true @@ -2296,29 +2278,29 @@ status: passing /usr/local/lib/python3.12/test/test_defaultdict.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_deque.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_deque.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_descr.py: - options: @@ -2335,6 +2317,7 @@ - G - d remove_literal_statements: true + rename_globals: true status: passing - options: hoist_literals: false @@ -2379,7 +2362,6 @@ - G - d remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dict_version.py: - options: @@ -2388,12 +2370,12 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_dictcomps.py: - options: remove_literal_statements: true @@ -2411,26 +2393,26 @@ - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_difflib.py: -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_doctest2.py: @@ -2440,45 +2422,32 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dynamic.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_dynamicclassattribute.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_dynamicclassattribute.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_email/test__encoded_words.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: +/usr/local/lib/python3.12/test/test_email/test__encoded_words.py: - options: remove_literal_statements: true rename_globals: true @@ -2491,7 +2460,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: +/usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: - options: rename_globals: true status: passing @@ -2504,38 +2473,51 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +/usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: - options: {} status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_email/test_email.py: - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_email/test_email.py: - options: remove_literal_statements: true status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_generator.py: - options: remove_literal_statements: true @@ -2567,14 +2549,14 @@ remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_message.py: - options: remove_literal_statements: true @@ -2602,31 +2584,31 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_email/test_pickleable.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_email/test_policy.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_email/test_policy.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_utils.py: - options: rename_globals: true @@ -2641,6 +2623,10 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_embed.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing - options: @@ -2649,24 +2635,24 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ensurepip.py: - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ensurepip.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_enum.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_enum.py: - options: {} status: passing - options: @@ -2675,53 +2661,59 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_enumerate.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_enumerate.py: -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_eof.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_eof.py: - options: remove_literal_statements: true status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_epoll.py: +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_epoll.py: - options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_errno.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_errno.py: - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_except_star.py: - options: remove_literal_statements: true rename_globals: true @@ -2731,45 +2723,35 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_except_star.py: - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_exception_variations.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_exception_variations.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_faulthandler.py: - options: remove_literal_statements: true @@ -2784,8 +2766,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_fcntl.py: -- options: {} - status: passing - options: rename_globals: true status: passing @@ -2796,6 +2776,8 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_file.py: - options: remove_literal_statements: true @@ -2812,21 +2794,17 @@ /usr/local/lib/python3.12/test/test_file_eintr.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_filecmp.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_filecmp.py: - options: {} status: passing - options: @@ -2835,23 +2813,24 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_fileinput.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_fileinput.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_fileio.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_fileio.py: - options: remove_literal_statements: true rename_globals: true @@ -2861,23 +2840,23 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_fileutils.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing +/usr/local/lib/python3.12/test/test_fileutils.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_finalization.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing +/usr/local/lib/python3.12/test/test_finalization.py: - options: remove_literal_statements: true rename_globals: true @@ -2887,51 +2866,49 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_float.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_float.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_flufl.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing +/usr/local/lib/python3.12/test/test_flufl.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_fnmatch.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_fnmatch.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_fork1.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_fork1.py: - options: remove_literal_statements: true status: passing @@ -2939,12 +2916,12 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_format.py: - options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_format.py: - options: remove_literal_statements: true status: passing @@ -2952,10 +2929,12 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_fractions.py: +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_fractions.py: - options: remove_literal_statements: true rename_globals: true @@ -2965,30 +2944,33 @@ - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_frozen.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_fstring.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ftplib.py: @@ -3007,19 +2989,19 @@ /usr/local/lib/python3.12/test/test_functools.py: - options: remove_annotations: false - rename_globals: true + remove_literal_statements: true status: passing - options: remove_annotations: false - remove_literal_statements: true - rename_globals: true status: passing - options: remove_annotations: false + remove_literal_statements: true + rename_globals: true status: passing - options: remove_annotations: false - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future.py: - options: @@ -3041,29 +3023,26 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: - options: remove_literal_statements: true status: passing @@ -3073,11 +3052,10 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: - options: {} status: passing - options: @@ -3086,25 +3064,24 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_gc.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_gc.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_generator_stop.py: -- options: {} +- options: + remove_literal_statements: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_generator_stop.py: - options: remove_literal_statements: true status: passing @@ -3112,6 +3089,11 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_generators.py: - options: preserve_globals: @@ -3149,15 +3131,6 @@ - a status: passing - options: - preserve_globals: - - GeneratorTest - - conjoin - - Queens - - Knights - - func - - a - - b - - support preserve_locals: - conjoin - Queens @@ -3168,9 +3141,18 @@ - call_throw - func - a - rename_globals: true + remove_literal_statements: true status: passing - options: + preserve_globals: + - GeneratorTest + - conjoin + - Queens + - Knights + - func + - a + - b + - support preserve_locals: - conjoin - Queens @@ -3181,12 +3163,9 @@ - call_throw - func - a - remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_genericalias.py: -- options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_genericalias.py: - options: remove_literal_statements: true status: passing @@ -3196,6 +3175,9 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_genericclass.py: - options: preserve_locals: @@ -3218,6 +3200,7 @@ - Meta - C - C_is_none + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3226,7 +3209,6 @@ - Meta - C - C_is_none - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genericpath.py: @@ -3243,38 +3225,36 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_genexps.py: +- options: + remove_literal_statements: true + status: passing - options: preserve_globals: - load_tests rename_globals: true status: passing -- options: {} - status: passing - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_getopt.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_getpass.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_getpass.py: - options: rename_globals: true status: passing @@ -3285,11 +3265,9 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_getpath.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_getpath.py: - options: {} status: passing - options: @@ -3298,19 +3276,23 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_glob.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_glob.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_global.py: - options: rename_globals: true @@ -3341,7 +3323,6 @@ - k - Spam remove_annotations: false - remove_literal_statements: true status: passing - options: preserve_locals: @@ -3359,6 +3340,7 @@ - k - Spam remove_annotations: false + remove_literal_statements: true status: passing - options: preserve_locals: @@ -3376,7 +3358,6 @@ - k - Spam remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: @@ -3395,6 +3376,7 @@ - k - Spam remove_annotations: false + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_graphlib.py: @@ -3411,19 +3393,23 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_grp.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_gzip.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_gzip.py: - options: {} status: passing - options: @@ -3432,10 +3418,6 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_hash.py: - options: remove_literal_statements: true @@ -3450,26 +3432,26 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_hashlib.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_heapq.py: - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true @@ -3477,28 +3459,28 @@ status: passing /usr/local/lib/python3.12/test/test_hmac.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_html.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_html.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_htmlparser.py: @@ -3528,6 +3510,10 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_http_cookies.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing - options: @@ -3536,37 +3522,37 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_httplib.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_httplib.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_httpservers.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_httpservers.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_idle.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_idle.py: - options: {} status: passing - options: @@ -3575,22 +3561,18 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_imaplib.py: - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_imaplib.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_imghdr.py: - options: @@ -3599,17 +3581,13 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: - options: {} status: passing - options: @@ -3618,6 +3596,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: - options: remove_literal_statements: true @@ -3632,6 +3614,8 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -3642,11 +3626,7 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: -- options: {} - status: passing - options: rename_globals: true status: passing @@ -3657,6 +3637,8 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: - options: rename_globals: true @@ -3671,10 +3653,6 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -3683,36 +3661,37 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: - options: remove_literal_statements: true rename_globals: true @@ -3722,19 +3701,22 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: - options: rename_globals: true @@ -3751,21 +3733,17 @@ /usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: - options: {} status: passing - options: @@ -3774,6 +3752,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: - options: remove_literal_statements: true @@ -3788,6 +3770,8 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -3798,13 +3782,7 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -3813,11 +3791,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: - options: {} status: passing - options: @@ -3826,6 +3804,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: - options: remove_literal_statements: true @@ -3853,22 +3835,19 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_abc.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_abc.py: - options: remove_literal_statements: true rename_globals: true @@ -3878,16 +3857,19 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_api.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_importlib/test_api.py: +- options: + rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -3905,6 +3887,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_importlib/test_locks.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -3914,34 +3899,31 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/test_spec.py: - options: {} @@ -3983,6 +3965,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_index.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -3992,16 +3977,13 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_int.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_int.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -4035,32 +4017,23 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_io.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ioctl.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ioctl.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_ipaddress.py: - options: {} status: passing - options: @@ -4069,40 +4042,46 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_ipaddress.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_isinstance.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_isinstance.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_iter.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_iter.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_iterlen.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing +/usr/local/lib/python3.12/test/test_iterlen.py: - options: remove_literal_statements: true rename_globals: true @@ -4112,6 +4091,9 @@ - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_itertools.py: - options: {} status: passing @@ -4139,17 +4121,17 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_default.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_dump.py: - options: @@ -4166,14 +4148,14 @@ status: passing /usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -4204,24 +4186,19 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_json/test_float.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_json/test_indent.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_json/test_indent.py: - options: remove_literal_statements: true status: passing @@ -4229,7 +4206,15 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_json/test_pass1.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -4239,12 +4224,7 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_json/test_pass2.py: -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_json/test_pass2.py: - options: rename_globals: true status: passing @@ -4255,20 +4235,24 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_json/test_pass3.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_json/test_pass3.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_recursion.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -4279,46 +4263,44 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_json/test_scanstring.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_separators.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_json/test_speedups.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_tool.py: - options: {} @@ -4334,18 +4316,18 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_unicode.py: -- options: - remove_literal_statements: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_keyword.py: - options: remove_literal_statements: true @@ -4373,6 +4355,9 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_largefile.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -4382,48 +4367,45 @@ status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: +- options: + remove_literal_statements: true + status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_linecache.py: - options: remove_literal_statements: true @@ -4451,49 +4433,45 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_listcomps.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_locale.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_locale.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_long.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_long.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_longexp.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_longexp.py: - options: {} status: passing - options: @@ -4502,6 +4480,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_lzma.py: - options: remove_literal_statements: true @@ -4517,31 +4499,33 @@ status: passing /usr/local/lib/python3.12/test/test_mailbox.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_mailcap.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_marshal.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_marshal.py: - options: rename_globals: true status: passing @@ -4552,20 +4536,18 @@ remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_math.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_math.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_math_property.py: - options: @@ -4584,7 +4566,7 @@ - options: preserve_locals: - PickleTestMemIO - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: @@ -4594,19 +4576,19 @@ preserve_locals: - PickleTestMemIO remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - PickleTestMemIO - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_memoryview.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true @@ -4615,6 +4597,9 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_mimetypes.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -4624,9 +4609,6 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_minidom.py: - options: remove_literal_statements: true @@ -4641,32 +4623,35 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_mmap.py: -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_modulefinder.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_modulefinder.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_monitoring.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_monitoring.py: - options: remove_literal_statements: true rename_globals: true @@ -4676,74 +4661,71 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_multibytecodec.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_multibytecodec.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_named_expressions.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_named_expressions.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_netrc.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_netrc.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_nis.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_nntplib.py: - options: remove_literal_statements: true @@ -4773,6 +4755,8 @@ /usr/local/lib/python3.12/test/test_opcache.py: - options: preserve_locals: Class + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: Class @@ -4780,56 +4764,51 @@ status: passing - options: preserve_locals: Class - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: Class rename_globals: true status: passing /usr/local/lib/python3.12/test/test_opcodes.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_openpty.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_openpty.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_operator.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_operator.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_optparse.py: - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_optparse.py: - options: remove_literal_statements: true status: passing @@ -4839,18 +4818,21 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ordered_dict.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ordered_dict.py: - options: {} status: passing +- options: + remove_literal_statements: true + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pep646_syntax.py: - options: @@ -4858,14 +4840,14 @@ - load_tests rename_globals: true status: passing -- options: {} - status: passing - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -4883,9 +4865,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_perfmaps.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing @@ -4895,6 +4874,9 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_pickle.py: - options: {} status: passing @@ -4902,6 +4884,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_picklebuffer.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -4911,22 +4896,19 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_pickletools.py: +- options: {} + status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_pipes.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_pipes.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -4934,56 +4916,56 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_pkg.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_pkgutil.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_pkgutil.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_platform.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_platform.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_plistlib.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_plistlib.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_poll.py: - options: @@ -5000,29 +4982,29 @@ status: passing /usr/local/lib/python3.12/test/test_popen.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_poplib.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_positional_only_arg.py: - options: @@ -5035,9 +5017,14 @@ - f - g remove_annotations: false + remove_literal_statements: true status: passing - options: convert_posargs_to_args: false + preserve_globals: + - global_pos_only_f + - global_pos_only_and_normal + - global_pos_only_defaults preserve_locals: - something - a @@ -5046,7 +5033,7 @@ - f - g remove_annotations: false - remove_literal_statements: true + rename_globals: true status: passing - options: convert_posargs_to_args: false @@ -5067,10 +5054,6 @@ status: passing - options: convert_posargs_to_args: false - preserve_globals: - - global_pos_only_f - - global_pos_only_and_normal - - global_pos_only_defaults preserve_locals: - something - a @@ -5079,26 +5062,21 @@ - f - g remove_annotations: false - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pow.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_print.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_print.py: - options: {} status: passing - options: @@ -5107,11 +5085,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_profile.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_profile.py: - options: {} status: passing - options: @@ -5120,18 +5098,19 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_property.py: - options: - preserve_globals: - - PropertyUnreachableAttributeNoName - - PropertyUnreachableAttributeWithName remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_property.py: - options: {} status: passing - options: + preserve_globals: + - PropertyUnreachableAttributeNoName + - PropertyUnreachableAttributeWithName remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: @@ -5139,13 +5118,15 @@ - PropertyUnreachableAttributeWithName rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_pstats.py: - options: preserve_locals: - pass1 - pass2 - pass3 - rename_globals: true status: passing - options: preserve_locals: @@ -5159,27 +5140,28 @@ - pass1 - pass2 - pass3 + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - pass1 - pass2 - pass3 - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pty.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_pulldom.py: - options: @@ -5196,16 +5178,16 @@ status: passing /usr/local/lib/python3.12/test/test_pwd.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_py_compile.py: - options: {} @@ -5224,19 +5206,16 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_pyexpat.py: - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_pyexpat.py: - options: remove_literal_statements: true rename_globals: true @@ -5246,34 +5225,33 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_queue.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_queue.py: - options: preserve_globals: - import_helper - threading - threading_helper - unittest - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: preserve_globals: - import_helper - threading - threading_helper - unittest - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_quopri.py: -- options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_quopri.py: - options: {} status: passing - options: @@ -5282,32 +5260,36 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_raise.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_raise.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_random.py: - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_random.py: +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_range.py: - options: remove_literal_statements: true @@ -5322,9 +5304,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_re.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -5334,7 +5313,13 @@ - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_readline.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -5344,10 +5329,11 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_repl.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_repl.py: - options: {} status: passing - options: @@ -5356,27 +5342,23 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_reprlib.py: - options: {} status: passing -- options: - remove_literal_statements: true - status: passing - options: preserve_globals: - ClassWithFailingRepr - ReprTests - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: preserve_globals: - ClassWithFailingRepr - ReprTests + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_resource.py: @@ -5384,20 +5366,18 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_richcmp.py: - options: preserve_locals: - Spam - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -5407,16 +5387,15 @@ - options: preserve_locals: - Spam + remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - Spam + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_rlcompleter.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -5426,6 +5405,9 @@ - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_robotparser.py: - options: remove_literal_statements: true @@ -5440,6 +5422,9 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_sax.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -5449,10 +5434,10 @@ status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_sched.py: - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sched.py: - options: remove_literal_statements: true rename_globals: true @@ -5462,21 +5447,18 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_scope.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_script_helper.py: - options: @@ -5492,9 +5474,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_secrets.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing @@ -5504,20 +5483,14 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_select.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing +/usr/local/lib/python3.12/test/test_select.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_selectors.py: - options: {} status: passing - options: @@ -5526,14 +5499,20 @@ - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_selectors.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_set.py: +- options: {} + status: passing - options: remove_literal_statements: true status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_set.py: - options: remove_literal_statements: true rename_globals: true @@ -5543,52 +5522,42 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_setcomps.py: - options: - preserve_globals: - - doctests - - load_tests remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_setcomps.py: - options: {} status: passing -- options: - remove_literal_statements: true - status: passing - options: preserve_globals: - doctests - load_tests rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_shelve.py: - options: + preserve_globals: + - doctests + - load_tests remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_shlex.py: +/usr/local/lib/python3.12/test/test_shelve.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing -/usr/local/lib/python3.12/test/test_signal.py: +/usr/local/lib/python3.12/test/test_shlex.py: - options: remove_literal_statements: true rename_globals: true @@ -5601,7 +5570,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_site.py: +/usr/local/lib/python3.12/test/test_signal.py: - options: {} status: passing - options: @@ -5614,7 +5583,7 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_slice.py: +/usr/local/lib/python3.12/test/test_site.py: - options: remove_literal_statements: true rename_globals: true @@ -5627,25 +5596,33 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_smtpnet.py: +/usr/local/lib/python3.12/test/test_slice.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing +- options: + remove_literal_statements: true + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_smtpnet.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sndhdr.py: - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_sndhdr.py: - options: remove_literal_statements: true status: passing @@ -5653,9 +5630,12 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_socket.py: - options: {} status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_socket.py: - options: rename_globals: true status: passing @@ -5666,12 +5646,14 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_socketserver.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true @@ -5680,9 +5662,6 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_sort.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true @@ -5692,11 +5671,10 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_source_encoding.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_source_encoding.py: - options: {} status: passing - options: @@ -5705,22 +5683,24 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_spwd.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_spwd.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: - options: rename_globals: true status: passing @@ -5731,11 +5711,9 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: - options: {} status: passing - options: @@ -5744,6 +5722,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: - options: remove_literal_statements: true @@ -5761,6 +5743,7 @@ - options: preserve_locals: - bad_progress + rename_globals: true status: passing - options: preserve_locals: @@ -5770,12 +5753,11 @@ - options: preserve_locals: - bad_progress - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - bad_progress + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: @@ -5792,23 +5774,32 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: +- options: + remove_literal_statements: true + status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: - options: {} status: passing - options: @@ -5817,11 +5808,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ssl.py: - options: {} status: passing - options: @@ -5830,10 +5821,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ssl.py: - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: - options: remove_literal_statements: true rename_globals: true @@ -5843,7 +5835,10 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_statistics.py: - options: rename_globals: true status: passing @@ -5856,7 +5851,7 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_statistics.py: +/usr/local/lib/python3.12/test/test_strftime.py: - options: remove_literal_statements: true status: passing @@ -5869,9 +5864,7 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_strftime.py: -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_string.py: - options: rename_globals: true status: passing @@ -5882,10 +5875,9 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_string.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_string_literals.py: - options: remove_literal_statements: true rename_globals: true @@ -5895,7 +5887,10 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_string_literals.py: +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_stringprep.py: - options: {} status: passing - options: @@ -5908,7 +5903,7 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_stringprep.py: +/usr/local/lib/python3.12/test/test_strptime.py: - options: remove_literal_statements: true rename_globals: true @@ -5921,7 +5916,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_strptime.py: +/usr/local/lib/python3.12/test/test_strtod.py: - options: remove_literal_statements: true rename_globals: true @@ -5934,7 +5929,9 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_strtod.py: +/usr/local/lib/python3.12/test/test_struct.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5945,9 +5942,7 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_struct.py: +/usr/local/lib/python3.12/test/test_structseq.py: - options: remove_literal_statements: true rename_globals: true @@ -5960,19 +5955,6 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_structseq.py: -- options: - remove_literal_statements: true - status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_subclassinit.py: - options: preserve_locals: @@ -5987,7 +5969,6 @@ - MyClass - NotGoingToWork - Descriptor - remove_literal_statements: true status: passing - options: preserve_locals: @@ -6001,14 +5982,15 @@ - MyClass - NotGoingToWork - Descriptor + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_subprocess.py: +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -6016,16 +5998,16 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_sunau.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sundry.py: @@ -6043,16 +6025,16 @@ status: passing /usr/local/lib/python3.12/test/test_super.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_support.py: - options: @@ -6069,16 +6051,16 @@ status: passing /usr/local/lib/python3.12/test/test_symtable.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_syntax.py: - options: @@ -6094,10 +6076,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_sys_setprofile.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -6106,6 +6084,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_sysconfig.py: - options: remove_literal_statements: true @@ -6146,47 +6128,45 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_tcl.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_telnetlib.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_telnetlib.py: +- options: + remove_literal_statements: true + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_tempfile.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_termios.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_termios.py: - options: rename_globals: true status: passing @@ -6197,6 +6177,8 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_textwrap.py: - options: remove_literal_statements: true @@ -6211,16 +6193,16 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_thread.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_threadedtempfile.py: @@ -6250,8 +6232,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_threadsignals.py: -- options: {} - status: passing - options: preserve_globals: - setUpModule @@ -6261,12 +6241,19 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: preserve_globals: - setUpModule rename_globals: true status: passing /usr/local/lib/python3.12/test/test_time.py: +- options: {} + status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -6274,25 +6261,23 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_timeit.py: +- options: + remove_literal_statements: true status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_timeit.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_timeout.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_timeout.py: - options: remove_literal_statements: true rename_globals: true @@ -6302,10 +6287,10 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_tokenize.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_tokenize.py: - options: remove_literal_statements: true rename_globals: true @@ -6315,10 +6300,10 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ttk_textonly.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ttk_textonly.py: - options: remove_literal_statements: true rename_globals: true @@ -6328,9 +6313,6 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_tty.py: - options: remove_literal_statements: true @@ -6339,10 +6321,10 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tuple.py: - options: @@ -6397,19 +6379,21 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_type_cache.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_comments.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -6420,9 +6404,10 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_type_params.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -6432,10 +6417,9 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_typechecks.py: +- options: {} + status: passing - options: rename_globals: true status: passing @@ -6446,16 +6430,13 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_types.py: - options: remove_annotations: false - remove_literal_statements: true + rename_globals: true status: passing - options: remove_annotations: false - rename_globals: true status: passing - options: remove_annotations: false @@ -6464,6 +6445,7 @@ status: passing - options: remove_annotations: false + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ucn.py: - options: @@ -6481,51 +6463,54 @@ /usr/local/lib/python3.12/test/test_unary.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_unicode.py: - options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unicode.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unicode_identifiers.py: - options: preserve_locals: - Unicode + remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - Unicode - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - Unicode - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - Unicode + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_unicodedata.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -6535,9 +6520,6 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_unittest/test_assertions.py: - options: remove_literal_statements: true @@ -6558,6 +6540,11 @@ - MyException rename_globals: true status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing - options: preserve_globals: - tearDownModule @@ -6565,24 +6552,19 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_unittest/test_break.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_unittest/test_discovery.py: - options: remove_literal_statements: true @@ -6597,10 +6579,6 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -6609,6 +6587,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_unittest/test_loader.py: - options: preserve_locals: @@ -6619,33 +6601,33 @@ preserve_locals: - MyTest - MyTestCase - remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - MyTest - MyTestCase - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - MyTest - MyTestCase remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_program.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_unittest/test_result.py: - options: {} @@ -6657,8 +6639,6 @@ status: passing /usr/local/lib/python3.12/test/test_unittest/test_runner.py: - options: - preserve_globals: - - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6666,9 +6646,11 @@ - exc2 - foo - bar - rename_globals: true + remove_literal_statements: true status: passing - options: + preserve_globals: + - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6676,7 +6658,7 @@ - exc2 - foo - bar - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: @@ -6702,30 +6684,30 @@ status: passing /usr/local/lib/python3.12/test/test_unittest/test_setups.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_unittest/test_skipping.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_unittest/test_suite.py: - options: remove_literal_statements: true @@ -6740,10 +6722,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_univnewlines.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: @@ -6752,12 +6730,11 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_unparse.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unparse.py: - options: remove_literal_statements: true status: passing @@ -6765,33 +6742,28 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_urllib2.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_urllib2.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_urllib2_localnet.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_urllib2_localnet.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_urllib2net.py: - options: remove_literal_statements: true rename_globals: true @@ -6801,10 +6773,10 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_urllib2net.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_urllib_response.py: - options: remove_literal_statements: true status: passing @@ -6814,10 +6786,10 @@ status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_urllib_response.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_urllibnet.py: - options: remove_literal_statements: true status: passing @@ -6827,10 +6799,7 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_urlparse.py: +/usr/local/lib/python3.12/test/test_urllibnet.py: - options: remove_literal_statements: true rename_globals: true @@ -6843,7 +6812,10 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_userdict.py: +/usr/local/lib/python3.12/test/test_urlparse.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true @@ -6853,10 +6825,7 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_userlist.py: +/usr/local/lib/python3.12/test/test_userdict.py: - options: remove_literal_statements: true rename_globals: true @@ -6869,7 +6838,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_userstring.py: +/usr/local/lib/python3.12/test/test_userlist.py: - options: remove_literal_statements: true rename_globals: true @@ -6877,12 +6846,12 @@ - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_utf8_mode.py: +/usr/local/lib/python3.12/test/test_userstring.py: - options: rename_globals: true status: passing @@ -6895,20 +6864,22 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_utf8source.py: +/usr/local/lib/python3.12/test/test_utf8_mode.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_utf8source.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_uu.py: - options: rename_globals: true status: passing @@ -6919,13 +6890,20 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_uu.py: +- options: + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_uuid.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + remove_literal_statements: true + status: passing +/usr/local/lib/python3.12/test/test_uuid.py: - options: {} status: passing - options: @@ -6934,6 +6912,10 @@ - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_venv.py: - options: remove_literal_statements: true @@ -6949,16 +6931,16 @@ status: passing /usr/local/lib/python3.12/test/test_wait3.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_wait4.py: - options: @@ -6974,25 +6956,22 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_wave.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_weakref.py: - options: - preserve_globals: - - FinalizeTestCase preserve_locals: - MyConfig - rename_globals: true status: passing - options: preserve_locals: @@ -7004,12 +6983,15 @@ - FinalizeTestCase preserve_locals: - MyConfig - remove_literal_statements: true rename_globals: true status: passing - options: + preserve_globals: + - FinalizeTestCase preserve_locals: - MyConfig + remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_weakset.py: - options: @@ -7018,18 +7000,13 @@ status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_webbrowser.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_webbrowser.py: - options: remove_literal_statements: true status: passing @@ -7037,51 +7014,56 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_with.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_with.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_wsgiref.py: - options: preserve_locals: - CustomException - rename_globals: true status: passing - options: preserve_locals: - CustomException remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - CustomException remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - CustomException + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_xdrlib.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: @@ -7098,9 +7080,6 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_xml_etree.py: -- options: - remove_literal_statements: true - status: passing - options: preserve_globals: - setUpModule @@ -7114,33 +7093,39 @@ remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_xml_etree_c.py: +- options: + remove_literal_statements: true + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing +/usr/local/lib/python3.12/test/test_xxlimited.py: - options: remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_xxlimited.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_xxtestfuzz.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_xxtestfuzz.py: - options: remove_literal_statements: true rename_globals: true @@ -7150,16 +7135,11 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_yield_from.py: - options: preserve_locals: - spam - eggs - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -7177,6 +7157,8 @@ preserve_locals: - spam - eggs + remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipapp.py: - options: @@ -7205,8 +7187,6 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipfile64.py: -- options: {} - status: passing - options: rename_globals: true status: passing @@ -7217,18 +7197,20 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_zipimport_support.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_zlib.py: - options: @@ -7247,19 +7229,19 @@ - options: preserve_locals: - ZISubclass + remove_literal_statements: true status: passing - options: - preserve_globals: - - setUpModule - - tearDownModule preserve_locals: - ZISubclass - rename_globals: true status: passing - options: + preserve_globals: + - setUpModule + - tearDownModule preserve_locals: - ZISubclass - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: @@ -7271,15 +7253,15 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: -- options: - remove_literal_statements: true +- options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing From 417419296e0b928c6e9afd01b78a7e496cc63fd5 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 18:28:46 +0100 Subject: [PATCH 36/53] Update to checkout v4 --- .github/workflows/release.yaml | 2 +- .github/workflows/release_test.yaml | 8 ++++---- .github/workflows/test.yaml | 2 +- .github/workflows/test_corpus.yaml | 10 +++++----- .github/workflows/xtest.yaml | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 247dcfb5..e9adec51 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -16,7 +16,7 @@ jobs: image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set version statically run: | diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index 2e5f65a2..bf0a1dec 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -14,7 +14,7 @@ jobs: image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 show-progress: false @@ -86,7 +86,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 show-progress: false @@ -126,7 +126,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 show-progress: false @@ -162,7 +162,7 @@ jobs: fi - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 show-progress: false diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index eeb0cd58..4722f9ae 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -15,7 +15,7 @@ jobs: image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 4b56c5a2..30f8335c 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -53,12 +53,12 @@ jobs: run: rm -rf "$GITHUB_WORKSPACE/*" - name: Checkout tests - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: workflow - name: Checkout ref - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ matrix.ref }} path: python-minifier @@ -109,12 +109,12 @@ jobs: run: rm -rf "$GITHUB_WORKSPACE/*" - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: workflow - name: Checkout ref - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ inputs.ref }} path: python-minifier @@ -125,7 +125,7 @@ jobs: cat sha.txt - name: Checkout base ref - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ inputs.base-ref }} path: python-minifier-base diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index 95fdeaf7..df5ac58f 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -15,7 +15,7 @@ jobs: image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 From 3a008a0a5d6bcdc854ecd572248767dc589b30b5 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Tue, 6 Aug 2024 22:24:41 +0100 Subject: [PATCH 37/53] Try and stop github from breaking my jobs --- .github/workflows/release.yaml | 5 ++++- .github/workflows/release_test.yaml | 11 +++++++---- .github/workflows/test.yaml | 5 ++++- .github/workflows/test_corpus.yaml | 13 ++++++++----- .github/workflows/verify_release.yaml | 3 +++ .github/workflows/xtest.yaml | 5 ++++- 6 files changed, 30 insertions(+), 12 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index e9adec51..ea9c5b0c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -8,6 +8,9 @@ concurrency: group: release cancel-in-progress: false +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: release: @@ -16,7 +19,7 @@ jobs: image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 - name: Set version statically run: | diff --git a/.github/workflows/release_test.yaml b/.github/workflows/release_test.yaml index bf0a1dec..b655747c 100644 --- a/.github/workflows/release_test.yaml +++ b/.github/workflows/release_test.yaml @@ -2,6 +2,9 @@ name: Release Test on: [push] +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: package_python3: @@ -14,7 +17,7 @@ jobs: image: danielflook/python-minifier-build:python3.12-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -86,7 +89,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -126,7 +129,7 @@ jobs: pyminify --version - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false @@ -162,7 +165,7 @@ jobs: fi - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 show-progress: false diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 4722f9ae..df3f0951 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -2,6 +2,9 @@ name: Unit Test on: [push] +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: test: @@ -15,7 +18,7 @@ jobs: image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 diff --git a/.github/workflows/test_corpus.yaml b/.github/workflows/test_corpus.yaml index 30f8335c..99da2e12 100644 --- a/.github/workflows/test_corpus.yaml +++ b/.github/workflows/test_corpus.yaml @@ -34,6 +34,9 @@ on: required: false default: false +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: generate_results: name: Minify Corpus @@ -53,12 +56,12 @@ jobs: run: rm -rf "$GITHUB_WORKSPACE/*" - name: Checkout tests - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: path: workflow - name: Checkout ref - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: ref: ${{ matrix.ref }} path: python-minifier @@ -109,12 +112,12 @@ jobs: run: rm -rf "$GITHUB_WORKSPACE/*" - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: path: workflow - name: Checkout ref - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: ref: ${{ inputs.ref }} path: python-minifier @@ -125,7 +128,7 @@ jobs: cat sha.txt - name: Checkout base ref - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: ref: ${{ inputs.base-ref }} path: python-minifier-base diff --git a/.github/workflows/verify_release.yaml b/.github/workflows/verify_release.yaml index ce1564c5..f8ecfcca 100644 --- a/.github/workflows/verify_release.yaml +++ b/.github/workflows/verify_release.yaml @@ -8,6 +8,9 @@ on: required: true type: string +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: test_package: runs-on: ubuntu-latest diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index df5ac58f..bebbab5f 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -2,6 +2,9 @@ name: Regression Test on: [pull_request] +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + jobs: test: @@ -15,7 +18,7 @@ jobs: image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v3 with: fetch-depth: 0 From 9c2a03efafa4ed15d531892b990d8be12421ca82 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 7 Aug 2024 12:21:05 +0100 Subject: [PATCH 38/53] Remove test that can't pass in CI --- xtest/manifests/python3.12_test_manifest.yaml | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index ac6a978c..27c0f3df 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -4029,19 +4029,7 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ioctl.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing -- options: {} - status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing +/usr/local/lib/python3.12/test/test_ioctl.py: [] /usr/local/lib/python3.12/test/test_ipaddress.py: - options: rename_globals: true From c2496f1af3cc33c3d452113cac1325ef52bdd1e1 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 7 Aug 2024 12:21:47 +0100 Subject: [PATCH 39/53] Fix test_no_hoist_slots Fix to pass with non-deterministic dict order --- test/test_hoist_literals.py | 41 ++++--------------------------------- 1 file changed, 4 insertions(+), 37 deletions(-) diff --git a/test/test_hoist_literals.py b/test/test_hoist_literals.py index 4490882f..10602efa 100644 --- a/test/test_hoist_literals.py +++ b/test/test_hoist_literals.py @@ -494,26 +494,22 @@ def test_hoisted_types_py2(): compare_ast(expected_ast, actual_ast) def test_no_hoist_slots(): - if sys.version_info < (3, 3): - pytest.skip('Literal rename iterates bindings in a different order with Python2') - source = ''' class SlotsA(object): __slots__ = ['aaaaa', 'bbbbb'] - notslots = ['aaaaa', 'bbbbb'] + notslots = ['aaaaa'] class SlotsB(object): __slots__ = 'aaaaa', 'bbbbb' - notslots = ['aaaaa', 'bbbbb'] + notslots = ['aaaaa'] ''' expected = ''' -B = 'bbbbb' A = 'aaaaa' class SlotsA(object): __slots__ = ['aaaaa', 'bbbbb'] - notslots = [A, B] + notslots = [A] class SlotsB(object): __slots__ = 'aaaaa', 'bbbbb' - notslots = [A, B] + notslots = [A] ''' expected_ast = ast.parse(expected) actual_ast = hoist(source) @@ -521,32 +517,3 @@ class SlotsB(object): print(print_ast(expected_ast)) print(print_ast(actual_ast)) compare_ast(expected_ast, actual_ast) - -def test_no_hoist_slots_python2(): - if sys.version_info > (2, 7): - pytest.skip('Literal rename iterates bindings in a different order with Python3') - - source = ''' -class SlotsA(object): - __slots__ = ['aaaaa', 'bbbbb'] - notslots = ['aaaaa', 'bbbbb'] -class SlotsB(object): - __slots__ = 'aaaaa', 'bbbbb' - notslots = ['aaaaa', 'bbbbb'] -''' - expected = ''' -B = 'aaaaa' -A = 'bbbbb' -class SlotsA(object): - __slots__ = ['aaaaa', 'bbbbb'] - notslots = [A, B] -class SlotsB(object): - __slots__ = 'aaaaa', 'bbbbb' - notslots = [A, B] -''' - expected_ast = ast.parse(expected) - actual_ast = hoist(source) - - print(print_ast(expected_ast)) - print(print_ast(actual_ast)) - compare_ast(expected_ast, actual_ast) \ No newline at end of file From bb9255e845d4488a29747d48aa661484b6113724 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 7 Aug 2024 14:08:12 +0100 Subject: [PATCH 40/53] Remove another test that doesn't work in CI --- xtest/manifests/python3.12_test_manifest.yaml | 2724 ++++++++--------- 1 file changed, 1355 insertions(+), 1369 deletions(-) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index 27c0f3df..ffffa83c 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -1,13 +1,13 @@ /usr/local/lib/python3.12/test/leakers/test_ctypes.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -16,104 +16,104 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test___all__.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test__locale.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test__opcode.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test__opcode.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test__xxinterpchannels.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test__xxsubinterpreters.py: -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test__xxsubinterpreters.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_abc.py: - options: @@ -130,6 +130,8 @@ - B - C - D + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -137,7 +139,6 @@ - B - C - D - remove_literal_statements: true status: passing - options: preserve_locals: @@ -146,20 +147,19 @@ - C - D remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_abstract_numbers.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_aifc.py: - options: @@ -168,35 +168,35 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_argparse.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_array.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -205,94 +205,94 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_asyncgen.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_context.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_context.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_eager_task_factory.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: - options: preserve_locals: future remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: future + remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: future + rename_globals: true status: passing - options: preserve_locals: future - remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_locks.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: @@ -300,40 +300,45 @@ preserve_locals: - foo - spam - remove_literal_statements: true status: passing - options: preserve_locals: - foo - spam - remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - foo - spam + remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - foo - spam + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: - options: remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing +- options: rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: - options: rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: - options: remove_literal_statements: true status: passing @@ -341,60 +346,55 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_queues.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_asyncio/test_runners.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -402,54 +402,54 @@ - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: - options: preserve_globals: @@ -457,6 +457,9 @@ remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: @@ -464,41 +467,46 @@ - TestSubprocessTransport rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_threads.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_transports.py: - options: remove_literal_statements: true status: passing @@ -506,266 +514,257 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_transports.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_asyncio/test_waitfor.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_atexit.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_audioop.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_audit.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_augassign.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_base64.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_baseexception.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_bigaddrspace.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_bigmem.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_binascii.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_binascii.py: +- options: {} + status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_binop.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_binop.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_bisect.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_bool.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_buffer.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_bufio.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_builtin.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_bytes.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_bz2.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_c_locale_coercion.py: [] /usr/local/lib/python3.12/test/test_calendar.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_call.py: - options: @@ -774,7 +773,6 @@ - A preserve_locals: - arg - remove_literal_statements: true rename_globals: true status: passing - options: @@ -789,6 +787,7 @@ - A preserve_locals: - arg + remove_literal_statements: true rename_globals: true status: passing - options: @@ -797,55 +796,55 @@ - arg status: passing /usr/local/lib/python3.12/test/test_capi/test_abstract.py: -- options: - remove_literal_statements: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_bytearray.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_bytearray.py: - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_bytes.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_capi/test_bytes.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_codecs.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_codecs.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_complex.py: @@ -853,72 +852,70 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_capi/test_dict.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_float.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_getargs.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_getargs.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_capi/test_immortal.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_capi/test_immortal.py: +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -926,104 +923,106 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_capi/test_list.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_long.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_mem.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_capi/test_set.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_structmembers.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_sys.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_unicode.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_capi/test_watchers.py: +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -1035,63 +1034,63 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_cgitb.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_charmapcodec.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_class.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_class.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_cmath.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -1100,89 +1099,89 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_cmd_line.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passings - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_code_module.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_code_module.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_codeccallbacks.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_codecencodings_cn.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecencodings_hk.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -1190,87 +1189,87 @@ - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_codecencodings_kr.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_codecencodings_tw.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_codecmaps_cn.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_codecmaps_hk.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_codecmaps_jp.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecmaps_kr.py: +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -1282,170 +1281,170 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_codecs.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_codeop.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_collections.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_collections.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_colorsys.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_compare.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_compiler_assemble.py: - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_compiler_assemble.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_compiler_codegen.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_compiler_codegen.py: -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_complex.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_configparser.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_contains.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_context.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_context.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_copy.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_copyreg.py: - options: hoist_literals: false @@ -1460,10 +1459,10 @@ status: passing - options: hoist_literals: false - remove_literal_statements: true status: passing - options: hoist_literals: false + remove_literal_statements: true status: passing - options: hoist_literals: false @@ -1478,198 +1477,198 @@ /usr/local/lib/python3.12/test/test_cprofile.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_crypt.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_csv.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_anon.py: +- options: {} + status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_anon.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_array_in_pointer.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_bitfields.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_cast.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_delattr.py: - options: rename_globals: true @@ -1677,168 +1676,168 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_errno.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_find.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_frombuffer.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_functions.py: - options: - remove_literal_statements: true remove_object_base: false rename_globals: true status: passing - options: remove_literal_statements: true remove_object_base: false - status: passing -- options: - remove_object_base: false rename_globals: true status: passing - options: remove_object_base: false status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: - options: remove_literal_statements: true + remove_object_base: false status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_init.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_init.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_internals.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_keeprefs.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_libc.py: - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_loading.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -1846,123 +1845,122 @@ /usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_objects.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_pointers.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_random_things.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -1971,23 +1969,26 @@ remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_repr.py: +- options: {} + status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -1995,65 +1996,75 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_strings.py: +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -2062,122 +2073,110 @@ remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_struct_fields.py: +/usr/local/lib/python3.12/test/test_ctypes/test_structures.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_structures.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_values.py: - options: remove_literal_statements: true - status: passing -- options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_values.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_win32.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_curses.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -2185,48 +2184,47 @@ - options: preserve_globals: - load_tests - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: preserve_globals: - load_tests + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_dbm_dumb.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_dbm_dumb.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm_gnu.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -2235,72 +2233,73 @@ remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm_ndbm.py: - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_decimal.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_decimal.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_decorators.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_defaultdict.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_deque.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_descr.py: - options: @@ -2332,7 +2331,6 @@ - F - G - d - rename_globals: true status: passing - options: hoist_literals: false @@ -2347,6 +2345,7 @@ - F - G - d + rename_globals: true status: passing - options: hoist_literals: false @@ -2364,32 +2363,22 @@ remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_dict_version.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_dictcomps.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_dictcomps.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_dictviews.py: - options: {} status: passing - options: @@ -2399,51 +2388,61 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_dictviews.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_difflib.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_difflib.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_doctest2.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_dynamic.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_doctest2.py: +- options: + rename_globals: true + status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_dynamic.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dynamicclassattribute.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -2452,87 +2451,89 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +- options: {} + status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: +/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_email/test_defect_handling.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_email/test_email.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_email/test_email.py: +- options: {} + status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_email/test_generator.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_email/test_generator.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_email/test_headerregistry.py: - options: remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_email/test_headerregistry.py: -- options: {} + rename_globals: true status: passing - options: rename_globals: true @@ -2540,79 +2541,74 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_email/test_inversion.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_email/test_message.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_parser.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_email/test_pickleable.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_email/test_policy.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_email/test_utils.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_email/test_utils.py: - options: remove_literal_statements: true status: passing @@ -2620,160 +2616,163 @@ remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_embed.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ensurepip.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ensurepip.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_enum.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_enumerate.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_eof.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_epoll.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_epoll.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_errno.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_except_star.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_exception_variations.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_exception_variations.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_faulthandler.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_fcntl.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -2783,95 +2782,93 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_file_eintr.py: - options: remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_filecmp.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_fileinput.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_fileio.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_fileutils.py: -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_fileutils.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_finalization.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_float.py: -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true @@ -2882,16 +2879,18 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_flufl.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -2899,6 +2898,8 @@ - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -2906,46 +2907,44 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_fork1.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_format.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_fractions.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_frozen.py: - options: @@ -2964,12 +2963,12 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -2978,67 +2977,67 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_functools.py: - options: remove_annotations: false remove_literal_statements: true + rename_globals: true status: passing - options: remove_annotations: false status: passing - options: remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: remove_annotations: false - rename_globals: true + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future_flags.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -3046,65 +3045,56 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_gc.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_gc.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_generator_stop.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_generator_stop.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_generators.py: - options: - preserve_globals: - - GeneratorTest - - conjoin - - Queens - - Knights - - func - - a - - b - - support preserve_locals: - conjoin - Queens @@ -3116,7 +3106,6 @@ - func - a remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -3131,6 +3120,15 @@ - a status: passing - options: + preserve_globals: + - GeneratorTest + - conjoin + - Queens + - Knights + - func + - a + - b + - support preserve_locals: - conjoin - Queens @@ -3141,7 +3139,7 @@ - call_throw - func - a - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: @@ -3163,18 +3161,19 @@ - call_throw - func - a + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genericalias.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -3185,7 +3184,7 @@ - Meta - C - C_is_none - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -3193,6 +3192,7 @@ - Meta - C - C_is_none + remove_literal_statements: true status: passing - options: preserve_locals: @@ -3200,8 +3200,6 @@ - Meta - C - C_is_none - remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -3209,6 +3207,7 @@ - Meta - C - C_is_none + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genericpath.py: @@ -3216,95 +3215,95 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_genexps.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_genexps.py: - options: preserve_globals: - load_tests rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_getopt.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_getpass.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_getpath.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_glob.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_global.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_grammar.py: - options: @@ -3323,6 +3322,8 @@ - k - Spam remove_annotations: false + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -3340,7 +3341,7 @@ - k - Spam remove_annotations: false - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -3358,7 +3359,7 @@ - k - Spam remove_annotations: false - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: @@ -3376,33 +3377,31 @@ - k - Spam remove_annotations: false - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_graphlib.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_grp.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_grp.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_gzip.py: @@ -3410,77 +3409,77 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_hash.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_hashlib.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_heapq.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_heapq.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_hmac.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_html.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true - status: passing -- options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_htmlparser.py: @@ -3488,96 +3487,93 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_http_cookiejar.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_http_cookies.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_httplib.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_httpservers.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_idle.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_imaplib.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_imghdr.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing @@ -3587,45 +3583,48 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true +/usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: +- options: {} status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: - options: rename_globals: true @@ -3633,273 +3632,265 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: -- options: {} - status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_path_hook.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/source/test_source_encoding.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/test_abc.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/test_api.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/test_lazy.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_locks.py: -- options: - rename_globals: true - status: passing -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_locks.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: - options: remove_literal_statements: true rename_globals: true @@ -3907,73 +3898,81 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/test_spec.py: -- options: {} +- options: + remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/test_spec.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_threaded_import.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_threaded_import.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/test_util.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_index.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -3981,199 +3980,202 @@ - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_int_literal.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_interpreters.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_io.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ioctl.py: [] -/usr/local/lib/python3.12/test/test_ipaddress.py: -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_ipaddress.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_isinstance.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_iter.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_iterlen.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_itertools.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_itertools.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_decode.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_default.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_json/test_dump.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_json/test_dump.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_json/test_enum.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_json/test_enum.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_fail.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_float.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: rename_globals: true status: passing @@ -4182,73 +4184,69 @@ status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_json/test_indent.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_json/test_indent.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing /usr/local/lib/python3.12/test/test_json/test_pass1.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_pass2.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_pass3.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_recursion.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_scanstring.py: @@ -4256,56 +4254,54 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_separators.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_json/test_speedups.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_tool.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_json/test_unicode.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_json/test_unicode.py: - options: remove_literal_statements: true rename_globals: true @@ -4316,69 +4312,71 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_keyword.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_keywordonlyarg.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_largefile.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: -- options: - remove_literal_statements: true - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_main.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: @@ -4386,115 +4384,115 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_linecache.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_list.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_listcomps.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_locale.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_long.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_longexp.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_longexp.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_lzma.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_mailbox.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -4503,35 +4501,35 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_marshal.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_math.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_math.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true @@ -4542,57 +4540,57 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_memoryio.py: - options: preserve_locals: - PickleTestMemIO - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - PickleTestMemIO + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - PickleTestMemIO remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - PickleTestMemIO - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_memoryview.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_mimetypes.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -4600,26 +4598,26 @@ /usr/local/lib/python3.12/test/test_minidom.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_mmap.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -4628,25 +4626,25 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_monitoring.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_monitoring.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_multibytecodec.py: @@ -4654,10 +4652,10 @@ remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -4665,13 +4663,13 @@ /usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -4679,67 +4677,67 @@ - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_netrc.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_netrc.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_nis.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_nntplib.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_numeric_tower.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_opcache.py: - options: preserve_locals: Class @@ -4752,145 +4750,148 @@ status: passing - options: preserve_locals: Class + rename_globals: true status: passing - options: preserve_locals: Class - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_opcodes.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_openpty.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_operator.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_optparse.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ordered_dict.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_ordered_dict.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pep646_syntax.py: - options: preserve_globals: - load_tests + remove_literal_statements: true rename_globals: true status: passing - options: - preserve_globals: - - load_tests remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true + preserve_globals: + - load_tests + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_perf_profiler.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_perfmaps.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pickle.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_picklebuffer.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_picklebuffer.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pickletools.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_pipes.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_pipes.py: - options: {} status: passing - options: @@ -4900,103 +4901,104 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_pkg.py: - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_pkgutil.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_pkgutil.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_platform.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_plistlib.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_plistlib.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_poll.py: - options: rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_poll.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_popen.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_popen.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_poplib.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_positional_only_arg.py: - options: convert_posargs_to_args: false + preserve_globals: + - global_pos_only_f + - global_pos_only_and_normal + - global_pos_only_defaults preserve_locals: - something - a @@ -5005,7 +5007,7 @@ - f - g remove_annotations: false - remove_literal_statements: true + rename_globals: true status: passing - options: convert_posargs_to_args: false @@ -5021,14 +5023,11 @@ - f - g remove_annotations: false + remove_literal_statements: true rename_globals: true status: passing - options: convert_posargs_to_args: false - preserve_globals: - - global_pos_only_f - - global_pos_only_and_normal - - global_pos_only_defaults preserve_locals: - something - a @@ -5037,8 +5036,6 @@ - f - g remove_annotations: false - remove_literal_statements: true - rename_globals: true status: passing - options: convert_posargs_to_args: false @@ -5050,78 +5047,79 @@ - f - g remove_annotations: false + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_pow.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_print.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_print.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_profile.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_profile.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_property.py: -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_property.py: - options: preserve_globals: - PropertyUnreachableAttributeNoName - PropertyUnreachableAttributeWithName - remove_literal_statements: true rename_globals: true status: passing - options: preserve_globals: - PropertyUnreachableAttributeNoName - PropertyUnreachableAttributeWithName + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_pstats.py: - options: preserve_locals: - pass1 - pass2 - pass3 + rename_globals: true status: passing - options: preserve_locals: - pass1 - pass2 - pass3 - remove_literal_statements: true status: passing - options: preserve_locals: @@ -5129,56 +5127,58 @@ - pass2 - pass3 remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - pass1 - pass2 - pass3 + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pty.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pulldom.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pwd.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_py_compile.py: - options: remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_py_compile.py: -- options: {} + rename_globals: true status: passing - options: rename_globals: true @@ -5186,49 +5186,45 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_pyclbr.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pyexpat.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_queue.py: +- options: {} + status: passing - options: preserve_globals: - import_helper - threading - threading_helper - unittest - rename_globals: true - status: passing -- options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: preserve_globals: @@ -5236,31 +5232,33 @@ - threading - threading_helper - unittest - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_quopri.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_quopri.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_raise.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -5283,37 +5281,37 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_re.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_readline.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -5322,33 +5320,33 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_reprlib.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_reprlib.py: - options: preserve_globals: - ClassWithFailingRepr - ReprTests - rename_globals: true - status: passing -- options: remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: - ClassWithFailingRepr - ReprTests - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_resource.py: - options: remove_literal_statements: true @@ -5386,39 +5384,39 @@ /usr/local/lib/python3.12/test/test_rlcompleter.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_robotparser.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_sax.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -5426,102 +5424,94 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_scope.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_script_helper.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_secrets.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_select.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_selectors.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -- options: - remove_literal_statements: true - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_set.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_set.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_setcomps.py: - options: {} status: passing - options: - preserve_globals: - - doctests - - load_tests + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_setcomps.py: - options: preserve_globals: - doctests @@ -5532,129 +5522,135 @@ - options: remove_literal_statements: true status: passing +- options: + preserve_globals: + - doctests + - load_tests + rename_globals: true + status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_shelve.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_shlex.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_signal.py: - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_signal.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_site.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_site.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_slice.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_slice.py: - options: remove_literal_statements: true - status: passing -- options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_smtpnet.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_smtpnet.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sndhdr.py: -- options: - remove_literal_statements: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sndhdr.py: - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_socket.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_socket.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_socketserver.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_socketserver.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_sort.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_sort.py: +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -5662,17 +5658,19 @@ - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_source_encoding.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_source_encoding.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_spwd.py: @@ -5689,95 +5687,94 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_backup.py: -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_hooks.py: - options: preserve_locals: - bad_progress - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - bad_progress - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - bad_progress + remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - bad_progress - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_types.py: +- options: {} + status: passing - options: remove_literal_statements: true status: passing @@ -5785,110 +5782,111 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ssl.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ssl.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_stable_abi_ctypes.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_statistics.py: +- options: {} + status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_statistics.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_strftime.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_strftime.py: - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_string.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_string.py: +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_string_literals.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_stringprep.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_strptime.py: @@ -5896,38 +5894,38 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_strtod.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_struct.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_struct.py: - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_structseq.py: @@ -5935,14 +5933,14 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_subclassinit.py: - options: preserve_locals: @@ -5950,7 +5948,6 @@ - NotGoingToWork - Descriptor remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -5971,8 +5968,12 @@ - NotGoingToWork - Descriptor remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_subprocess.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: @@ -5982,120 +5983,105 @@ - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing /usr/local/lib/python3.12/test/test_sunau.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_sundry.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_super.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_support.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_symtable.py: -- options: rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_symtable.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_syntax.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_syntax.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_sys_setprofile.py: - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sysconfig.py: +/usr/local/lib/python3.12/test/test_sys_setprofile.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_sysconfig.py: [] /usr/local/lib/python3.12/test/test_syslog.py: +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -6107,24 +6093,24 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_tcl.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -6132,57 +6118,56 @@ - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tempfile.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_termios.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_textwrap.py: - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_thread.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -6191,100 +6176,101 @@ remove_literal_statements: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_threadedtempfile.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_threading_local.py: - options: remove_literal_statements: true - rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_threadsignals.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_threadsignals.py: +- options: {} + status: passing - options: preserve_globals: - setUpModule - remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -- options: {} - status: passing - options: preserve_globals: - setUpModule + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_time.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_timeit.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_timeout.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tokenize.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -6292,12 +6278,12 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing @@ -6306,81 +6292,83 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_tuple.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_turtle.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_aliases.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_annotations.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_cache.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_comments.py: -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true @@ -6388,39 +6376,38 @@ - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_type_params.py: - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_type_params.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_typechecks.py: - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_typechecks.py: -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_types.py: - options: remove_annotations: false + remove_literal_statements: true rename_globals: true status: passing - options: @@ -6428,7 +6415,6 @@ status: passing - options: remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: @@ -6438,52 +6424,52 @@ /usr/local/lib/python3.12/test/test_ucn.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_unary.py: -- options: - remove_literal_statements: true +- options: {} status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_unicode.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_unicode_identifiers.py: - options: preserve_locals: - Unicode remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: - Unicode + remove_literal_statements: true rename_globals: true status: passing - options: @@ -6493,51 +6479,51 @@ - options: preserve_locals: - Unicode - remove_literal_statements: true - status: passing -/usr/local/lib/python3.12/test/test_unicodedata.py: -- options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unicodedata.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_assertions.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_async_case.py: - options: - preserve_globals: - - tearDownModule - - MyException - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing - options: + preserve_globals: + - tearDownModule + - MyException remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: - tearDownModule - MyException - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_break.py: @@ -6546,37 +6532,37 @@ status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_discovery.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_loader.py: @@ -6584,36 +6570,36 @@ preserve_locals: - MyTest - MyTestCase + rename_globals: true status: passing - options: preserve_locals: - MyTest - MyTestCase - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - MyTest - MyTestCase remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - MyTest - MyTestCase - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_program.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -6627,6 +6613,8 @@ status: passing /usr/local/lib/python3.12/test/test_unittest/test_runner.py: - options: + preserve_globals: + - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6635,10 +6623,9 @@ - foo - bar remove_literal_statements: true + rename_globals: true status: passing - options: - preserve_globals: - - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6646,11 +6633,9 @@ - exc2 - foo - bar - rename_globals: true + remove_literal_statements: true status: passing - options: - preserve_globals: - - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6658,10 +6643,10 @@ - exc2 - foo - bar - remove_literal_statements: true - rename_globals: true status: passing - options: + preserve_globals: + - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6669,21 +6654,14 @@ - exc2 - foo - bar - status: passing -/usr/local/lib/python3.12/test/test_unittest/test_setups.py: -- options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unittest/test_setups.py: - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_unittest/test_skipping.py: - options: remove_literal_statements: true rename_globals: true @@ -6691,153 +6669,161 @@ - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unittest/test_skipping.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_unittest/test_suite.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unittest/test_suite.py: - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_univnewlines.py: - options: {} status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_unparse.py: +/usr/local/lib/python3.12/test/test_univnewlines.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_urllib2.py: +/usr/local/lib/python3.12/test/test_unparse.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_urllib2_localnet.py: +/usr/local/lib/python3.12/test/test_urllib2.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_urllib2_localnet.py: - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_urllib2net.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_urllib2net.py: - options: - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_urllib_response.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_urllib_response.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_urllibnet.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_urlparse.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_userdict.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_userlist.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_userstring.py: - options: @@ -6846,16 +6832,13 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_utf8_mode.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_utf8_mode.py: - options: remove_literal_statements: true status: passing @@ -6865,43 +6848,46 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_utf8source.py: -- options: {} - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_utf8source.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_uu.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_uu.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_uuid.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_uuid.py: - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_venv.py: @@ -6909,14 +6895,14 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_wait3.py: - options: rename_globals: true @@ -6935,36 +6921,36 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_wave.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_weakref.py: - options: preserve_locals: - MyConfig + remove_literal_statements: true status: passing - options: preserve_locals: - MyConfig - remove_literal_statements: true status: passing - options: preserve_globals: @@ -6986,37 +6972,37 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_webbrowser.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_with.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -7028,7 +7014,6 @@ - options: preserve_locals: - CustomException - remove_literal_statements: true rename_globals: true status: passing - options: @@ -7039,6 +7024,7 @@ - options: preserve_locals: - CustomException + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_xdrlib.py: @@ -7049,51 +7035,51 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_xml_etree.py: - options: - preserve_globals: - - setUpModule - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing - options: preserve_globals: - setUpModule - remove_literal_statements: true rename_globals: true status: passing - options: + preserve_globals: + - setUpModule remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_xml_etree_c.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: {} status: passing @@ -7102,26 +7088,26 @@ remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_xxtestfuzz.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_yield_from.py: - options: @@ -7133,13 +7119,13 @@ preserve_locals: - spam - eggs - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - spam - eggs - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -7149,30 +7135,30 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipapp.py: +- options: {} + status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: {} status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipfile/test_core.py: -- options: {} - status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_zipfile64.py: - options: @@ -7181,47 +7167,52 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_zipimport_support.py: - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_zipimport_support.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zlib.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: rename_globals: true status: passing +- options: {} + status: passing - options: remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo.py: - options: + preserve_globals: + - setUpModule + - tearDownModule preserve_locals: - ZISubclass remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - ZISubclass + remove_literal_statements: true status: passing - options: preserve_globals: @@ -7232,24 +7223,19 @@ rename_globals: true status: passing - options: - preserve_globals: - - setUpModule - - tearDownModule preserve_locals: - ZISubclass - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: -- options: {} - status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing From 8af0d1f59ec74448b5473e37607fcf9d42349a67 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Wed, 7 Aug 2024 15:37:35 +0100 Subject: [PATCH 41/53] knock out another one that doesn't work in CI --- xtest/manifests/python3.12_test_manifest.yaml | 2673 ++++++++--------- 1 file changed, 1330 insertions(+), 1343 deletions(-) diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index ffffa83c..4c143483 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -1,61 +1,61 @@ /usr/local/lib/python3.12/test/leakers/test_ctypes.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/leakers/test_selftype.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_a.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/regrtestdata/import_from_tests/test_regrtest_c.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test___all__.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -65,55 +65,55 @@ status: passing /usr/local/lib/python3.12/test/test__locale.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test__opcode.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test__xxinterpchannels.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test__xxsubinterpreters.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_abc.py: - options: @@ -150,10 +150,10 @@ status: passing /usr/local/lib/python3.12/test/test_abstract_numbers.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -163,6 +163,7 @@ status: passing /usr/local/lib/python3.12/test/test_aifc.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -171,39 +172,36 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_argparse.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_array.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ast.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true @@ -211,14 +209,16 @@ - options: remove_literal_statements: true status: passing -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncgen.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -229,12 +229,12 @@ /usr/local/lib/python3.12/test/test_asyncio/test_buffered_proto.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -242,12 +242,12 @@ /usr/local/lib/python3.12/test/test_asyncio/test_context.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -255,21 +255,17 @@ /usr/local/lib/python3.12/test/test_asyncio/test_eager_task_factory.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: - options: - preserve_locals: future - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_futures2.py: - options: preserve_locals: future remove_literal_statements: true @@ -281,31 +277,36 @@ status: passing - options: preserve_locals: future + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: - options: - remove_literal_statements: true + preserve_locals: future status: passing +/usr/local/lib/python3.12/test/test_asyncio/test_locks.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_pep492.py: - options: preserve_locals: - foo - spam + rename_globals: true status: passing - options: preserve_locals: - foo - spam - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: @@ -318,7 +319,6 @@ preserve_locals: - foo - spam - remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_proactor_events.py: - options: @@ -328,43 +328,43 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_asyncio/test_protocols.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_queues.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_asyncio/test_runners.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -375,64 +375,64 @@ /usr/local/lib/python3.12/test/test_asyncio/test_selector_events.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_sendfile.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_server.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_sock_lowlevel.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_asyncio/test_ssl.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -440,15 +440,15 @@ /usr/local/lib/python3.12/test/test_asyncio/test_sslproto.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_subprocess.py: - options: @@ -470,38 +470,38 @@ /usr/local/lib/python3.12/test/test_asyncio/test_taskgroups.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_threads.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_asyncio/test_timeouts.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -509,33 +509,31 @@ /usr/local/lib/python3.12/test/test_asyncio/test_transports.py: - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_asyncio/test_waitfor.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_atexit.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true @@ -543,192 +541,195 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_audioop.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_audioop.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_audit.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_audit.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_augassign.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_base64.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_baseexception.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_bigaddrspace.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bigaddrspace.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_bigmem.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bigmem.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_binascii.py: - options: {} status: passing - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_binascii.py: - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_binop.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_binop.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_bisect.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_bisect.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_bool.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_bool.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_buffer.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_buffer.py: - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_bufio.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_builtin.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_bytes.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -737,35 +738,34 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_bz2.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_calendar.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_call.py: - options: convert_posargs_to_args: false @@ -779,7 +779,6 @@ convert_posargs_to_args: false preserve_locals: - arg - remove_literal_statements: true status: passing - options: convert_posargs_to_args: false @@ -794,13 +793,14 @@ convert_posargs_to_args: false preserve_locals: - arg + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_capi/test_abstract.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -809,11 +809,6 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_capi/test_bytearray.py: -- options: - rename_globals: true - status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing @@ -821,77 +816,79 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_bytes.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_bytes.py: - options: remove_literal_statements: true + rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_capi/test_codecs.py: - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_codecs.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_complex.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_capi/test_dict.py: +/usr/local/lib/python3.12/test/test_capi/test_complex.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_dict.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_eval_code_ex.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_float.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_float.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -899,30 +896,33 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_capi/test_getargs.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_getargs.py: - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_immortal.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_capi/test_immortal.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_capi/test_list.py: @@ -931,136 +931,136 @@ status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_capi/test_long.py: - options: - remove_literal_statements: true - status: passing -- options: {} - status: passing -- options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_mem.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_capi/test_mem.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_capi/test_set.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_set.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_structmembers.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_structmembers.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_sys.py: - options: remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_sys.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_unicode.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_capi/test_unicode.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_capi/test_watchers.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_capi/test_watchers.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_cgi.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_cgitb.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_charmapcodec.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -1069,169 +1069,169 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_class.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_cmath.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_cmath.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_cmd.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_cmd.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_cmd_line.py: - options: remove_literal_statements: true status: passing - options: {} - status: passing -/usr/local/lib/python3.12/test/test_cmd_line.py: + status: passings - options: rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -- options: {} - status: passings - options: remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_code_module.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codeccallbacks.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_codecencodings_cn.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codecencodings_cn.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_codecencodings_hk.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codecencodings_hk.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codecencodings_iso2022.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_codecencodings_jp.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_codecencodings_kr.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecencodings_tw.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_codecmaps_cn.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codecmaps_cn.py: +- options: + remove_literal_statements: true + status: passing - options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true @@ -1239,120 +1239,120 @@ status: passing /usr/local/lib/python3.12/test/test_codecmaps_hk.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecmaps_jp.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_codecmaps_kr.py: -- options: {} +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing +/usr/local/lib/python3.12/test/test_codecmaps_tw.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_codecmaps_tw.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_codecs.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_codecs.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_codeop.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_codeop.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_collections.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_collections.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_colorsys.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_compare.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_compiler_assemble.py: - options: @@ -1361,21 +1361,21 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_compiler_codegen.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true @@ -1383,31 +1383,32 @@ /usr/local/lib/python3.12/test/test_complex.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_configparser.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_configparser.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_contains.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -1416,34 +1417,33 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_context.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_copy.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_copyreg.py: - options: @@ -1460,10 +1460,6 @@ - options: hoist_literals: false status: passing -- options: - hoist_literals: false - remove_literal_statements: true - status: passing - options: hoist_literals: false preserve_globals: @@ -1474,34 +1470,39 @@ - unittest rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_cprofile.py: - options: + hoist_literals: false remove_literal_statements: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_cprofile.py: +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_crypt.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_csv.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -1510,12 +1511,9 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_anon.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing @@ -1523,6 +1521,8 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -1533,35 +1533,35 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_arrays.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_as_parameter.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -1569,39 +1569,39 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_buffers.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_bytes.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_byteswap.py: @@ -1611,10 +1611,10 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_callbacks.py: @@ -1622,46 +1622,46 @@ remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: - options: remove_literal_statements: true + rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_cast.py: - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_cfuncs.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_checkretval.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -1676,35 +1676,35 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_errno.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_find.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -1713,34 +1713,33 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_funcptr.py: - options: rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_functions.py: - options: + remove_literal_statements: true remove_object_base: false - rename_globals: true status: passing - options: - remove_literal_statements: true remove_object_base: false rename_globals: true status: passing @@ -1750,17 +1749,18 @@ - options: remove_literal_statements: true remove_object_base: false + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_incomplete.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -1771,49 +1771,49 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_internals.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_keeprefs.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_libc.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_loading.py: @@ -1824,33 +1824,33 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_ctypes/test_memfunctions.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_numbers.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -1858,72 +1858,70 @@ /usr/local/lib/python3.12/test/test_ctypes/test_objects.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_parameters.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_pep3118.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_pickling.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_pointers.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_prototypes.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true @@ -1931,18 +1929,20 @@ - options: remove_literal_statements: true status: passing -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_python_api.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -1950,21 +1950,16 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: - options: rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_refcounts.py: - options: remove_literal_statements: true status: passing @@ -1972,25 +1967,27 @@ remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_repr.py: - options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_repr.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_returnfuncptrs.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -1998,6 +1995,9 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_simplesubclasses.py: - options: remove_literal_statements: true @@ -2005,18 +2005,18 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_sizes.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -2027,39 +2027,39 @@ /usr/local/lib/python3.12/test/test_ctypes/test_slicing.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ctypes/test_stringptr.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_strings.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing @@ -2067,103 +2067,103 @@ - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_structures.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_unaligned_structures.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ctypes/test_unicode.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_values.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_values.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_ctypes/test_varsize_struct.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_win32.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_ctypes/test_wintypes.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -2172,13 +2172,13 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_datetime.py: - options: @@ -2189,63 +2189,63 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_dbm.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_dbm_dumb.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm_gnu.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_dbm_ndbm.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -2253,21 +2253,21 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_decorators.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -2277,30 +2277,30 @@ status: passing /usr/local/lib/python3.12/test/test_defaultdict.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_deque.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_descr.py: - options: hoist_literals: false @@ -2315,7 +2315,6 @@ - F - G - d - remove_literal_statements: true rename_globals: true status: passing - options: @@ -2331,6 +2330,7 @@ - F - G - d + remove_literal_statements: true status: passing - options: hoist_literals: false @@ -2345,6 +2345,7 @@ - F - G - d + remove_literal_statements: true rename_globals: true status: passing - options: @@ -2360,44 +2361,43 @@ - F - G - d - remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_dict_version.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_dictcomps.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_dictviews.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -2405,12 +2405,12 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -2422,111 +2422,111 @@ status: passing /usr/local/lib/python3.12/test/test_dynamic.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_dynamicclassattribute.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_email/test__encoded_words.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_email/test__header_value_parser.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_email/test_asian_codecs.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_email/test_contentmanager.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_defect_handling.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_email/test_email.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_email/test_generator.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -2535,14 +2535,14 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_email/test_inversion.py: - options: remove_literal_statements: true @@ -2550,48 +2550,48 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_email/test_message.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_email/test_parser.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_email/test_pickleable.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -2602,38 +2602,38 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_email/test_utils.py: - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_embed.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ensurepip.py: - options: remove_literal_statements: true @@ -2641,57 +2641,54 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_enum.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_enumerate.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_eof.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_epoll.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_epoll.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -2699,120 +2696,123 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_errno.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_errno.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_except_star.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_except_star.py: - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_exception_hierarchy.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_exception_variations.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_exception_variations.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_faulthandler.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_faulthandler.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_fcntl.py: - options: remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_fcntl.py: +- options: {} + status: passing - options: rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_file.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_file.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_file_eintr.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_filecmp.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -2823,138 +2823,138 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_fileio.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_fileutils.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_finalization.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_float.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_flufl.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_flufl.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_fnmatch.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_fnmatch.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_fork1.py: - options: remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_fork1.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_format.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_format.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_fractions.py: - options: remove_literal_statements: true + rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_fractions.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_frozen.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true @@ -2962,28 +2962,28 @@ /usr/local/lib/python3.12/test/test_fstring.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ftplib.py: +- options: {} + status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_functools.py: - options: @@ -2993,10 +2993,10 @@ status: passing - options: remove_annotations: false + rename_globals: true status: passing - options: remove_annotations: false - rename_globals: true status: passing - options: remove_annotations: false @@ -3005,93 +3005,93 @@ /usr/local/lib/python3.12/test/test_future_stmt/test_future.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future_flags.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_features.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_future_stmt/test_future_multiple_imports.py: +- options: + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_future_stmt/test_future_single_import.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_gc.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_generator_stop.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_generators.py: - options: @@ -3108,6 +3108,15 @@ remove_literal_statements: true status: passing - options: + preserve_globals: + - GeneratorTest + - conjoin + - Queens + - Knights + - func + - a + - b + - support preserve_locals: - conjoin - Queens @@ -3118,6 +3127,7 @@ - call_throw - func - a + rename_globals: true status: passing - options: preserve_globals: @@ -3139,18 +3149,10 @@ - call_throw - func - a + remove_literal_statements: true rename_globals: true status: passing - options: - preserve_globals: - - GeneratorTest - - conjoin - - Queens - - Knights - - func - - a - - b - - support preserve_locals: - conjoin - Queens @@ -3161,8 +3163,6 @@ - call_throw - func - a - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genericalias.py: - options: @@ -3171,10 +3171,10 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genericclass.py: @@ -3184,7 +3184,7 @@ - Meta - C - C_is_none - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: @@ -3192,7 +3192,6 @@ - Meta - C - C_is_none - remove_literal_statements: true status: passing - options: preserve_locals: @@ -3200,6 +3199,7 @@ - Meta - C - C_is_none + rename_globals: true status: passing - options: preserve_locals: @@ -3213,15 +3213,15 @@ /usr/local/lib/python3.12/test/test_genericpath.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_genexps.py: - options: @@ -3232,59 +3232,59 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: preserve_globals: - load_tests remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_getopt.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_getpass.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_getpath.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_glob.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3296,15 +3296,15 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_grammar.py: - options: preserve_locals: @@ -3322,7 +3322,6 @@ - k - Spam remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: @@ -3341,6 +3340,7 @@ - k - Spam remove_annotations: false + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3359,7 +3359,6 @@ - k - Spam remove_annotations: false - remove_literal_statements: true status: passing - options: preserve_locals: @@ -3377,13 +3376,14 @@ - k - Spam remove_annotations: false + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_graphlib.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3394,12 +3394,12 @@ /usr/local/lib/python3.12/test/test_grp.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -3409,24 +3409,24 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_hash.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -3435,24 +3435,24 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_heapq.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -3460,34 +3460,34 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_html.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_htmlparser.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3502,44 +3502,41 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_http_cookies.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_httplib.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_httplib.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_httpservers.py: - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_httpservers.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3547,6 +3544,9 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_idle.py: - options: remove_literal_statements: true @@ -3554,53 +3554,54 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_imaplib.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_imghdr.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/builtin/test_finder.py: +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_importlib/builtin/test_loader.py: -- options: {} +- options: + rename_globals: true status: passing - options: remove_literal_statements: true @@ -3609,24 +3610,24 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_finder.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_loader.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -3635,201 +3636,200 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/extension/test_path_hook.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_finder.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/frozen/test_loader.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___loader__.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test___package__.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_api.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_caching.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_fromlist.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_meta_path.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_packages.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_path.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/import_/test_relative_imports.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/resources/test_reader.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_finder.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_importlib/source/test_path_hook.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -3837,25 +3837,25 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_importlib/test_abc.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -3864,59 +3864,57 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/test_lazy.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/test_lazy.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_importlib/test_locks.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_locks.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_namespace_pkgs.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_importlib/test_pkg_import.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -3924,16 +3922,18 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_importlib/test_spec.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -3942,25 +3942,25 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_importlib/test_util.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_importlib/test_util.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_index.py: @@ -3970,10 +3970,10 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_int.py: @@ -3983,10 +3983,10 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_int_literal.py: @@ -3994,33 +3994,33 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_interpreters.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_io.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -4030,23 +4030,23 @@ status: passing /usr/local/lib/python3.12/test/test_ipaddress.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_isinstance.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -4058,19 +4058,17 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_iterlen.py: -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true @@ -4078,59 +4076,61 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_itertools.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_itertools.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_json/test_decode.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_json/test_decode.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_json/test_default.py: - options: rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_json/test_default.py: - options: remove_literal_statements: true status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_json/test_dump.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_encode_basestring_ascii.py: - options: @@ -4139,87 +4139,87 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_enum.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_json/test_fail.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_float.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_indent.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_json/test_pass1.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_json/test_pass1.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_pass2.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -4227,15 +4227,15 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_json/test_recursion.py: - options: remove_literal_statements: true @@ -4243,38 +4243,38 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_scanstring.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_json/test_separators.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_json/test_speedups.py: - options: remove_literal_statements: true @@ -4283,46 +4283,46 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_json/test_tool.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_json/test_unicode.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_keyword.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -4332,26 +4332,26 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_largefile.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_largefile.py: +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_lib2to3/test_fixers.py: - options: @@ -4359,45 +4359,42 @@ status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_lib2to3/test_main.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_lib2to3/test_refactor.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_linecache.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_linecache.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -4405,12 +4402,12 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_list.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_list.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -4418,103 +4415,106 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_listcomps.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_locale.py: - options: rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_locale.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing /usr/local/lib/python3.12/test/test_long.py: - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_longexp.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_lzma.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_mailbox.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_mailcap.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_marshal.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -4529,22 +4529,22 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_math_property.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -4574,72 +4574,72 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_mimetypes.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_minidom.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_mmap.py: -- options: - remove_literal_statements: true +- options: {} status: passing +/usr/local/lib/python3.12/test/test_mmap.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_modulefinder.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_modulefinder.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_monitoring.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_monitoring.py: - options: {} status: passing +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing @@ -4655,33 +4655,33 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_multiprocessing_main_handling.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_named_expressions.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -4690,54 +4690,54 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_nis.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_nis.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true + status: passing +- options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_nntplib.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_numeric_tower.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_numeric_tower.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_opcache.py: - options: preserve_locals: Class @@ -4746,37 +4746,37 @@ status: passing - options: preserve_locals: Class - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: Class - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: Class status: passing /usr/local/lib/python3.12/test/test_opcodes.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_openpty.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true @@ -4784,26 +4784,26 @@ /usr/local/lib/python3.12/test/test_operator.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_optparse.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -4811,12 +4811,12 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -4827,54 +4827,49 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing -- options: {} - status: passing - options: preserve_globals: - load_tests rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_perf_profiler.py: - options: remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_perf_profiler.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_perfmaps.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_perfmaps.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_pickle.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_picklebuffer.py: +/usr/local/lib/python3.12/test/test_pickle.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_picklebuffer.py: - options: remove_literal_statements: true status: passing @@ -4882,6 +4877,11 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_pickletools.py: - options: remove_literal_statements: true @@ -4890,115 +4890,111 @@ status: passing /usr/local/lib/python3.12/test/test_pipes.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_pkg.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pkgutil.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_platform.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_plistlib.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_poll.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_popen.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_poplib.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_positional_only_arg.py: - options: convert_posargs_to_args: false - preserve_globals: - - global_pos_only_f - - global_pos_only_and_normal - - global_pos_only_defaults preserve_locals: - something - a @@ -5007,7 +5003,7 @@ - f - g remove_annotations: false - rename_globals: true + remove_literal_statements: true status: passing - options: convert_posargs_to_args: false @@ -5023,7 +5019,6 @@ - f - g remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: @@ -5039,6 +5034,10 @@ status: passing - options: convert_posargs_to_args: false + preserve_globals: + - global_pos_only_f + - global_pos_only_and_normal + - global_pos_only_defaults preserve_locals: - something - a @@ -5048,17 +5047,18 @@ - g remove_annotations: false remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pow.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5066,67 +5066,67 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_profile.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_property.py: +- options: {} + status: passing - options: preserve_globals: - PropertyUnreachableAttributeNoName - PropertyUnreachableAttributeWithName + remove_literal_statements: true rename_globals: true status: passing - options: preserve_globals: - PropertyUnreachableAttributeNoName - PropertyUnreachableAttributeWithName - remove_literal_statements: true rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_pstats.py: - options: preserve_locals: - pass1 - pass2 - pass3 - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - pass1 - pass2 - pass3 + rename_globals: true status: passing - options: preserve_locals: - pass1 - pass2 - pass3 - remove_literal_statements: true status: passing - options: preserve_locals: @@ -5137,116 +5137,116 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_pty.py: +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_pulldom.py: - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_pulldom.py: - options: remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_pwd.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_pwd.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_py_compile.py: - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_py_compile.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_pyclbr.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_pyclbr.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_pyexpat.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_pyexpat.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing -/usr/local/lib/python3.12/test/test_queue.py: - options: {} status: passing +/usr/local/lib/python3.12/test/test_queue.py: - options: preserve_globals: - import_helper - threading - threading_helper - unittest - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: preserve_globals: - import_helper - threading - threading_helper - unittest + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_quopri.py: - options: remove_literal_statements: true + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_quopri.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: rename_globals: true status: passing @@ -5254,51 +5254,51 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_random.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_range.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_range.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_re.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5309,10 +5309,10 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_repl.py: @@ -5320,13 +5320,13 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing - options: remove_literal_statements: true status: passing -- options: {} +- options: + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_reprlib.py: - options: @@ -5342,17 +5342,14 @@ - ReprTests rename_globals: true status: passing -- options: - remove_literal_statements: true - status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_resource.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_resource.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -5360,15 +5357,18 @@ status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_richcmp.py: - options: preserve_locals: - Spam + rename_globals: true status: passing - options: preserve_locals: - Spam - remove_literal_statements: true status: passing - options: preserve_locals: @@ -5379,7 +5379,7 @@ - options: preserve_locals: - Spam - rename_globals: true + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_rlcompleter.py: - options: @@ -5388,100 +5388,100 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_robotparser.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_sax.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_sched.py: - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sched.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_scope.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_scope.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_script_helper.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_secrets.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_secrets.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_select.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5490,14 +5490,14 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_set.py: - options: rename_globals: true @@ -5505,12 +5505,12 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_setcomps.py: - options: preserve_globals: @@ -5519,8 +5519,7 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - remove_literal_statements: true +- options: {} status: passing - options: preserve_globals: @@ -5528,53 +5527,51 @@ - load_tests rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_shelve.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_shelve.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_shlex.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_shlex.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_signal.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_signal.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_site.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_site.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -5582,55 +5579,58 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_slice.py: - options: - remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_slice.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_smtpnet.py: - options: remove_literal_statements: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_smtpnet.py: +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sndhdr.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_socket.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5641,48 +5641,48 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_sort.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_source_encoding.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_spwd.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -5693,35 +5693,35 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_cli.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: - options: remove_literal_statements: true status: passing -- options: {} +/usr/local/lib/python3.12/test/test_sqlite3/test_factory.py: +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -5734,47 +5734,45 @@ - options: preserve_locals: - bad_progress - rename_globals: true status: passing - options: preserve_locals: - bad_progress - remove_literal_statements: true rename_globals: true status: passing - options: preserve_locals: - bad_progress - status: passing -/usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: -- options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sqlite3/test_regression.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_transactions.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_types.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing @@ -5782,28 +5780,30 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_sqlite3/test_userfunctions.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_ssl.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -5818,83 +5818,80 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_statistics.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_strftime.py: -- options: {} - status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_string.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -- options: - remove_literal_statements: true - rename_globals: true +/usr/local/lib/python3.12/test/test_string.py: +- options: {} status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_string_literals.py: - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing +/usr/local/lib/python3.12/test/test_string_literals.py: +- options: + rename_globals: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_stringprep.py: - options: remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_stringprep.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_strptime.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_strptime.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -5902,42 +5899,45 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_strtod.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_strtod.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_struct.py: - options: remove_literal_statements: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_struct.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true + status: passing +- options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_structseq.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -5971,70 +5971,70 @@ rename_globals: true status: passing /usr/local/lib/python3.12/test/test_subprocess.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sunau.py: - options: remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sunau.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing +- options: + remove_literal_statements: true + rename_globals: true + status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_sundry.py: - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_super.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_support.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_symtable.py: - options: remove_literal_statements: true @@ -6042,16 +6042,13 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_syntax.py: -- options: - remove_literal_statements: true - status: passing - options: {} status: passing - options: @@ -6061,12 +6058,12 @@ - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_sys_setprofile.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_sys_setprofile.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -6074,43 +6071,45 @@ status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_sysconfig.py: [] -/usr/local/lib/python3.12/test/test_syslog.py: -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_syslog.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tabnanny.py: - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_tcl.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6121,22 +6120,22 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tempfile.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6145,50 +6144,50 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_textwrap.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_textwrap.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_thread.py: - options: rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_threadedtempfile.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6196,26 +6195,26 @@ - options: remove_literal_statements: true status: passing -- options: - remove_literal_statements: true - rename_globals: true +- options: {} status: passing - options: rename_globals: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_threadsignals.py: - options: remove_literal_statements: true + rename_globals: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_threadsignals.py: - options: preserve_globals: - setUpModule rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: preserve_globals: - setUpModule @@ -6224,14 +6223,14 @@ status: passing /usr/local/lib/python3.12/test/test_time.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6240,107 +6239,108 @@ remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true - status: passing - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_timeout.py: - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_timeout.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_tokenize.py: - options: - remove_literal_statements: true + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_tokenize.py: - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing /usr/local/lib/python3.12/test/test_ttk_textonly.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_tty.py: +- options: + remove_literal_statements: true + status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_tuple.py: - options: remove_literal_statements: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_tuple.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_turtle.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_turtle.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_aliases.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_annotations.py: - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} @@ -6349,28 +6349,27 @@ remove_literal_statements: true status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_type_cache.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_type_comments.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -6379,35 +6378,34 @@ - options: {} status: passing /usr/local/lib/python3.12/test/test_type_params.py: -- options: - remove_literal_statements: true - rename_globals: true - status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_typechecks.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_typechecks.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_types.py: - options: remove_annotations: false - remove_literal_statements: true rename_globals: true status: passing - options: @@ -6415,57 +6413,53 @@ status: passing - options: remove_annotations: false - rename_globals: true + remove_literal_statements: true status: passing - options: remove_annotations: false remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_ucn.py: - options: - remove_literal_statements: true + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_unary.py: -- options: {} - status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_unicode.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_unicode_identifiers.py: -- options: - preserve_locals: - - Unicode - remove_literal_statements: true - status: passing - options: preserve_locals: - Unicode @@ -6481,89 +6475,94 @@ - Unicode rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_unicodedata.py: - options: + preserve_locals: + - Unicode remove_literal_statements: true status: passing -- options: {} - status: passing +/usr/local/lib/python3.12/test/test_unicodedata.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_unittest/test_assertions.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_unittest/test_assertions.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing -/usr/local/lib/python3.12/test/test_unittest/test_async_case.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_unittest/test_async_case.py: - options: preserve_globals: - tearDownModule - MyException - remove_literal_statements: true rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing - options: preserve_globals: - tearDownModule - MyException + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_unittest/test_break.py: - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_discovery.py: - options: - remove_literal_statements: true + rename_globals: true status: passing -- options: {} +- options: + remove_literal_statements: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing +/usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_unittest/test_functiontestcase.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_loader.py: - options: @@ -6577,13 +6576,13 @@ - MyTest - MyTestCase remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - MyTest - MyTestCase remove_literal_statements: true - rename_globals: true status: passing - options: preserve_locals: @@ -6593,24 +6592,24 @@ /usr/local/lib/python3.12/test/test_unittest/test_program.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -/usr/local/lib/python3.12/test/test_unittest/test_result.py: -- options: {} +- options: + rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_unittest/test_result.py: - options: preserve_globals: - Test_TextTestResult rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_unittest/test_runner.py: - options: preserve_globals: @@ -6622,10 +6621,11 @@ - exc2 - foo - bar - remove_literal_statements: true rename_globals: true status: passing - options: + preserve_globals: + - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6634,6 +6634,7 @@ - foo - bar remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -6643,10 +6644,9 @@ - exc2 - foo - bar + remove_literal_statements: true status: passing - options: - preserve_globals: - - CustomError preserve_locals: - cleanup1 - cleanup2 @@ -6654,17 +6654,16 @@ - exc2 - foo - bar - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unittest/test_setups.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true @@ -6673,12 +6672,12 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -6686,34 +6685,34 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_univnewlines.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_unparse.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing - options: @@ -6723,42 +6722,42 @@ status: passing /usr/local/lib/python3.12/test/test_urllib2.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_urllib2_localnet.py: - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing /usr/local/lib/python3.12/test/test_urllib2net.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_urllib_response.py: - options: @@ -6767,22 +6766,22 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_urllibnet.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6790,38 +6789,38 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_userdict.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true + status: passing +- options: {} status: passing /usr/local/lib/python3.12/test/test_userlist.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -6832,12 +6831,12 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_utf8_mode.py: - options: remove_literal_statements: true @@ -6845,64 +6844,52 @@ - options: {} status: passing - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing /usr/local/lib/python3.12/test/test_utf8source.py: - options: - remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true rename_globals: true status: passing -- options: - rename_globals: true +- options: {} status: passing -/usr/local/lib/python3.12/test/test_uu.py: - options: remove_literal_statements: true - rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_uu.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true status: passing -- options: {} - status: passing -/usr/local/lib/python3.12/test/test_uuid.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing -- options: - remove_literal_statements: true - rename_globals: true - status: passing +/usr/local/lib/python3.12/test/test_uuid.py: - options: rename_globals: true status: passing -/usr/local/lib/python3.12/test/test_venv.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +/usr/local/lib/python3.12/test/test_venv.py: [] /usr/local/lib/python3.12/test/test_wait3.py: - options: rename_globals: true @@ -6910,43 +6897,45 @@ - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing /usr/local/lib/python3.12/test/test_wait4.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_wave.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_weakref.py: - options: + preserve_globals: + - FinalizeTestCase preserve_locals: - MyConfig - remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: @@ -6957,38 +6946,36 @@ - FinalizeTestCase preserve_locals: - MyConfig + remove_literal_statements: true rename_globals: true status: passing - options: - preserve_globals: - - FinalizeTestCase preserve_locals: - MyConfig remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_weakset.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_webbrowser.py: - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing - options: rename_globals: true @@ -6996,16 +6983,16 @@ /usr/local/lib/python3.12/test/test_with.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_wsgiref.py: - options: preserve_locals: @@ -7035,35 +7022,35 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing +/usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: - options: {} status: passing -/usr/local/lib/python3.12/test/test_xml_dom_minicompat.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: + remove_literal_statements: true rename_globals: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_xml_etree.py: -- options: - remove_literal_statements: true - status: passing -- options: {} - status: passing - options: preserve_globals: - setUpModule rename_globals: true status: passing +- options: + remove_literal_statements: true + status: passing +- options: {} + status: passing - options: preserve_globals: - setUpModule @@ -7073,39 +7060,39 @@ /usr/local/lib/python3.12/test/test_xml_etree_c.py: - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true status: passing - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_xxlimited.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing /usr/local/lib/python3.12/test/test_xxtestfuzz.py: - options: - remove_literal_statements: true rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing @@ -7114,29 +7101,27 @@ preserve_locals: - spam - eggs + rename_globals: true status: passing - options: preserve_locals: - spam - eggs remove_literal_statements: true + rename_globals: true status: passing - options: preserve_locals: - spam - eggs - rename_globals: true + remove_literal_statements: true status: passing - options: preserve_locals: - spam - eggs - remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipapp.py: -- options: {} - status: passing - options: remove_literal_statements: true status: passing @@ -7144,45 +7129,47 @@ remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipfile/test_core.py: - options: remove_literal_statements: true - rename_globals: true - status: passing -- options: - rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing +- options: + rename_globals: true + status: passing /usr/local/lib/python3.12/test/test_zipfile64.py: - options: rename_globals: true status: passing - options: remove_literal_statements: true + rename_globals: true status: passing - options: {} status: passing - options: remove_literal_statements: true - rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zipimport_support.py: - options: remove_literal_statements: true status: passing -- options: {} - status: passing - options: remove_literal_statements: true rename_globals: true status: passing +- options: {} + status: passing - options: rename_globals: true status: passing @@ -7192,27 +7179,26 @@ rename_globals: true status: passing - options: - rename_globals: true + remove_literal_statements: true status: passing - options: {} status: passing - options: - remove_literal_statements: true + rename_globals: true status: passing /usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo.py: - options: - preserve_globals: - - setUpModule - - tearDownModule preserve_locals: - ZISubclass - remove_literal_statements: true - rename_globals: true status: passing - options: + preserve_globals: + - setUpModule + - tearDownModule preserve_locals: - ZISubclass remove_literal_statements: true + rename_globals: true status: passing - options: preserve_globals: @@ -7225,16 +7211,17 @@ - options: preserve_locals: - ZISubclass + remove_literal_statements: true status: passing /usr/local/lib/python3.12/test/test_zoneinfo/test_zoneinfo_property.py: - options: remove_literal_statements: true - status: passing -- options: {} + rename_globals: true status: passing - options: remove_literal_statements: true - rename_globals: true + status: passing +- options: {} status: passing - options: rename_globals: true From f236db30ce724f6a28c64f2a7d172d29dfe0239a Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 8 Aug 2024 17:15:36 +0100 Subject: [PATCH 42/53] Remove tests that rely on the behaviour of external systems --- xtest/manifests/python3.8_test_manifest.yaml | 10 +--------- xtest/manifests/python3.9_test_manifest.yaml | 10 +--------- 2 files changed, 2 insertions(+), 18 deletions(-) diff --git a/xtest/manifests/python3.8_test_manifest.yaml b/xtest/manifests/python3.8_test_manifest.yaml index 6b37bd1d..cef77a00 100644 --- a/xtest/manifests/python3.8_test_manifest.yaml +++ b/xtest/manifests/python3.8_test_manifest.yaml @@ -3793,15 +3793,7 @@ - options: remove_literal_statements: true rename_globals: true -/usr/lib64/python3.8/test/test_urllib2net.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true +/usr/lib64/python3.8/test/test_urllib2net.py: [] /usr/lib64/python3.8/test/test_urllib_response.py: - options: {} - options: diff --git a/xtest/manifests/python3.9_test_manifest.yaml b/xtest/manifests/python3.9_test_manifest.yaml index 7b6a551f..e3f60342 100644 --- a/xtest/manifests/python3.9_test_manifest.yaml +++ b/xtest/manifests/python3.9_test_manifest.yaml @@ -3738,15 +3738,7 @@ - options: remove_literal_statements: true rename_globals: true -/usr/local/lib/python3.9/test/test_urllib2net.py: -- options: {} -- options: - rename_globals: true -- options: - remove_literal_statements: true -- options: - remove_literal_statements: true - rename_globals: true +/usr/local/lib/python3.9/test/test_urllib2net.py: [] /usr/local/lib/python3.9/test/test_urllib_response.py: - options: {} - options: From 194b5fc016e980461a9ef47a16752d0de9c6dc6a Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 9 Aug 2024 17:12:35 +0100 Subject: [PATCH 43/53] Place Names bindings in load context within a ClassDef in non-local namespace --- src/python_minifier/rename/bind_names.py | 9 ++++----- src/python_minifier/rename/mapper.py | 7 +++++++ 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/python_minifier/rename/bind_names.py b/src/python_minifier/rename/bind_names.py index f4808cf7..1a2f586a 100644 --- a/src/python_minifier/rename/bind_names.py +++ b/src/python_minifier/rename/bind_names.py @@ -24,11 +24,6 @@ def get_binding(self, name, namespace): # nonlocal names should not create a binding in any context assert name not in namespace.nonlocal_names - if isinstance(namespace, ast.ClassDef): - binding = self.get_binding(name, get_nonlocal_namespace(namespace)) - binding.disallow_rename() - return binding - for binding in namespace.bindings: if binding.name == name: break @@ -43,6 +38,10 @@ def get_binding(self, name, namespace): # This is actually a syntax error - but we want the same syntax error after minifying! binding.disallow_rename() + if isinstance(namespace, ast.ClassDef): + # This name will become an attribute of the class, so it can't be renamed + binding.disallow_rename() + return binding def visit_Name(self, node): diff --git a/src/python_minifier/rename/mapper.py b/src/python_minifier/rename/mapper.py index f2a98321..d21a1908 100644 --- a/src/python_minifier/rename/mapper.py +++ b/src/python_minifier/rename/mapper.py @@ -160,6 +160,13 @@ def add_parent(node, parent=None, namespace=None): if is_ast_node(node, 'Nonlocal'): namespace.nonlocal_names.update(node.names) + if isinstance(node, ast.Name): + if isinstance(namespace, ast.ClassDef): + if isinstance(node.ctx, ast.Load): + namespace.nonlocal_names.add(node.id) + elif isinstance(node.ctx, ast.Store) and isinstance(node.parent, ast.AugAssign): + namespace.nonlocal_names.add(node.id) + for child in ast.iter_child_nodes(node): add_parent(child, parent=node, namespace=namespace) From 1bec27f69efb734ebe294655d35380934322f58e Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 9 Aug 2024 17:35:34 +0100 Subject: [PATCH 44/53] Disallow renaming for non-local names used in class scope in store context They create a new binding in the class namespace --- src/python_minifier/rename/resolve_names.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/python_minifier/rename/resolve_names.py b/src/python_minifier/rename/resolve_names.py index d22a0211..25555fdc 100644 --- a/src/python_minifier/rename/resolve_names.py +++ b/src/python_minifier/rename/resolve_names.py @@ -47,7 +47,11 @@ def resolve_names(node): if isinstance(node, ast.Name) and isinstance(node.ctx, ast.Load): get_binding(node.id, node.namespace).add_reference(node) elif isinstance(node, ast.Name) and node.id in node.namespace.nonlocal_names: - get_binding(node.id, node.namespace).add_reference(node) + binding = get_binding(node.id, node.namespace) + binding.add_reference(node) + + if isinstance(node.ctx, ast.Store) and isinstance(node.namespace, ast.ClassDef): + binding.disallow_rename() elif isinstance(node, ast.ClassDef) and node.name in node.namespace.nonlocal_names: get_binding(node.name, node.namespace).add_reference(node) From 717d0e0e54082e1c1e57800d181fbd433ec2980a Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 17 Aug 2024 23:42:15 +0100 Subject: [PATCH 45/53] Add namespace tests --- src/python_minifier/__init__.py | 1 - src/python_minifier/rename/binding.py | 3 +- src/python_minifier/rename/util.py | 9 + test/test_bind_names.py | 679 ++++++++++++++++++++++++++ test/test_bind_names_python2.py | 654 +++++++++++++++++++++++++ test/test_bind_names_python33.py | 669 +++++++++++++++++++++++++ 6 files changed, 2012 insertions(+), 3 deletions(-) create mode 100644 test/test_bind_names.py create mode 100644 test/test_bind_names_python2.py create mode 100644 test/test_bind_names_python33.py diff --git a/src/python_minifier/__init__.py b/src/python_minifier/__init__.py index 79753a73..9863b791 100644 --- a/src/python_minifier/__init__.py +++ b/src/python_minifier/__init__.py @@ -228,7 +228,6 @@ def unparse(module): try: compare_ast(module, minified_module) except CompareError as compare_error: - print(printer.code) raise UnstableMinification(compare_error, '', printer.code) return printer.code diff --git a/src/python_minifier/rename/binding.py b/src/python_minifier/rename/binding.py index 49af234a..45ee4916 100644 --- a/src/python_minifier/rename/binding.py +++ b/src/python_minifier/rename/binding.py @@ -11,7 +11,6 @@ class Binding(object): :param name: A name for this binding :type name: str or None :param bool allow_rename: If this binding may be renamed - :param int rename_cost: The cost of renaming this binding in bytes, NOT including the difference in name lengths """ @@ -289,7 +288,7 @@ def __init__(self, name, *args, **kwargs): self.disallow_rename() def __repr__(self): - return self.__class__.__name__ + '(name=%r) ' % (self._name, len(self._references)) + return self.__class__.__name__ + '(name=%r, allow_rename=%r) ' % (self._name, self._allow_rename, len(self._references)) def should_rename(self, new_name): """ diff --git a/src/python_minifier/rename/util.py b/src/python_minifier/rename/util.py index b049c2ba..098ec24a 100644 --- a/src/python_minifier/rename/util.py +++ b/src/python_minifier/rename/util.py @@ -23,6 +23,15 @@ def create_is_namespace(): is_namespace = create_is_namespace() +def iter_child_namespaces(node): + + for child in ast.iter_child_nodes(node): + if is_namespace(child): + yield child + else: + for c in iter_child_namespaces(child): + yield c + def get_global_namespace(node): """ Return the global namespace for a node diff --git a/test/test_bind_names.py b/test/test_bind_names.py new file mode 100644 index 00000000..a3813eb7 --- /dev/null +++ b/test/test_bind_names.py @@ -0,0 +1,679 @@ +import ast +import sys + +import pytest + +from python_minifier.rename import add_namespace, resolve_names +from python_minifier.rename.bind_names import bind_names +from python_minifier.rename.util import iter_child_namespaces +from python_minifier.util import is_ast_node + + +def assert_namespace_tree(source, expected_tree): + tree = ast.parse(source) + + add_namespace(tree) + bind_names(tree) + resolve_names(tree) + + actual = print_namespace(tree) + + print(actual) + assert actual.strip() == expected_tree.strip() + + +def print_namespace(namespace, indent=''): + s = '' + + if not indent: + s += '\n' + + def namespace_name(node): + if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): + return 'Function ' + node.name + elif isinstance(node, ast.ClassDef): + return 'Class ' + node.name + else: + return namespace.__class__.__name__ + + s += indent + '+ ' + namespace_name(namespace) + '\n' + + for name in sorted(namespace.global_names): + s += indent + ' - global ' + name + '\n' + + for name in sorted(namespace.nonlocal_names): + s += indent + ' - nonlocal ' + name + '\n' + + for binding in namespace.bindings: + s += indent + ' - ' + repr(binding) + '\n' + + for child in iter_child_namespaces(namespace): + s += print_namespace(child, indent=indent + ' ') + + return s + +def test_module_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +name_in_module = True +name_in_module = True +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='name_in_module', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_lambda_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +name_in_module = True + +b = lambda arg, *args, **kwargs: arg + 1 +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='name_in_module', allow_rename=True) + - NameBinding(name='b', allow_rename=True) + + Lambda + - NameBinding(name='arg', allow_rename=False) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_function_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +name_in_module = True + +def func(arg, *args, **kwargs): + name_in_func = True + print(name_in_module) + + def inner_func(): + print(name_in_module) + name_in_inner_func = True +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='name_in_module', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + - BuiltinBinding(name='print', allow_rename=True) + + Function func + - NameBinding(name='arg', allow_rename=True) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) + - NameBinding(name='name_in_func', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) + + Function inner_func + - NameBinding(name='name_in_inner_func', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_async_function_namespace(): + if sys.version_info < (3, 5): + pytest.skip('No async functions in python < 3.5') + + source = ''' +name_in_module = True + +async def func(arg, *args, **kwargs): + name_in_func = True + print(name_in_module) + + async def inner_func(): + print(name_in_module) + name_in_inner_func = True +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='name_in_module', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + - BuiltinBinding(name='print', allow_rename=True) + + Function func + - NameBinding(name='arg', allow_rename=True) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) + - NameBinding(name='name_in_func', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) + + Function inner_func + - NameBinding(name='name_in_inner_func', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +# region generator namespace + +def test_generator_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +a = (x for x in range(10)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_generator_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = [] +f = [] +a = (x for x in f for x in x) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_generator_namespace_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = (c for line in file for c in line) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + GeneratorExp + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='c', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_generator(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = (c for c in (line for line in file)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + GeneratorExp + - NameBinding(name='c', allow_rename=True) + + GeneratorExp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_generator_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = '' +a = (x for x in (x for x in x)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +# endregion + + +# region setcomp + +def test_setcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +a = {x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_setcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = [] +f = [] +a = {x for x in f for x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_setcomp_namespace_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = {c for line in file for c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + SetComp + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='c', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_setcomp(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = {c for c in {line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + SetComp + - NameBinding(name='c', allow_rename=True) + + SetComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_setcomp_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = '' +a = {x for x in {x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +# endregion + +# region listcomp + +def test_listcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +a = [x for x in range(10)] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_listcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = [] +f = [] +a = [x for x in f for x in x] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_listcomp_namespace_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = [c for line in file for c in line] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + ListComp + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='c', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_listcomp(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a =[c for c in [line for line in file]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + ListComp + - NameBinding(name='c', allow_rename=True) + + ListComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_listcomp_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = '' +a =[x for x in [x for x in x]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +# endregion + +# region dictcomp + +def test_dictcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +a = {x: x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_dictcomp_namespace(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = [] +f = [] +a = {x: x for x, x in f for x, x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_multi_dictcomp_namespace_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for line, line in file for c, c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + DictComp + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='c', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_dictcomp(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for c, c in {line: line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + DictComp + - NameBinding(name='c', allow_rename=True) + + DictComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_nested_dictcomp_2(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +x = {} +a = {x:x for x, x in {x: x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='x', allow_rename=True) + - NameBinding(name='a', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + +# endregion + +def test_class_namespace(): + if sys.version_info < (3, 6): + pytest.skip('Annotations are not available in python < 3.6') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = ' World' + MyOtherName = OhALongName + ClassName: int + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + - BuiltinBinding(name='int', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - nonlocal int + - NameBinding(name='MyOtherName', allow_rename=False) + - NameBinding(name='ClassName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_name_rebinding(): + if sys.version_info < (3, 4): + pytest.skip('Test requires python 3.4 or later') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = OhALongName + ' World' + MyOtherName = OhALongName + + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - NameBinding(name='MyOtherName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + diff --git a/test/test_bind_names_python2.py b/test/test_bind_names_python2.py new file mode 100644 index 00000000..03f412d4 --- /dev/null +++ b/test/test_bind_names_python2.py @@ -0,0 +1,654 @@ +import ast +import sys + +import pytest + +from python_minifier.rename import add_namespace, resolve_names +from python_minifier.rename.bind_names import bind_names +from python_minifier.rename.util import iter_child_namespaces +from python_minifier.util import is_ast_node + + +def assert_namespace_tree(source, expected_tree): + tree = ast.parse(source) + + add_namespace(tree) + bind_names(tree) + resolve_names(tree) + + actual = print_namespace(tree) + + print(actual) + assert actual.strip() == expected_tree.strip() + + +def print_namespace(namespace, indent=''): + s = '' + + if not indent: + s += '\n' + + def namespace_name(node): + if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): + return 'Function ' + node.name + elif isinstance(node, ast.ClassDef): + return 'Class ' + node.name + else: + return namespace.__class__.__name__ + + s += indent + '+ ' + namespace_name(namespace) + '\n' + + for name in sorted(namespace.global_names): + s += indent + ' - global ' + name + '\n' + + for name in sorted(namespace.nonlocal_names): + s += indent + ' - nonlocal ' + name + '\n' + + for binding in sorted(namespace.bindings, key=lambda b: b.name): + s += indent + ' - ' + repr(binding) + '\n' + + for child in iter_child_namespaces(namespace): + s += print_namespace(child, indent=indent + ' ') + + return s + + +def test_module_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +name_in_module = True +name_in_module = True +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='True', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_lambda_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +name_in_module = 0 + +b = lambda arg, *args, **kwargs: arg + 1 +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='b', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) + + Lambda + - NameBinding(name='arg', allow_rename=False) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_function_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +name_in_module = True + +def func(arg, *args, **kwargs): + name_in_func = True + print(name_in_module) + + def inner_func(): + print(name_in_module) + name_in_inner_func = True +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='True', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) + + Function func + - NameBinding(name='arg', allow_rename=True) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) + - NameBinding(name='name_in_func', allow_rename=True) + + Function inner_func + - NameBinding(name='name_in_inner_func', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# region generator namespace + +def test_generator_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +a = (x for x in range(10)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_generator_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = [] +f = [] +a = (x for x in f for x in x) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_generator_namespace_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = (c for line in file for c in line) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + GeneratorExp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_generator(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = (c for c in (line for line in file)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + GeneratorExp + - NameBinding(name='c', allow_rename=True) + + GeneratorExp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_generator_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = '' +a = (x for x in (x for x in x)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + + +# region setcomp + +def test_setcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +a = {x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_setcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = [] +f = [] +a = {x for x in f for x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_setcomp_namespace_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c for line in file for c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + SetComp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_setcomp(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c for c in {line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + SetComp + - NameBinding(name='c', allow_rename=True) + + SetComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_setcomp_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = '' +a = {x for x in {x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +# region listcomp + +def test_listcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +a = [x for x in range(10)] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_listcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = [] +f = [] +a = [x for x in f for x in x] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_listcomp_namespace_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = [c for line in file for c in line] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_listcomp(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a =[c for c in [line for line in file]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_listcomp_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = '' +a =[x for x in [x for x in x]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +# region dictcomp + +def test_dictcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +a = {x: x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_dictcomp_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = [] +f = [] +a = {x: x for x, x in f for x, x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_dictcomp_namespace_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for line, line in file for c, c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + DictComp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_dictcomp(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for c, c in {line: line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=False) + - NameBinding(name='line', allow_rename=True) + + DictComp + - NameBinding(name='c', allow_rename=True) + + DictComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_dictcomp_2(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +x = {} +a = {x:x for x, x in {x: x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +def test_class_namespace(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = ' World' + MyOtherName = OhALongName + ClassName = 0 + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='func', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - NameBinding(name='ClassName', allow_rename=False) + - NameBinding(name='MyOtherName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_name_rebinding(): + if sys.version_info >= (3, 0): + pytest.skip('Test is for python 2 only') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = OhALongName + ' World' + MyOtherName = OhALongName + + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='func', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - NameBinding(name='MyOtherName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) diff --git a/test/test_bind_names_python33.py b/test/test_bind_names_python33.py new file mode 100644 index 00000000..d527d922 --- /dev/null +++ b/test/test_bind_names_python33.py @@ -0,0 +1,669 @@ +import ast +import sys + +import pytest + +from python_minifier.rename import add_namespace, resolve_names +from python_minifier.rename.bind_names import bind_names +from python_minifier.rename.util import iter_child_namespaces +from python_minifier.util import is_ast_node + + +def assert_namespace_tree(source, expected_tree): + tree = ast.parse(source) + + add_namespace(tree) + bind_names(tree) + resolve_names(tree) + + actual = print_namespace(tree) + + print(actual) + assert actual.strip() == expected_tree.strip() + + +def print_namespace(namespace, indent=''): + s = '' + + if not indent: + s += '\n' + + def namespace_name(node): + if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): + return 'Function ' + node.name + elif isinstance(node, ast.ClassDef): + return 'Class ' + node.name + else: + return namespace.__class__.__name__ + + s += indent + '+ ' + namespace_name(namespace) + '\n' + + for name in sorted(namespace.global_names): + s += indent + ' - global ' + name + '\n' + + for name in sorted(namespace.nonlocal_names): + s += indent + ' - nonlocal ' + name + '\n' + + for binding in sorted(namespace.bindings, key=lambda b: b.name): + s += indent + ' - ' + repr(binding) + '\n' + + for child in iter_child_namespaces(namespace): + s += print_namespace(child, indent=indent + ' ') + + return s + + +def test_module_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +name_in_module = True +name_in_module = True +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='True', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_lambda_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +name_in_module = 0 + +b = lambda arg, *args, **kwargs: arg + 1 +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='b', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) + + Lambda + - NameBinding(name='arg', allow_rename=False) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_function_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +name_in_module = True + +def func(arg, *args, **kwargs): + name_in_func = True + print(name_in_module) + + def inner_func(): + print(name_in_module) + name_in_inner_func = True +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='True', allow_rename=True) + - NameBinding(name='func', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) + - BuiltinBinding(name='print', allow_rename=True) + + Function func + - NameBinding(name='arg', allow_rename=True) + - NameBinding(name='args', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) + - NameBinding(name='kwargs', allow_rename=True) + - NameBinding(name='name_in_func', allow_rename=True) + + Function inner_func + - NameBinding(name='name_in_inner_func', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# region generator namespace + +def test_generator_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +a = (x for x in range(10)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_generator_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = [] +f = [] +a = (x for x in f for x in x) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_generator_namespace_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = (c for line in file for c in line) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + GeneratorExp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_generator(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = (c for c in (line for line in file)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + GeneratorExp + - NameBinding(name='c', allow_rename=True) + + GeneratorExp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_generator_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = '' +a = (x for x in (x for x in x)) +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) + + GeneratorExp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + + +# region setcomp + +def test_setcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +a = {x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_setcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = [] +f = [] +a = {x for x in f for x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_setcomp_namespace_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c for line in file for c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + SetComp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_setcomp(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c for c in {line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + SetComp + - NameBinding(name='c', allow_rename=True) + + SetComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_setcomp_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = '' +a = {x for x in {x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) + + SetComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +# region listcomp + +def test_listcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +a = [x for x in range(10)] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_listcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = [] +f = [] +a = [x for x in f for x in x] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_listcomp_namespace_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = [c for line in file for c in line] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + ListComp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_listcomp(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a =[c for c in [line for line in file]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + ListComp + - NameBinding(name='c', allow_rename=True) + + ListComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_listcomp_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = '' +a =[x for x in [x for x in x]] +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) + + ListComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +# region dictcomp + +def test_dictcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +a = {x: x for x in range(10)} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - BuiltinBinding(name='range', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_dictcomp_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = [] +f = [] +a = {x: x for x, x in f for x, x in x} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_multi_dictcomp_namespace_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for line, line in file for c, c in line} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + DictComp + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_dictcomp(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +c = '' +line = '' +file = [] +a = {c: c for c, c in {line: line for line in file}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='c', allow_rename=True) + - NameBinding(name='file', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + + DictComp + - NameBinding(name='c', allow_rename=True) + + DictComp + - NameBinding(name='line', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_nested_dictcomp_2(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +x = {} +a = {x:x for x, x in {x: x for x in x}} +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) + + DictComp + - NameBinding(name='x', allow_rename=True) +''' + + assert_namespace_tree(source, expected_namespaces) + + +# endregion + +def test_class_namespace(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = ' World' + MyOtherName = OhALongName + ClassName = 0 + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='func', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - NameBinding(name='ClassName', allow_rename=False) + - NameBinding(name='MyOtherName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_name_rebinding(): + if sys.version_info < (3, 3) or sys.version_info > (3, 4): + pytest.skip('Test is for python3.3 only') + + source = ''' +OhALongName = 'Hello' +OhALongName = 'Hello' +MyOtherName = 'World' + +def func(): + class C: + OhALongName = OhALongName + ' World' + MyOtherName = OhALongName + + +func() +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) + - NameBinding(name='func', allow_rename=True) + + Function func + - NameBinding(name='C', allow_rename=True) + + Class C + - nonlocal OhALongName + - NameBinding(name='MyOtherName', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) From c8c847e2f41ba735a8c7874d5fe6cb90dd824f90 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 30 Aug 2024 13:13:03 +0100 Subject: [PATCH 46/53] Make sure combined imports maintain the same namespace --- .../transforms/combine_imports.py | 11 +- test/helpers.py | 50 +++++++ test/test_bind_names.py | 129 ++++++------------ test/test_bind_names_python2.py | 51 +------ test/test_bind_names_python33.py | 51 +------ test/test_combine_imports.py | 80 +++++++++++ 6 files changed, 180 insertions(+), 192 deletions(-) create mode 100644 test/helpers.py diff --git a/src/python_minifier/transforms/combine_imports.py b/src/python_minifier/transforms/combine_imports.py index 5373b2ed..43384ec5 100644 --- a/src/python_minifier/transforms/combine_imports.py +++ b/src/python_minifier/transforms/combine_imports.py @@ -14,19 +14,22 @@ class CombineImports(SuiteTransformer): def _combine_import(self, node_list, parent): alias = [] + namespace = None for statement in node_list: + namespace = statement.namespace if isinstance(statement, ast.Import): alias += statement.names else: if alias: - yield self.add_child(ast.Import(names=alias), parent=parent) + yield self.add_child(ast.Import(names=alias), parent=parent, namespace=namespace) alias = [] yield statement if alias: - yield self.add_child(ast.Import(names=alias), parent=parent) + yield self.add_child(ast.Import(names=alias), parent=parent, namespace=namespace) + def _combine_import_from(self, node_list, parent): @@ -55,7 +58,7 @@ def combine(statement): else: if alias: yield self.add_child( - ast.ImportFrom(module=prev_import.module, names=alias, level=prev_import.level), parent=parent + ast.ImportFrom(module=prev_import.module, names=alias, level=prev_import.level), parent=parent, namespace=prev_import.namespace ) alias = [] @@ -63,7 +66,7 @@ def combine(statement): if alias: yield self.add_child( - ast.ImportFrom(module=prev_import.module, names=alias, level=prev_import.level), parent=parent + ast.ImportFrom(module=prev_import.module, names=alias, level=prev_import.level), parent=parent, namespace=prev_import.namespace ) def suite(self, node_list, parent): diff --git a/test/helpers.py b/test/helpers.py new file mode 100644 index 00000000..44efa8d2 --- /dev/null +++ b/test/helpers.py @@ -0,0 +1,50 @@ +import ast + +from python_minifier.rename import add_namespace, resolve_names +from python_minifier.rename.bind_names import bind_names +from python_minifier.rename.util import iter_child_namespaces +from python_minifier.util import is_ast_node + + +def assert_namespace_tree(source, expected_tree): + tree = ast.parse(source) + + add_namespace(tree) + bind_names(tree) + resolve_names(tree) + + actual = print_namespace(tree) + + print(actual) + assert actual.strip() == expected_tree.strip() + + +def print_namespace(namespace, indent=''): + s = '' + + if not indent: + s += '\n' + + def namespace_name(node): + if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): + return 'Function ' + node.name + elif isinstance(node, ast.ClassDef): + return 'Class ' + node.name + else: + return namespace.__class__.__name__ + + s += indent + '+ ' + namespace_name(namespace) + '\n' + + for name in sorted(namespace.global_names): + s += indent + ' - global ' + name + '\n' + + for name in sorted(namespace.nonlocal_names): + s += indent + ' - nonlocal ' + name + '\n' + + for binding in sorted(namespace.bindings, key=lambda b: b.name): + s += indent + ' - ' + repr(binding) + '\n' + + for child in iter_child_namespaces(namespace): + s += print_namespace(child, indent=indent + ' ') + + return s diff --git a/test/test_bind_names.py b/test/test_bind_names.py index a3813eb7..e5c4c1e3 100644 --- a/test/test_bind_names.py +++ b/test/test_bind_names.py @@ -1,57 +1,10 @@ -import ast import sys import pytest -from python_minifier.rename import add_namespace, resolve_names -from python_minifier.rename.bind_names import bind_names -from python_minifier.rename.util import iter_child_namespaces -from python_minifier.util import is_ast_node +from helpers import assert_namespace_tree -def assert_namespace_tree(source, expected_tree): - tree = ast.parse(source) - - add_namespace(tree) - bind_names(tree) - resolve_names(tree) - - actual = print_namespace(tree) - - print(actual) - assert actual.strip() == expected_tree.strip() - - -def print_namespace(namespace, indent=''): - s = '' - - if not indent: - s += '\n' - - def namespace_name(node): - if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): - return 'Function ' + node.name - elif isinstance(node, ast.ClassDef): - return 'Class ' + node.name - else: - return namespace.__class__.__name__ - - s += indent + '+ ' + namespace_name(namespace) + '\n' - - for name in sorted(namespace.global_names): - s += indent + ' - global ' + name + '\n' - - for name in sorted(namespace.nonlocal_names): - s += indent + ' - nonlocal ' + name + '\n' - - for binding in namespace.bindings: - s += indent + ' - ' + repr(binding) + '\n' - - for child in iter_child_namespaces(namespace): - s += print_namespace(child, indent=indent + ' ') - - return s - def test_module_namespace(): if sys.version_info < (3, 4): pytest.skip('Test requires python 3.4 or later') @@ -80,8 +33,8 @@ def test_lambda_namespace(): expected_namespaces = ''' + Module - - NameBinding(name='name_in_module', allow_rename=True) - NameBinding(name='b', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) + Lambda - NameBinding(name='arg', allow_rename=False) - NameBinding(name='args', allow_rename=True) @@ -108,15 +61,15 @@ def inner_func(): expected_namespaces = ''' + Module - - NameBinding(name='name_in_module', allow_rename=True) - NameBinding(name='func', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) - BuiltinBinding(name='print', allow_rename=True) + Function func - NameBinding(name='arg', allow_rename=True) - NameBinding(name='args', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) - NameBinding(name='kwargs', allow_rename=True) - NameBinding(name='name_in_func', allow_rename=True) - - NameBinding(name='inner_func', allow_rename=True) + Function inner_func - NameBinding(name='name_in_inner_func', allow_rename=True) ''' @@ -141,15 +94,15 @@ async def inner_func(): expected_namespaces = ''' + Module - - NameBinding(name='name_in_module', allow_rename=True) - NameBinding(name='func', allow_rename=True) + - NameBinding(name='name_in_module', allow_rename=True) - BuiltinBinding(name='print', allow_rename=True) + Function func - NameBinding(name='arg', allow_rename=True) - NameBinding(name='args', allow_rename=True) + - NameBinding(name='inner_func', allow_rename=True) - NameBinding(name='kwargs', allow_rename=True) - NameBinding(name='name_in_func', allow_rename=True) - - NameBinding(name='inner_func', allow_rename=True) + Function inner_func - NameBinding(name='name_in_inner_func', allow_rename=True) ''' @@ -188,9 +141,9 @@ def test_multi_generator_namespace(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - - NameBinding(name='f', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + GeneratorExp - NameBinding(name='x', allow_rename=True) ''' @@ -210,13 +163,13 @@ def test_multi_generator_namespace_2(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + GeneratorExp - - NameBinding(name='line', allow_rename=True) - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) ''' assert_namespace_tree(source, expected_namespaces) @@ -234,10 +187,10 @@ def test_nested_generator(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + GeneratorExp - NameBinding(name='c', allow_rename=True) + GeneratorExp @@ -257,8 +210,8 @@ def test_nested_generator_2(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + GeneratorExp - NameBinding(name='x', allow_rename=True) + GeneratorExp @@ -302,9 +255,9 @@ def test_multi_setcomp_namespace(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - - NameBinding(name='f', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + SetComp - NameBinding(name='x', allow_rename=True) ''' @@ -324,13 +277,13 @@ def test_multi_setcomp_namespace_2(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + SetComp - - NameBinding(name='line', allow_rename=True) - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) ''' assert_namespace_tree(source, expected_namespaces) @@ -348,10 +301,10 @@ def test_nested_setcomp(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + SetComp - NameBinding(name='c', allow_rename=True) + SetComp @@ -371,8 +324,8 @@ def test_nested_setcomp_2(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + SetComp - NameBinding(name='x', allow_rename=True) + SetComp @@ -415,9 +368,9 @@ def test_multi_listcomp_namespace(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - - NameBinding(name='f', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + ListComp - NameBinding(name='x', allow_rename=True) ''' @@ -437,13 +390,13 @@ def test_multi_listcomp_namespace_2(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + ListComp - - NameBinding(name='line', allow_rename=True) - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) ''' assert_namespace_tree(source, expected_namespaces) @@ -461,10 +414,10 @@ def test_nested_listcomp(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + ListComp - NameBinding(name='c', allow_rename=True) + ListComp @@ -484,8 +437,8 @@ def test_nested_listcomp_2(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + ListComp - NameBinding(name='x', allow_rename=True) + ListComp @@ -528,9 +481,9 @@ def test_multi_dictcomp_namespace(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - - NameBinding(name='f', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='f', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + DictComp - NameBinding(name='x', allow_rename=True) ''' @@ -550,13 +503,13 @@ def test_multi_dictcomp_namespace_2(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + DictComp - - NameBinding(name='line', allow_rename=True) - NameBinding(name='c', allow_rename=True) + - NameBinding(name='line', allow_rename=True) ''' assert_namespace_tree(source, expected_namespaces) @@ -574,10 +527,10 @@ def test_nested_dictcomp(): expected_namespaces = ''' + Module + - NameBinding(name='a', allow_rename=True) - NameBinding(name='c', allow_rename=True) - - NameBinding(name='line', allow_rename=True) - NameBinding(name='file', allow_rename=True) - - NameBinding(name='a', allow_rename=True) + - NameBinding(name='line', allow_rename=True) + DictComp - NameBinding(name='c', allow_rename=True) + DictComp @@ -597,8 +550,8 @@ def test_nested_dictcomp_2(): expected_namespaces = ''' + Module - - NameBinding(name='x', allow_rename=True) - NameBinding(name='a', allow_rename=True) + - NameBinding(name='x', allow_rename=True) + DictComp - NameBinding(name='x', allow_rename=True) + DictComp @@ -629,8 +582,8 @@ class C: expected_namespaces = ''' + Module - - NameBinding(name='OhALongName', allow_rename=False) - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) - NameBinding(name='func', allow_rename=True) - BuiltinBinding(name='int', allow_rename=True) + Function func @@ -638,8 +591,8 @@ class C: + Class C - nonlocal OhALongName - nonlocal int - - NameBinding(name='MyOtherName', allow_rename=False) - NameBinding(name='ClassName', allow_rename=False) + - NameBinding(name='MyOtherName', allow_rename=False) ''' assert_namespace_tree(source, expected_namespaces) @@ -665,8 +618,8 @@ class C: expected_namespaces = ''' + Module - - NameBinding(name='OhALongName', allow_rename=False) - NameBinding(name='MyOtherName', allow_rename=True) + - NameBinding(name='OhALongName', allow_rename=False) - NameBinding(name='func', allow_rename=True) + Function func - NameBinding(name='C', allow_rename=True) diff --git a/test/test_bind_names_python2.py b/test/test_bind_names_python2.py index 03f412d4..3c255316 100644 --- a/test/test_bind_names_python2.py +++ b/test/test_bind_names_python2.py @@ -1,57 +1,8 @@ -import ast import sys import pytest -from python_minifier.rename import add_namespace, resolve_names -from python_minifier.rename.bind_names import bind_names -from python_minifier.rename.util import iter_child_namespaces -from python_minifier.util import is_ast_node - - -def assert_namespace_tree(source, expected_tree): - tree = ast.parse(source) - - add_namespace(tree) - bind_names(tree) - resolve_names(tree) - - actual = print_namespace(tree) - - print(actual) - assert actual.strip() == expected_tree.strip() - - -def print_namespace(namespace, indent=''): - s = '' - - if not indent: - s += '\n' - - def namespace_name(node): - if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): - return 'Function ' + node.name - elif isinstance(node, ast.ClassDef): - return 'Class ' + node.name - else: - return namespace.__class__.__name__ - - s += indent + '+ ' + namespace_name(namespace) + '\n' - - for name in sorted(namespace.global_names): - s += indent + ' - global ' + name + '\n' - - for name in sorted(namespace.nonlocal_names): - s += indent + ' - nonlocal ' + name + '\n' - - for binding in sorted(namespace.bindings, key=lambda b: b.name): - s += indent + ' - ' + repr(binding) + '\n' - - for child in iter_child_namespaces(namespace): - s += print_namespace(child, indent=indent + ' ') - - return s - +from helpers import assert_namespace_tree def test_module_namespace(): if sys.version_info >= (3, 0): diff --git a/test/test_bind_names_python33.py b/test/test_bind_names_python33.py index d527d922..d0ab6b2b 100644 --- a/test/test_bind_names_python33.py +++ b/test/test_bind_names_python33.py @@ -1,57 +1,8 @@ -import ast import sys import pytest -from python_minifier.rename import add_namespace, resolve_names -from python_minifier.rename.bind_names import bind_names -from python_minifier.rename.util import iter_child_namespaces -from python_minifier.util import is_ast_node - - -def assert_namespace_tree(source, expected_tree): - tree = ast.parse(source) - - add_namespace(tree) - bind_names(tree) - resolve_names(tree) - - actual = print_namespace(tree) - - print(actual) - assert actual.strip() == expected_tree.strip() - - -def print_namespace(namespace, indent=''): - s = '' - - if not indent: - s += '\n' - - def namespace_name(node): - if is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')): - return 'Function ' + node.name - elif isinstance(node, ast.ClassDef): - return 'Class ' + node.name - else: - return namespace.__class__.__name__ - - s += indent + '+ ' + namespace_name(namespace) + '\n' - - for name in sorted(namespace.global_names): - s += indent + ' - global ' + name + '\n' - - for name in sorted(namespace.nonlocal_names): - s += indent + ' - nonlocal ' + name + '\n' - - for binding in sorted(namespace.bindings, key=lambda b: b.name): - s += indent + ' - ' + repr(binding) + '\n' - - for child in iter_child_namespaces(namespace): - s += print_namespace(child, indent=indent + ' ') - - return s - +from helpers import assert_namespace_tree def test_module_namespace(): if sys.version_info < (3, 3) or sys.version_info > (3, 4): diff --git a/test/test_combine_imports.py b/test/test_combine_imports.py index 37dfe26a..ec8933b9 100644 --- a/test/test_combine_imports.py +++ b/test/test_combine_imports.py @@ -1,6 +1,8 @@ import ast +from helpers import print_namespace from python_minifier import add_namespace +from python_minifier.rename import bind_names, resolve_names from python_minifier.transforms.combine_imports import CombineImports from python_minifier.ast_compare import compare_ast @@ -9,6 +11,19 @@ def combine_imports(module): CombineImports()(module) return module +def assert_namespace_tree(source, expected_tree): + tree = ast.parse(source) + + add_namespace(tree) + CombineImports()(tree) + bind_names(tree) + resolve_names(tree) + + actual = print_namespace(tree) + + print(actual) + assert actual.strip() == expected_tree.strip() + def test_import(): source = '''import builtins import collections''' @@ -81,3 +96,68 @@ def test_import_star(): expected_ast = ast.parse(expected) actual_ast = combine_imports(ast.parse(source)) compare_ast(expected_ast, actual_ast) + +def test_import_as_class_namespace(): + + source = ''' +class MyClass: + import os as Hello +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyClass', allow_rename=True) + + Class MyClass + - NameBinding(name='Hello', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_import_class_namespace(): + + source = ''' +class MyClass: + import Hello +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyClass', allow_rename=True) + + Class MyClass + - NameBinding(name='Hello', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_from_import_class_namespace(): + + source = ''' +class MyClass: + from hello import Hello +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyClass', allow_rename=True) + + Class MyClass + - NameBinding(name='Hello', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_from_import_as_class_namespace(): + + source = ''' +class MyClass: + from hello import babadook as Hello +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='MyClass', allow_rename=True) + + Class MyClass + - NameBinding(name='Hello', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + From 54d24366a457b453d8af31dbd00540aa7a1e853a Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 30 Aug 2024 18:30:22 +0100 Subject: [PATCH 47/53] Add a cleanup step for xtests --- .github/workflows/xtest.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/xtest.yaml b/.github/workflows/xtest.yaml index bebbab5f..1603c9eb 100644 --- a/.github/workflows/xtest.yaml +++ b/.github/workflows/xtest.yaml @@ -17,6 +17,11 @@ jobs: container: image: danielflook/python-minifier-build:${{ matrix.python }}-2024-01-12 steps: + - name: Cleanup + run: | + echo rm -vrf "$HOME/.*" "$HOME/*" "$GITHUB_WORKSPACE/.*" "$GITHUB_WORKSPACE/*" + rm -vrf "$HOME/.*" "$HOME/*" "$GITHUB_WORKSPACE/.*" "$GITHUB_WORKSPACE/*" + - name: Checkout uses: actions/checkout@v3 with: From 0b71b70097f48f4e1fd31ee9a552b4431c660819 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Fri, 30 Aug 2024 23:22:20 +0100 Subject: [PATCH 48/53] Log assertion errors from corpus --- corpus_test/generate_results.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/corpus_test/generate_results.py b/corpus_test/generate_results.py index a8c3fdf9..8e15c13c 100644 --- a/corpus_test/generate_results.py +++ b/corpus_test/generate_results.py @@ -1,5 +1,4 @@ import argparse -import datetime import gzip import os import sys @@ -63,6 +62,9 @@ def minify_corpus_entry(corpus_path, corpus_entry): result.time = end_time - start_time result.outcome = 'UnstableMinification' + except AssertionError as assertion_error: + result.outcome = 'Exception: AssertionError' + except Exception as exception: result.outcome = 'Exception: ' + str(exception) From b6ec2902986e548130b765ece69670a29b720f92 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 31 Aug 2024 09:30:15 +0100 Subject: [PATCH 49/53] Disallow renaming of names used in store context in class namespace These will become class attributes. This fixes situations where renaming was allowed due to the actual namebinding being placed in a nonlocal scope by a name in load context in the class scope. --- src/python_minifier/rename/resolve_names.py | 30 +- test/test_bind_names.py | 722 ++++++++++++++++++++ 2 files changed, 744 insertions(+), 8 deletions(-) diff --git a/src/python_minifier/rename/resolve_names.py b/src/python_minifier/rename/resolve_names.py index 25555fdc..104b5366 100644 --- a/src/python_minifier/rename/resolve_names.py +++ b/src/python_minifier/rename/resolve_names.py @@ -34,6 +34,14 @@ def get_binding(name, namespace): namespace.bindings.append(binding) return binding +def get_binding_disallow_class_namespace_rename(name, namespace): + binding = get_binding(name, namespace) + + if isinstance(namespace, ast.ClassDef): + # This name will become an attribute of a class, so it can't be renamed + binding.disallow_rename() + + return binding def resolve_names(node): """ @@ -54,20 +62,26 @@ def resolve_names(node): binding.disallow_rename() elif isinstance(node, ast.ClassDef) and node.name in node.namespace.nonlocal_names: - get_binding(node.name, node.namespace).add_reference(node) + binding = get_binding_disallow_class_namespace_rename(node.name, node.namespace) + binding.add_reference(node) + elif is_ast_node(node, (ast.FunctionDef, 'AsyncFunctionDef')) and node.name in node.namespace.nonlocal_names: - get_binding(node.name, node.namespace).add_reference(node) + binding = get_binding_disallow_class_namespace_rename(node.name, node.namespace) + binding.add_reference(node) + elif isinstance(node, ast.alias): if node.asname is not None: if node.asname in node.namespace.nonlocal_names: - get_binding(node.asname, node.namespace).add_reference(node) + binding = get_binding_disallow_class_namespace_rename(node.asname, node.namespace) + binding.add_reference(node) + else: # This binds the root module only for a dotted import root_module = node.name.split('.')[0] if root_module in node.namespace.nonlocal_names: - binding = get_binding(root_module, node.namespace) + binding = get_binding_disallow_class_namespace_rename(root_module, node.namespace) binding.add_reference(node) if '.' in node.name: @@ -75,15 +89,15 @@ def resolve_names(node): elif isinstance(node, ast.ExceptHandler) and node.name is not None: if isinstance(node.name, str) and node.name in node.namespace.nonlocal_names: - get_binding(node.name, node.namespace).add_reference(node) + get_binding_disallow_class_namespace_rename(node.name, node.namespace).add_reference(node) elif is_ast_node(node, 'Nonlocal'): for name in node.names: - get_binding(name, node.namespace).add_reference(node) + get_binding_disallow_class_namespace_rename(name, node.namespace).add_reference(node) elif is_ast_node(node, ('MatchAs', 'MatchStar')) and node.name in node.namespace.nonlocal_names: - get_binding(node.name, node.namespace).add_reference(node) + get_binding_disallow_class_namespace_rename(node.name, node.namespace).add_reference(node) elif is_ast_node(node, 'MatchMapping') and node.rest in node.namespace.nonlocal_names: - get_binding(node.rest, node.namespace).add_reference(node) + get_binding_disallow_class_namespace_rename(node.rest, node.namespace).add_reference(node) elif is_ast_node(node, 'Exec'): get_global_namespace(node).tainted = True diff --git a/test/test_bind_names.py b/test/test_bind_names.py index e5c4c1e3..42253a6b 100644 --- a/test/test_bind_names.py +++ b/test/test_bind_names.py @@ -630,3 +630,725 @@ class C: assert_namespace_tree(source, expected_namespaces) +def test_class_namespace_nonlocal_name_allow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=True) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_name_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_builtin_name_allow_rename(): + source = ''' +class LazyList: + MyAttribute = int + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - BuiltinBinding(name='int', allow_rename=True) + + Class LazyList + - nonlocal int + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_builtin_name_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = int + int = 1 + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - BuiltinBinding(name='int', allow_rename=False) + + Class LazyList + - nonlocal int + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_namespace_nonlocal_non_builtin_name_disallow_rename(): + if sys.version_info < (3, 4): + pytest.skip('NameConstants are different in python < 3.4') + + source = ''' +int = None +class LazyList: + MyAttribute = int + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='int', allow_rename=False) + + Class LazyList + - nonlocal int + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_name_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + MyNonLocal = 2 + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_name_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + MyNonLocal = 2 +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_import_as_disallow_rename(): + """import os as MyNonLocal""" + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + import os as MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_import_as_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + import os as MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_import_from_as_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + from os import Hello as MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_import_from_as_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + from os import Hello as MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_import_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + import MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_import_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + import MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_import_from_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + from Hello import MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_import_from_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + from Hello import MyNonLocal + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_dotted_import_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + import MyNonLocal.Hello + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_dotted_import_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + import MyNonLocal.Hello + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_func_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + def MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Function MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_func_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + def MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Function MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_async_func_disallow_rename(): + if sys.version_info < (3, 5): + pytest.skip('No async functions in python < 3.5') + + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + async def MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Function MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_async_func_disallow_rename(): + if sys.version_info < (3, 5): + pytest.skip('No async functions in python < 3.5') + + source = ''' +class LazyList: + MyAttribute = MyNonLocal + async def MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Function MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_classdef_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + class MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Class MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_classdef_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + class MyNonLocal(): pass + +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) + + Class MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_namespace_nonlocal_except_disallow_rename(): + source = ''' +MyNonLocal = 1 + +class LazyList: + MyAttribute = MyNonLocal + try: + pass + except Exception as MyNonLocal: + pass + +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='Exception', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Exception + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_except_disallow_rename(): + source = ''' +class LazyList: + MyAttribute = MyNonLocal + try: + pass + except Exception as MyNonLocal: + pass + +''' + + expected_namespaces = ''' ++ Module + - BuiltinBinding(name='Exception', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Exception + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + + +def test_class_namespace_nonlocal_match_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +MyNonLocal = 1 +Blah = "Hello" + +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case MyNonLocal: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_match_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +Blah = "Hello" +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case MyNonLocal: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_match_star_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +MyNonLocal = 1 +Blah = "Hello" + +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case [*MyNonLocal]: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_match_star_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +Blah = "Hello" +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case [*MyNonLocal]: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_match_mapping_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +MyNonLocal = 1 +Blah = "Hello" + +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case {**MyNonLocal}: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_match_mapping_disallow_rename(): + if sys.version_info < (3, 10): + pytest.skip('Match statement not in python < 3.10') + + source = ''' +Blah = "Hello" +class LazyList: + MyAttribute = MyNonLocal + match Blah: + case {**MyNonLocal}: + pass +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='Blah', allow_rename=True) + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal Blah + - nonlocal MyNonLocal + - NameBinding(name='MyAttribute', allow_rename=False) +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_nonlocal_disallow_rename(): + if sys.version_info < (3, 0): + pytest.skip('nonlocal in class is invalid in Python 2') + + source = ''' +MyNonLocal = 1 + +class LazyList: + nonlocal MyNonLocal +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) + +def test_class_namespace_undefined_nonlocal_disallow_rename(): + if sys.version_info < (3, 0): + pytest.skip('nonlocal in class is invalid in Python 2') + + source = ''' +class LazyList: + nonlocal MyNonLocal +''' + + expected_namespaces = ''' ++ Module + - NameBinding(name='LazyList', allow_rename=True) + - NameBinding(name='MyNonLocal', allow_rename=False) + + Class LazyList + - nonlocal MyNonLocal +''' + + assert_namespace_tree(source, expected_namespaces) From 61ee2d79bd19d294fbe2dc615494fc068810f18b Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sat, 31 Aug 2024 11:37:06 +0100 Subject: [PATCH 50/53] Only remove brackets from raises for builtin exceptions The previous checks were not enough, as name references we know are a builtin could get redefined in class scope. --- src/python_minifier/rename/binding.py | 22 ++++++++++ .../transforms/remove_exception_brackets.py | 11 ++++- test/test_remove_exception_brackets.py | 40 +++++++++++++++++++ 3 files changed, 71 insertions(+), 2 deletions(-) diff --git a/src/python_minifier/rename/binding.py b/src/python_minifier/rename/binding.py index 45ee4916..d18f1703 100644 --- a/src/python_minifier/rename/binding.py +++ b/src/python_minifier/rename/binding.py @@ -447,3 +447,25 @@ def rename(self, new_name): ), ) ) + + def is_redefined(self): + """ + Do one of the references to this builtin name redefine it? + + Could some references actually not be references to the builtin? + + This can happen with code like: + + class MyClass: + IndexError = IndexError + + """ + + for node in self.references: + if not isinstance(node, ast.Name): + return True + + if not isinstance(node.ctx, ast.Load): + return True + + return False \ No newline at end of file diff --git a/src/python_minifier/transforms/remove_exception_brackets.py b/src/python_minifier/transforms/remove_exception_brackets.py index aac64976..9f98d787 100644 --- a/src/python_minifier/transforms/remove_exception_brackets.py +++ b/src/python_minifier/transforms/remove_exception_brackets.py @@ -77,7 +77,8 @@ def _remove_empty_call(binding): assert isinstance(binding, BuiltinBinding) for name_node in binding.references: - assert isinstance(name_node, ast.Name) # For this to be a builtin, all references must be name nodes as it is not defined anywhere + # For this to be a builtin, all references must be name nodes as it is not defined anywhere + assert isinstance(name_node, ast.Name) and isinstance(name_node.ctx, ast.Load) if not isinstance(name_node.parent, ast.Call): # This is not a call @@ -110,7 +111,13 @@ def remove_no_arg_exception_call(module): return module for binding in module.bindings: - if isinstance(binding, BuiltinBinding) and binding.name in builtin_exceptions: + if not isinstance(binding, BuiltinBinding): + continue + + if binding.is_redefined(): + continue + + if binding.name in builtin_exceptions: # We can remove any calls to builtin exceptions _remove_empty_call(binding) diff --git a/test/test_remove_exception_brackets.py b/test/test_remove_exception_brackets.py index 84e00e43..cff97a5b 100644 --- a/test/test_remove_exception_brackets.py +++ b/test/test_remove_exception_brackets.py @@ -123,3 +123,43 @@ def test_raise_from_arg(): expected_ast = ast.parse(expected) actual_ast = remove_brackets(source) compare_ast(expected_ast, actual_ast) + +def test_raise_builtin_in_class(): + """This is a builtin so remove the brackets""" + if sys.version_info < (3, 0): + pytest.skip('transform does not work in this version of python') + + source = ''' +class A: + raise IndexError() +''' + + expected = ''' +class A: + raise IndexError +''' + expected_ast = ast.parse(expected) + actual_ast = remove_brackets(source) + compare_ast(expected_ast, actual_ast) + +def test_raise_redefined_builtin_in_class(): + """This was a builtin at some point, but it was redefined so don't remove the brackets""" + if sys.version_info < (3, 0): + pytest.skip('transform does not work in this version of python') + + source = ''' +class A: + if random.choice([True, False]): + IndexError = IndexError + raise IndexError() +''' + + expected = ''' +class A: + if random.choice([True, False]): + IndexError = IndexError + raise IndexError() +''' + expected_ast = ast.parse(expected) + actual_ast = remove_brackets(source) + compare_ast(expected_ast, actual_ast) \ No newline at end of file From d5cc78d32fda7e528951ec42715946981d87778b Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Sun, 1 Sep 2024 12:04:43 +0100 Subject: [PATCH 51/53] Enable renaming of type parameters --- src/python_minifier/rename/bind_names.py | 12 ++++++++++++ src/python_minifier/rename/binding.py | 24 ++++++++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/src/python_minifier/rename/bind_names.py b/src/python_minifier/rename/bind_names.py index 1a2f586a..148bf68e 100644 --- a/src/python_minifier/rename/bind_names.py +++ b/src/python_minifier/rename/bind_names.py @@ -161,6 +161,18 @@ def visit_MatchMapping(self, node): self.generic_visit(node) + def visit_TypeVar(self, node): + if node.name not in node.namespace.nonlocal_names: + self.get_binding(node.name, node.namespace).add_reference(node) + + def visit_TypeVarTuple(self, node): + if node.name not in node.namespace.nonlocal_names: + self.get_binding(node.name, node.namespace).add_reference(node) + + def visit_ParamSpec(self, node): + if node.name not in node.namespace.nonlocal_names: + self.get_binding(node.name, node.namespace).add_reference(node) + def bind_names(module): """ Bind names to their local namespace diff --git a/src/python_minifier/rename/binding.py b/src/python_minifier/rename/binding.py index d18f1703..9f58058b 100644 --- a/src/python_minifier/rename/binding.py +++ b/src/python_minifier/rename/binding.py @@ -130,6 +130,12 @@ def additional_byte_cost(self): pass elif is_ast_node(node, 'MatchMapping'): pass + elif is_ast_node(node, 'TypeVar'): + pass + elif is_ast_node(node, 'TypeVarTuple'): + pass + elif is_ast_node(node, 'ParamSpec'): + pass else: raise AssertionError('Unknown reference node') @@ -177,6 +183,12 @@ def old_mention_count(self): pass elif is_ast_node(node, 'MatchMapping'): pass + elif is_ast_node(node, 'TypeVar'): + pass + elif is_ast_node(node, 'TypeVarTuple'): + pass + elif is_ast_node(node, 'ParamSpec'): + pass else: raise AssertionError('Unknown reference node') @@ -220,6 +232,12 @@ def new_mention_count(self): mentions += 1 elif is_ast_node(node, 'MatchMapping'): mentions += 1 + elif is_ast_node(node, 'TypeVar'): + mentions += 1 + elif is_ast_node(node, 'TypeVarTuple'): + mentions += 1 + elif is_ast_node(node, 'ParamSpec'): + mentions += 1 else: raise AssertionError('Unknown reference node') @@ -386,6 +404,12 @@ def rename(self, new_name): node.name = new_name elif is_ast_node(node, 'MatchMapping'): node.rest = new_name + elif is_ast_node(node, 'TypeVar'): + node.name = new_name + elif is_ast_node(node, 'TypeVarTuple'): + node.name = new_name + elif is_ast_node(node, 'ParamSpec'): + node.name = new_name if func_namespace_binding is not None: func_namespace_binding.body = list( From e1286443bfa65d58786db749d985b78ecc4c88d2 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 5 Sep 2024 16:46:02 +0100 Subject: [PATCH 52/53] Disable renaming of type parameters It's not practical to rename type parameters safely until we can properly model annotation namespaces. --- src/python_minifier/__init__.py | 8 ++++++++ src/python_minifier/rename/bind_names.py | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/src/python_minifier/__init__.py b/src/python_minifier/__init__.py index 9863b791..15122694 100644 --- a/src/python_minifier/__init__.py +++ b/src/python_minifier/__init__.py @@ -166,6 +166,14 @@ def minify( rename_globals = False rename_locals = False + if preserve_locals is None: + preserve_locals = [] + if preserve_globals is None: + preserve_globals = [] + + preserve_locals.extend(module.preserved) + preserve_globals.extend(module.preserved) + allow_rename_locals(module, rename_locals, preserve_locals) allow_rename_globals(module, rename_globals, preserve_globals) diff --git a/src/python_minifier/rename/bind_names.py b/src/python_minifier/rename/bind_names.py index 148bf68e..57597674 100644 --- a/src/python_minifier/rename/bind_names.py +++ b/src/python_minifier/rename/bind_names.py @@ -15,6 +15,7 @@ class NameBinder(NodeVisitor): def __call__(self, module): assert isinstance(module, ast.Module) module.tainted = False + module.preserved = set() return self.visit(module) def get_binding(self, name, namespace): @@ -165,14 +166,20 @@ def visit_TypeVar(self, node): if node.name not in node.namespace.nonlocal_names: self.get_binding(node.name, node.namespace).add_reference(node) + get_global_namespace(node.namespace).preserved.add(node.name) + def visit_TypeVarTuple(self, node): if node.name not in node.namespace.nonlocal_names: self.get_binding(node.name, node.namespace).add_reference(node) + get_global_namespace(node.namespace).preserved.add(node.name) + def visit_ParamSpec(self, node): if node.name not in node.namespace.nonlocal_names: self.get_binding(node.name, node.namespace).add_reference(node) + get_global_namespace(node.namespace).preserved.add(node.name) + def bind_names(module): """ Bind names to their local namespace From 03ec99ab1eee1b12d65ff000fe113cf566f30631 Mon Sep 17 00:00:00 2001 From: Daniel Flook Date: Thu, 5 Sep 2024 17:27:06 +0100 Subject: [PATCH 53/53] Fix errors in manifests preserve_locals/globals should be a list. Cast it to a list if it looks like it has mistaken been passed as a string. --- src/python_minifier/__init__.py | 4 ++++ xtest/manifests/python3.10_test_manifest.yaml | 12 ++++++---- xtest/manifests/python3.11_test_manifest.yaml | 24 ++++++++++++------- xtest/manifests/python3.12_test_manifest.yaml | 12 ++++++---- 4 files changed, 36 insertions(+), 16 deletions(-) diff --git a/src/python_minifier/__init__.py b/src/python_minifier/__init__.py index 15122694..a7ab2b67 100644 --- a/src/python_minifier/__init__.py +++ b/src/python_minifier/__init__.py @@ -168,8 +168,12 @@ def minify( if preserve_locals is None: preserve_locals = [] + elif isinstance(preserve_locals, str): + preserve_locals = [preserve_locals] if preserve_globals is None: preserve_globals = [] + elif isinstance(preserve_globals, str): + preserve_globals = [preserve_globals] preserve_locals.extend(module.preserved) preserve_globals.extend(module.preserved) diff --git a/xtest/manifests/python3.10_test_manifest.yaml b/xtest/manifests/python3.10_test_manifest.yaml index e958d54d..5603f85c 100644 --- a/xtest/manifests/python3.10_test_manifest.yaml +++ b/xtest/manifests/python3.10_test_manifest.yaml @@ -865,17 +865,21 @@ rename_globals: true /usr/local/lib/python3.10/test/test_contextlib_async.py: - options: - preserve_locals: baz + preserve_locals: + - baz - options: rename_globals: true - preserve_locals: baz + preserve_locals: + - baz - options: remove_literal_statements: true - preserve_locals: baz + preserve_locals: + - baz - options: remove_literal_statements: true rename_globals: true - preserve_locals: baz + preserve_locals: + - baz /usr/local/lib/python3.10/test/test_copy.py: - options: {} - options: diff --git a/xtest/manifests/python3.11_test_manifest.yaml b/xtest/manifests/python3.11_test_manifest.yaml index 74384540..b8158cc2 100644 --- a/xtest/manifests/python3.11_test_manifest.yaml +++ b/xtest/manifests/python3.11_test_manifest.yaml @@ -188,17 +188,21 @@ /usr/local/lib/python3.11/test/test_asyncio/test_futures.py: [] /usr/local/lib/python3.11/test/test_asyncio/test_futures2.py: - options: - preserve_locals: future + preserve_locals: + - future - options: rename_globals: true - preserve_locals: future + preserve_locals: + - future - options: remove_literal_statements: true - preserve_locals: future + preserve_locals: + - future - options: remove_literal_statements: true rename_globals: true - preserve_locals: future + preserve_locals: + - future /usr/local/lib/python3.11/test/test_asyncio/test_locks.py: - options: {} - options: @@ -2904,17 +2908,21 @@ rename_globals: true /usr/local/lib/python3.11/test/test_opcache.py: - options: - preserve_locals: Class + preserve_locals: + - Class - options: rename_globals: true - preserve_locals: Class + preserve_locals: + - Class - options: remove_literal_statements: true - preserve_locals: Class + preserve_locals: + - Class - options: remove_literal_statements: true rename_globals: true - preserve_locals: Class + preserve_locals: + - Class /usr/local/lib/python3.11/test/test_opcodes.py: - options: {} - options: diff --git a/xtest/manifests/python3.12_test_manifest.yaml b/xtest/manifests/python3.12_test_manifest.yaml index 4c143483..c1a6a4a4 100644 --- a/xtest/manifests/python3.12_test_manifest.yaml +++ b/xtest/manifests/python3.12_test_manifest.yaml @@ -4740,20 +4740,24 @@ status: passing /usr/local/lib/python3.12/test/test_opcache.py: - options: - preserve_locals: Class + preserve_locals: + - Class remove_literal_statements: true rename_globals: true status: passing - options: - preserve_locals: Class + preserve_locals: + - Class rename_globals: true status: passing - options: - preserve_locals: Class + preserve_locals: + - Class remove_literal_statements: true status: passing - options: - preserve_locals: Class + preserve_locals: + - Class status: passing /usr/local/lib/python3.12/test/test_opcodes.py: - options: