diff --git a/jupyter_notebook/notebookapp.py b/jupyter_notebook/notebookapp.py index db218a4c1..b037f9abd 100644 --- a/jupyter_notebook/notebookapp.py +++ b/jupyter_notebook/notebookapp.py @@ -75,7 +75,6 @@ from jupyter_client import KernelManager from jupyter_client.kernelspec import KernelSpecManager, NoSuchKernel, NATIVE_KERNEL_NAME from jupyter_client.session import Session from nbformat.sign import NotebookNotary -from . import submodule from traitlets import ( Dict, Unicode, Integer, List, Bool, Bytes, Instance, TraitError, Type, @@ -970,13 +969,8 @@ class NotebookApp(JupyterApp): def init_components(self): """Check the components submodule, and warn if it's unclean""" - status = submodule.check_submodule_status() - if status == 'missing': - self.log.warn("components submodule missing, running `git submodule update`") - submodule.update_submodules(submodule.repo_parent()) - elif status == 'unclean': - self.log.warn("components submodule unclean, you may see 404s on static/components") - self.log.warn("run `setup.py submodule` or `git submodule update` to update") + # TODO: this should still check, but now we use bower, not git submodule + pass def init_kernel_specs(self): """Check that the IPython kernel is present, if available""" diff --git a/jupyter_notebook/submodule.py b/jupyter_notebook/submodule.py deleted file mode 100644 index b74098457..000000000 --- a/jupyter_notebook/submodule.py +++ /dev/null @@ -1,90 +0,0 @@ -"""utilities for checking submodule status""" - -# Copyright (c) Jupyter Development Team. -# Distributed under the terms of the Modified BSD License. - -import os -import subprocess -import sys - -pjoin = os.path.join - - -def repo_parent(): - """return IPython's parent (i.e. root if run from git)""" - import jupyter_notebook - return os.path.abspath(os.path.dirname(jupyter_notebook.__file__)) - -def submodule_path(root): - """return submodule path relative to root""" - return [ - pjoin(root, 'jupyter_notebook', 'static', 'components'), - ] - -def is_repo(d): - """is d a git repo?""" - if not os.path.exists(pjoin(d, '.git')): - return False - proc = subprocess.Popen('git status', - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - shell=True, - cwd=d, - ) - status, _ = proc.communicate() - return status == 0 - -def check_submodule_status(root=None): - """check submodule status - - Has three return values: - - 'missing' - submodules are absent - 'unclean' - submodules have unstaged changes - 'clean' - all submodules are up to date - """ - - if hasattr(sys, "frozen"): - # frozen via py2exe or similar, don't bother - return 'clean' - - if not root: - root = repo_parent() - - if not is_repo(root): - # not in git, assume clean - return 'clean' - - submodules = submodule_path(root) - - for submodule in submodules: - if not os.path.exists(submodule): - return 'missing' - - # Popen can't handle unicode cwd on Windows Python 2 - if sys.platform == 'win32' and sys.version_info[0] < 3 \ - and not isinstance(root, bytes): - root = root.encode(sys.getfilesystemencoding() or 'ascii') - # check with git submodule status - proc = subprocess.Popen('git submodule status', - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - shell=True, - cwd=root, - ) - status, _ = proc.communicate() - status = status.decode("ascii", "replace") - - for line in status.splitlines(): - if line.startswith('-'): - return 'missing' - elif line.startswith('+'): - return 'unclean' - - return 'clean' - -def update_submodules(repo_dir): - """update submodules in a repo""" - subprocess.check_call("git submodule init", cwd=repo_dir, shell=True) - subprocess.check_call("git submodule update --recursive", cwd=repo_dir, shell=True) -