rope icon indicating copy to clipboard operation
rope copied to clipboard

codeassist.code_assist will find spurious members of the os module

Open mcepl opened this issue 10 years ago • 0 comments

For a random module

#!python

>>> [proposal for proposal in codeassist.code_assist(proj, "import os\nos.", 13\
) if proposal.name in ['os2', 'ce', 'riscos', 'posix', 'nt']]
[os2 (imported, module), ce (imported, module), riscos (imported, module), posi\
x (imported, module), nt (imported, module)]

These are not actually defined in os.*. They are conditionally imported and deleted depending on which platform Python is run on. Rope finds them even though they are not exported from the os module.

I would not have expected to get completion proposals for symbols not actually defined.

(This is a minor concern, I am not sure how much effort it would be to fix.)

mcepl avatar Nov 30 '13 23:11 mcepl