Open sbrugman opened 4 weeks ago
That's a good point. JavaScript component is indeed optional but Python packaging tools doesn't provide a way to mark non-Python modules as optional when building whl package.
On the other hand, installing from source code does give us the flexibility to NOT running npm command when not available.
Taking Python itself as an example, it can be successfully compiled with missing optional modules like _tkinter, _ssl, etc. A message is left in the compiling log to remind user.
Is your feature request related to a problem? Please describe. I'd like to install the
master
branch from source util v1.5.4 is released with the fix merged before. The machine installing the code has no NodeJS installed, and it's not trivial to do so. The setup fails with the following error:Describe the solution you'd like I'd like the package to skip the javascript component when
nodes
/npm
are unavailable, but continue with the Python installation (perhaps a warning).The change should be simple, e.g. try-except or check if the
npm
bin is present: https://github.com/reata/sqllineage/blob/master/setup.py#L28Describe alternatives you've considered A release would also solve my problem directly. Still I'd suggest considering this change, for future users.
Additional context Add any other context or screenshots about the feature request here.