vyperlang/vyper

Improve error message for `math` namespace collision

Open

#4,579 opened on Apr 14, 2025

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Python (4,710 stars) (849 forks)batch import
Easy Pickingsbug - UXhelp wanted

Description

The following snippet will throw with

from snekmate.utils import math
import math
vyper.exceptions.NamespaceCollision: 'math' has already been declared as a ModuleInfo(module_t=venv/Lib/site-packages/snekmate/utils/math.vy, alias='math', ownership=<ModuleOwnership.NO_OWNERSHIP: 'no_ownership'>, ownership_decl=None)

  contract "test.vy:2", line 2:0
       1 from snekmate.utils import math
  ---> 2 import math
  -------^
       3

You must run it via vyper test.vy --enable-decimals.

Contributor guide