Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add option for strict-error-codes #13541

Closed
wants to merge 1 commit into from

Conversation

cdce8p
Copy link
Collaborator

@cdce8p cdce8p commented Aug 28, 2022

Description

This PR adds a --strict-error-codes option which will enable the ignore-without-code error code in strict mode. Additional error codes may be added in the future. However, I don't believe any of the other once currently disabled by default are suitable (redundant-expr, truthy-bool, unused-awaitable).

Rational

Since the release, ignore-without-code has been added to an increasing number of repos by default and even mypy itself recently #13534. I believe it's beneficial for everyone if we try to nudge users into providing more specific type ignores instead of the bare one.

@github-actions
Copy link
Contributor

Diff from mypy_primer, showing the effect of this PR on open source code:

cki-lib (https://gitlab.com/cki-project/cki-lib)
+ cki_lib/yaml.py:69: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-call]" instead)

python-sop (https://gitlab.com/dkg/python-sop)
+ sop/__init__.py:104: error: "type: ignore" comment without error code (consider "type: ignore[import]" instead)

python-chess (https://github.com/niklasf/python-chess)
+ chess/__init__.py:48: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)
+ chess/__init__.py:3860: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/__init__.py:3867: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/__init__.py:4026: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)
+ chess/svg.py:430: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/svg.py:432: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)
+ chess/syzygy.py:1027: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, no-any-return]" instead)
+ chess/syzygy.py:1030: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, no-any-return]" instead)
+ chess/syzygy.py:1033: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, no-any-return]" instead)
+ chess/syzygy.py:1036: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, no-any-return]" instead)
+ chess/polyglot.py:352: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/polyglot.py:419: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)
+ chess/engine.py:50: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)
+ chess/engine.py:103: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined, no-any-return]" instead)
+ chess/engine.py:162: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)
+ chess/engine.py:166: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)
+ chess/engine.py:270: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)
+ chess/engine.py:378: error: "type: ignore" comment without error code (consider "type: ignore[assignment, misc]" instead)
+ chess/engine.py:986: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)
+ chess/engine.py:1013: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/engine.py:1016: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)
+ chess/engine.py:1220: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)
+ chess/engine.py:1757: error: "type: ignore" comment without error code (consider "type: ignore[literal-required]" instead)
+ chess/engine.py:1775: error: "type: ignore" comment without error code (consider "type: ignore[literal-required]" instead)
+ chess/engine.py:1895: error: "type: ignore" comment without error code (consider "type: ignore[index, operator]" instead)
+ chess/engine.py:1898: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)
+ chess/pgn.py:38: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)
+ chess/pgn.py:302: error: "type: ignore" comment without error code (consider "type: ignore[index]" instead)
+ chess/pgn.py:480: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)
+ chess/pgn.py:484: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/pgn.py:793: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-call]" instead)
+ chess/pgn.py:805: error: "type: ignore" comment without error code (consider "type: ignore[union-attr]" instead)
+ chess/pgn.py:808: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)

porcupine (https://github.com/Akuli/porcupine)
+ porcupine/menubar.py:354: error: "type: ignore" comment without error code (consider "type: ignore[assignment, misc]" instead)  [ignore-without-code]
+ porcupine/pluginloader.py:184: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ porcupine/plugins/pastebin.py:187: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ porcupine/plugins/find.py:52: error: "type: ignore" comment without error code (consider "type: ignore[misc, return-value]" instead)  [ignore-without-code]
+ porcupine/plugins/directory_tree.py:412: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ porcupine/plugins/langserver.py:697: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ porcupine/plugins/run/no_terminal.py:118: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]

psycopg (https://github.com/psycopg/psycopg)
+ psycopg/psycopg/pq/_pq_ctypes.pyi:101: error: "type: ignore" comment without error code (consider "type: ignore[valid-type]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/_pq_ctypes.pyi:109: error: "type: ignore" comment without error code (consider "type: ignore[type-var]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:84: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:826: error: "type: ignore" comment without error code (consider "type: ignore[call-arg]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:828: error: "type: ignore" comment without error code (consider "type: ignore[operator]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:867: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:979: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/pq_ctypes.py:993: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/__init__.py:75: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined, no-redef]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/__init__.py:82: error: "type: ignore" comment without error code (consider "type: ignore[import, no-redef]" instead)  [ignore-without-code]
+ psycopg/psycopg/_cmodule.py:19: error: "type: ignore" comment without error code (consider "type: ignore[import, no-redef]" instead)  [ignore-without-code]
+ psycopg/psycopg/_cmodule.py:20: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ psycopg/psycopg/_cmodule.py:22: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ psycopg/psycopg/_transform.py:151: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ psycopg/psycopg/cursor.py:781: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ psycopg/psycopg/cursor_async.py:143: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/range.py:199: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/range.py:208: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/range.py:262: error: "type: ignore" comment without error code (consider "type: ignore[return-value]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/composite.py:244: error: "type: ignore" comment without error code (consider "type: ignore[misc, no-redef]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/array.py:124: error: "type: ignore" comment without error code (consider "type: ignore[return-value]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/array.py:226: error: "type: ignore" comment without error code (consider "type: ignore[return-value]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/array.py:284: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/multirange.py:105: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/multirange.py:113: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/multirange.py:157: error: "type: ignore" comment without error code (consider "type: ignore[return-value]" instead)  [ignore-without-code]
+ tests/test_server_cursor_async.py:23: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/test_server_cursor_async.py:29: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/test_server_cursor.py:20: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/test_server_cursor.py:24: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/test_module.py:20: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ tests/fix_pq.py:13: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ tests/adapters_example.py:51: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/shapely.py:46: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/types/shapely.py:51: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ psycopg/psycopg/pq/_debug.py:106: error: "type: ignore" comment without error code (consider "type: ignore[return-value]" instead)  [ignore-without-code]
+ tests/types/test_enum.py:351: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]

artigraph (https://github.com/artigraph/artigraph)
+ src/arti/internal/__init__.py:23: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/internal/patches.py:13: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/internal/utils.py:36: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, return-value]" instead)  [ignore-without-code]
+ src/arti/internal/utils.py:331: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ src/arti/internal/utils.py:387: error: "type: ignore" comment without error code (consider "type: ignore[arg-type, misc]" instead)  [ignore-without-code]
+ src/arti/internal/type_hints.py:89: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/internal/type_hints.py:140: error: "type: ignore" comment without error code (consider "type: ignore[valid-type]" instead)  [ignore-without-code]
+ src/arti/internal/type_hints.py:141: error: "type: ignore" comment without error code (consider "type: ignore[index]" instead)  [ignore-without-code]
+ src/arti/internal/type_hints.py:148: error: "type: ignore" comment without error code (consider "type: ignore[valid-type]" instead)  [ignore-without-code]
+ src/arti/internal/type_hints.py:253: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/internal/dispatch.py:34: error: "type: ignore" comment without error code (consider "type: ignore[misc, no-any-return]" instead)  [ignore-without-code]
+ src/arti/internal/dispatch.py:86: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ src/arti/types/__init__.py:219: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined, no-any-return]" instead)  [ignore-without-code]
+ src/arti/types/python.py:65: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/types/python.py:183: error: "type: ignore" comment without error code (consider "type: ignore[index]" instead)  [ignore-without-code]
+ src/arti/types/python.py:246: error: "type: ignore" comment without error code (consider "type: ignore[operator]" instead)  [ignore-without-code]
+ src/arti/storage/__init__.py:22: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/storage/__init__.py:24: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/storage/__init__.py:87: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ src/arti/io/__init__.py:52: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ src/arti/producers/__init__.py:274: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/producers/__init__.py:308: error: "type: ignore" comment without error code (consider "type: ignore[override]" instead)  [ignore-without-code]
+ src/arti/graphs/__init__.py:66: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ src/arti/graphs/__init__.py:105: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ tests/arti/dummies.py:125: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/dummies.py:133: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/dummies.py:142: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ src/arti/types/pydantic.py:21: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ src/arti/types/pyarrow.py:26: error: "type: ignore" comment without error code (consider "type: ignore[no-any-return]" instead)  [ignore-without-code]
+ src/arti/types/pyarrow.py:239: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/types/pyarrow.py:304: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ src/arti/types/pyarrow.py:353: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ docs/examples/spend/demo.py:39: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ docs/examples/spend/demo.py:60: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ docs/examples/spend/demo.py:78: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ tests/arti/test_fingerprints.py:59: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ tests/arti/views/test_views.py:26: error: "type: ignore" comment without error code (consider "type: ignore[misc, valid-type]" instead)  [ignore-without-code]
+ tests/arti/views/test_views.py:29: error: "type: ignore" comment without error code (consider "type: ignore[misc, valid-type]" instead)  [ignore-without-code]
+ tests/arti/views/test_views.py:33: error: "type: ignore" comment without error code (consider "type: ignore[misc, valid-type]" instead)  [ignore-without-code]
+ tests/arti/views/test_views.py:43: error: "type: ignore" comment without error code (consider "type: ignore[misc, valid-type]" instead)  [ignore-without-code]
+ tests/arti/views/test_views.py:54: error: "type: ignore" comment without error code (consider "type: ignore[misc, valid-type]" instead)  [ignore-without-code]
+ tests/arti/types/test_python_adapters.py:189: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ tests/arti/storage/test_storage.py:49: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ tests/arti/storage/test_storage.py:77: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/storage/test_storage.py:84: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/storage/test_storage.py:96: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ tests/arti/storage/test_local_storage.py:59: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:34: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:58: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:77: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:89: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:90: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:104: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:118: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:129: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:143: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:155: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:170: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:181: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:191: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:253: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:269: error: "type: ignore" comment without error code (consider "type: ignore[override, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:376: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:383: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:388: error: "type: ignore" comment without error code (consider "type: ignore[type-arg, valid-type]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:398: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:419: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:421: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:429: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:431: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:443: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:448: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:453: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:457: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:462: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:471: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:475: error: "type: ignore" comment without error code (consider "type: ignore[assignment, no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:480: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:484: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:489: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:493: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:498: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:502: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:507: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:511: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:516: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:520: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:527: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:528: error: "type: ignore" comment without error code (consider "type: ignore[assignment]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:531: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:538: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:542: error: "type: ignore" comment without error code (consider "type: ignore[no-untyped-def, type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:550: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:554: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:562: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:566: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:571: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:583: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:593: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:594: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:602: error: "type: ignore" comment without error code (consider "type: ignore[no-redef]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:604: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:627: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ tests/arti/producers/test_producer.py:631: error: "type: ignore" comment without error code (consider "type: ignore[arg-type]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:43: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined, no-any-return]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:65: error: "type: ignore" comment without error code (consider "type: ignore[index]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:67: error: "type: ignore" comment without error code (consider "type: ignore[index]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:69: error: "type: ignore" comment without error code (consider "type: ignore[attr-defined]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:77: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:78: error: "type: ignore" comment without error code (consider "type: ignore[comparison-overlap]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:292: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ tests/arti/internal/test_utils.py:294: error: "type: ignore" comment without error code (consider "type: ignore[misc]" instead)  [ignore-without-code]
+ tests/arti/internal/test_type_hints.py:20: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/internal/test_type_hints.py:29: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/internal/test_type_hints.py:115: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/internal/test_type_hints.py:116: error: "type: ignore" comment without error code (consider "type: ignore[type-arg]" instead)  [ignore-without-code]
+ tests/arti/internal/test_type_hints.py:149: error: "type: ignore" comment without error code (con

... (truncated 157 lines) ...

@hauntsaninja
Copy link
Collaborator

Thanks for working on this! I'm in favour of showing error codes by default (#13542), but I'm against enabling ignore-without-code as part of --strict. It breaks far too much code for too little benefit.

See #11633 (comment) for what I think should fall under --strict.

@cdce8p
Copy link
Collaborator Author

cdce8p commented Aug 29, 2022

Thanks for working on this! I'm in favour of showing error codes by default (#13542), but I'm against enabling ignore-without-code as part of --strict. It breaks far too much code for too little benefit.

See #11633 (comment) for what I think should fall under --strict.

Makes sense. Do you think there is a value in adding just a strict-error-codes option, without marking ignore-without-code as strict? If not / not at this moment, I think we can close this and just move forward with #13542 instead.

@hauntsaninja
Copy link
Collaborator

I know Jukka is hesitant to add more command line flags, e.g. see #11633 (comment)

I think if we end up with an error code that we want enabled in --strict but not by default, we should just get --strict to do that without adding another user-visible toggle.

@cdce8p cdce8p deleted the strict-error-codes branch August 29, 2022 21:58
hauntsaninja pushed a commit that referenced this pull request Sep 27, 2022
Part of the effort to nudge users into using specific type ignores. See
#13541

This PR enables `show-error-codes` by default. Without knowing the code,
users will always choose to use a bare `type: ignore` instead.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants