You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Small, independent hygiene defects that don't merit separate issues:
quantecon/util/common_messages.py — one message string, referenced nowhere, untouched since 2018, pointing to the defunct continuum.io downloads page. Delete.
quantecon/__init__.py:9-13 — bare except: (catches KeyboardInterrupt/SystemExit during import) around import numba, discarding the original exception and raising a conda-specific message — wrong for pip users, and it hides the real traceback in the common numba/llvmlite ABI-mismatch case. Replace with except ImportError as e: raise ImportError(<pip-and-conda message>) from e, or delete the guard and let the natural ImportError speak. The file-level # flake8: noqa masks this today.
quantecon/tests/test_quadsum.py:59-63 — nose-era __main__ block calling undefined names (test_simplesum, test_identitysum; dangling uncalled test_m_identitysum). Running the file directly raises NameError; the source of all 3 F821s in the package. Delete the block.
Problem
Small, independent hygiene defects that don't merit separate issues:
quantecon/util/common_messages.py— one message string, referenced nowhere, untouched since 2018, pointing to the defunct continuum.io downloads page. Delete.quantecon/__init__.py:9-13— bareexcept:(catchesKeyboardInterrupt/SystemExitduring import) aroundimport numba, discarding the original exception and raising a conda-specific message — wrong for pip users, and it hides the real traceback in the common numba/llvmlite ABI-mismatch case. Replace withexcept ImportError as e: raise ImportError(<pip-and-conda message>) from e, or delete the guard and let the natural ImportError speak. The file-level# flake8: noqamasks this today.quantecon/tests/test_quadsum.py:59-63— nose-era__main__block calling undefined names (test_simplesum,test_identitysum; dangling uncalledtest_m_identitysum). Running the file directly raisesNameError; the source of all 3 F821s in the package. Delete the block._dle.py:246isinstance(...) == True;_dle.py:280andutil/notebooks.py:77type(x) != np.ndarray→isinstance(deep DLE work stays in Refactor DLE (_dle.py) to use native scalars and 1-D arrays instead of (1, 1)/2-D matrix conventions #844 — these lines needn't wait).quantecon/markov/tests/test_graph_tools.py:137— bareexcept:→except KeyError:.util/timing.py:247—__exit__bindsexc_type, exc_val, exc_tbunused.game_theory/game_generators/__init__.py:6— the package's loneimport *; make it explicit.Acceptance criteria
flake8 quanteconrun reports zero F821/E722/E712/E721common_messages.pygone; suite green; no behavior change anywhere elseFrom the July 2026 technical-debt audit (AI-assisted; claims verified against
28d4b3bon 2026-07-25).