pyFF icon indicating copy to clipboard operation
pyFF copied to clipboard

Getting error Exception: ast.ImportFrom has module attribute set to None

Open yogesh-abacusai opened this issue 5 months ago • 0 comments
trafficstars

When I try running pyff-dir directory1 directory2

I am getting the error

Traceback (most recent call last):
  File "/usr/local/bin/pyff-dir", line 8, in <module>
    sys.exit(pyffdir())
  File "/usr/local/lib/python3.10/dist-packages/pyff/run.py", line 72, in pyffdir
    _pyff_that(compare, "directory")
  File "/usr/local/lib/python3.10/dist-packages/pyff/run.py", line 33, in _pyff_that
    changes = function(pathlib.Path(args.old), pathlib.Path(args.new), args)
  File "/usr/local/lib/python3.10/dist-packages/pyff/run.py", line 70, in compare
    return pyff_directory(old, new)
  File "/usr/local/lib/python3.10/dist-packages/pyff/directories.py", line 156, in pyff_directory
    packages: Optional[pp.PackagesPyfference] = _compare_packages_in_dir(
  File "/usr/local/lib/python3.10/dist-packages/pyff/directories.py", line 88, in _compare_packages_in_dir
    for pkg, change in [
  File "/usr/local/lib/python3.10/dist-packages/pyff/directories.py", line 91, in <listcomp>
    pp.pyff_package(
  File "/usr/local/lib/python3.10/dist-packages/pyff/packages.py", line 155, in pyff_package
    for module, change in [
  File "/usr/local/lib/python3.10/dist-packages/pyff/packages.py", line 156, in <listcomp>
    (module, _compare_module_in_packages(module, old_package, new_package))
  File "/usr/local/lib/python3.10/dist-packages/pyff/packages.py", line 103, in _compare_module_in_packages
    return pm.pyff_module(old_summary, new_summary)
  File "/usr/local/lib/python3.10/dist-packages/pyff/modules.py", line 114, in pyff_module
    classes = pc.pyff_classes(old.node, new.node, old_imports, new_imports)
  File "/usr/local/lib/python3.10/dist-packages/pyff/classes.py", line 283, in pyff_classes
    difference = pyff_class(
  File "/usr/local/lib/python3.10/dist-packages/pyff/classes.py", line 256, in pyff_class
    methods = pf.pyff_functions(old.definition, new.definition, old_imports, new_imports)
  File "/usr/local/lib/python3.10/dist-packages/pyff/functions.py", line 429, in pyff_functions
    difference = pyff_function(
  File "/usr/local/lib/python3.10/dist-packages/pyff/functions.py", line 279, in pyff_function
    change = ps.pyff_statement(old_statement, new_statement, old_imports, new_imports)
  File "/usr/local/lib/python3.10/dist-packages/pyff/statements.py", line 237, in pyff_statement
    change = find_external_name_matches(old_statement, new_statement, old_imports, new_imports)
  File "/usr/local/lib/python3.10/dist-packages/pyff/statements.py", line 140, in find_external_name_matches
    fq_new = fq_new_transformer.visit(copy.deepcopy(new))
  File "/usr/lib/python3.10/ast.py", line 418, in visit
    return visitor(node)
  File "/usr/lib/python3.10/ast.py", line 503, in generic_visit
    new_node = self.visit(old_value)
  File "/usr/lib/python3.10/ast.py", line 418, in visit
    return visitor(node)
  File "/usr/lib/python3.10/ast.py", line 494, in generic_visit
    value = self.visit(value)
  File "/usr/lib/python3.10/ast.py", line 418, in visit
    return visitor(node)
  File "/usr/lib/python3.10/ast.py", line 503, in generic_visit
    new_node = self.visit(old_value)
  File "/usr/lib/python3.10/ast.py", line 418, in visit
    return visitor(node)
  File "/usr/lib/python3.10/ast.py", line 494, in generic_visit
    value = self.visit(value)
  File "/usr/lib/python3.10/ast.py", line 418, in visit
    return visitor(node)
  File "/usr/local/lib/python3.10/dist-packages/pyff/statements.py", line 91, in visit_Name
    return self.external_names[node.id].canonical_ast
  File "/usr/local/lib/python3.10/dist-packages/pyff/imports.py", line 61, in canonical_ast
    raise Exception(
Exception: ast.ImportFrom has module attribute set to None

yogesh-abacusai avatar May 28 '25 15:05 yogesh-abacusai