notebook
notebook copied to clipboard
get bower dependencies from npm
Avoids dependency on deprecated bower package manager.
This is the same strategy adopted some time ago by JupyterHub, which also used Bower. Rather than making significant changes to how everything is built, which caused problems during the webpack, this only changes how the dependencies are downloaded. A bower-lite script copies dependencies declared in package.json from node_modules to notebook/static/components to match the previous installation location.
Most packages are identical, but a couple of packages have slightly different layouts (jquery-ui, react, xterm). It's unclear if these relative URLs should be considered public APIs, in which case we can make do more detailed renames to match everything exactly.
Related to #6210
Thanks, @minrk! We'll review this in Wednesday's notebook meeting. 😎
I think there's a real test failure, presumably related to a url somewhere or other that needs updating, but I haven't found it. Things seem to work when I test locally.
I think there's a real test failure, presumably related to a url somewhere or other that needs updating, but I haven't found it.
@minrk - could you please point out the test failure (tests aren't very stable at the moment and I'm not sure what might be real or fake)? Perhaps someone could then take a look if there's a starting point.
Closing this PR as an issue has been opened for this work on NbClassic, where this could be addressed.