The PR was originally motivated by package not working on Windows. Later it came out that there is quite a bit of common code, which may be refactored before fix, so I did that.
I also added fixes for Python 2-3 compatibility, though, if more issues occur package six should be used. Also, the classes inherit from one another and they are short so I moved them into one module (file) as, again, this is more pythonic. I fixed some PEP 8 complaints highlighted by IDE but not all.
I also added requirements for the explicitly called packages, like pandas and ipython as it is good practice to list them in requirements if they are explicitly called in the code.
Fixes summary:
more pythonic, including PEP 8 standards;
classes moved to one module;
common code moved to base class;
fix finding node/npm on Windows;
Python 3 fixes;
missing requirements added.
I performed smoke tests in jupyter on Python 2 and 3, but they may be minimalistic as there are no formal tests present in the code.
The PR was originally motivated by package not working on Windows. Later it came out that there is quite a bit of common code, which may be refactored before fix, so I did that.
I also added fixes for Python 2-3 compatibility, though, if more issues occur package
six
should be used. Also, the classes inherit from one another and they are short so I moved them into one module (file) as, again, this is more pythonic. I fixed some PEP 8 complaints highlighted by IDE but not all.I also added requirements for the explicitly called packages, like
pandas
andipython
as it is good practice to list them in requirements if they are explicitly called in the code.Fixes summary:
I performed smoke tests in jupyter on Python 2 and 3, but they may be minimalistic as there are no formal tests present in the code.