Skip to content

Backend module raises RecursionError when no implemention is found #384

@dvdjlaw

Description

@dvdjlaw

Your bug may already be reported!
Please search on the issue tracker before creating one.

Description

If a backend method (e.g. viz_all_distribution) is not implemented anywhere, a RecursionError is raised.

Possible Solution

Backend should raise a different error than ModuleNotFoundError or handle the exception differently.

Traceback ``` RecursionError Traceback (most recent call last) ~\.conda\envs\test-env\lib\site-packages\IPython\core\formatters.py in __call__(self, obj) 343 method = get_real_method(obj, self.print_method) 344 if method is not None: --> 345 return method() 346 return None 347 else:

c:\workspace\data-describe\data_describe_widget.py in repr_html(self)
41 from IPython.display import display
42
---> 43 return display(self.show())
44 except ImportError:
45 return self.show()

c:\workspace\data-describe\data_describe\core\distributions.py in show(self, viz_backend, **kwargs)
67 viz_backend = viz_backend or self.viz_backend
68
---> 69 return self.plot_all(viz_backend=viz_backend, **kwargs)
70
71 def plot_all(

c:\workspace\data-describe\data_describe\core\distributions.py in plot_all(self, contrast, viz_backend, **kwargs)
91 backend = viz_backend or self.viz_backend
92
---> 93 return _get_viz_backend(backend).viz_all_distribution(
94 data=self.input_data, contrast=contrast, **kwargs
95 )

c:\workspace\data-describe\data_describe\backends_backends.py in getattr(self, f)
33 pass
34 raise ModuleNotFoundError(
---> 35 f"Could not find implementation for {f} with available backends: {self.b}"
36 )
37

... last 1 frames repeated, from the frame below ...

c:\workspace\data-describe\data_describe\backends_backends.py in getattr(self, f)
33 pass
34 raise ModuleNotFoundError(
---> 35 f"Could not find implementation for {f} with available backends: {self.b}"
36 )
37

RecursionError: maximum recursion depth exceeded

</details>

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions