#1134295 nbgitpuller: FTBFS: ModuleNotFoundError: No module named 'notebook.base'

Package:
src:nbgitpuller
Source:
src:nbgitpuller
Submitter:
Santiago Vila
Date:
2026-05-19 10:51:02 UTC
Severity:
normal
Tags:
#1134295#5
Date:
2026-04-18 17:32:07 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202604/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:nbgitpuller, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --with python3 --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
dh_auto_clean: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
I: pybuild base:385: python3.14 setup.py clean
/usr/lib/python3/dist-packages/wheel/bdist_wheel.py:4: FutureWarning: The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command, and will be removed in a future release. Please update to setuptools v70.1 or later which contains an integrated version of this command.
  warn(
/usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: BSD License


[... snipped ...]

creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js.LICENSE.txt -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js.map -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/dist
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/js
copying nbgitpuller/static/js/index.js -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/static/js
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/templates
copying nbgitpuller/templates/page.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/templates
copying nbgitpuller/templates/status.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/templates
I: pybuild base:385: /usr/bin/python3 setup.py build
/usr/lib/python3/dist-packages/wheel/bdist_wheel.py:4: FutureWarning: The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command, and will be removed in a future release. Please update to setuptools v70.1 or later which contains an integrated version of this command.
  warn(
/usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: BSD License

        See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
        ********************************************************************************

!!
  self._finalize_license_expression()
running build
running build_py
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller
copying nbgitpuller/handlers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller
copying nbgitpuller/version.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller
copying nbgitpuller/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller
copying nbgitpuller/pull.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller
running egg_info
writing nbgitpuller.egg-info/PKG-INFO
writing dependency_links to nbgitpuller.egg-info/dependency_links.txt
writing entry points to nbgitpuller.egg-info/entry_points.txt
writing requirements to nbgitpuller.egg-info/requires.txt
writing top-level names to nbgitpuller.egg-info/top_level.txt
reading manifest file 'nbgitpuller.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'nbgitpuller.egg-info/SOURCES.txt'
/usr/lib/python3/dist-packages/setuptools/command/build_py.py:212: _Warning: Package 'nbgitpuller.etc' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'nbgitpuller.etc' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'nbgitpuller.etc' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'nbgitpuller.etc' to be distributed and are
        already explicitly excluding 'nbgitpuller.etc' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
/usr/lib/python3/dist-packages/setuptools/command/build_py.py:212: _Warning: Package 'nbgitpuller.static.dist' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'nbgitpuller.static.dist' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'nbgitpuller.static.dist' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'nbgitpuller.static.dist' to be distributed and are
        already explicitly excluding 'nbgitpuller.static.dist' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
/usr/lib/python3/dist-packages/setuptools/command/build_py.py:212: _Warning: Package 'nbgitpuller.static.js' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'nbgitpuller.static.js' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'nbgitpuller.static.js' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'nbgitpuller.static.js' to be distributed and are
        already explicitly excluding 'nbgitpuller.static.js' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
/usr/lib/python3/dist-packages/setuptools/command/build_py.py:212: _Warning: Package 'nbgitpuller.templates' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'nbgitpuller.templates' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'nbgitpuller.templates' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'nbgitpuller.templates' to be distributed and are
        already explicitly excluding 'nbgitpuller.templates' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/etc/jupyter_notebook_config.d
copying nbgitpuller/etc/jupyter_notebook_config.d/nbgitpuller.json -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/etc/jupyter_notebook_config.d
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/etc/jupyter_server_config.d
copying nbgitpuller/etc/jupyter_server_config.d/nbgitpuller.json -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/etc/jupyter_server_config.d
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js.LICENSE.txt -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/dist
copying nbgitpuller/static/dist/bundle.js.map -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/dist
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/js
copying nbgitpuller/static/js/index.js -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/static/js
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/templates
copying nbgitpuller/templates/page.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/templates
copying nbgitpuller/templates/status.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/templates
   dh_auto_test -O--buildsystem=pybuild
dh_auto_test: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
W: pybuild base:328: No test runner selected, defaulting to unittest, ignoring test discovery problems.
Use --test-unittest to explicitly select the unittest runner.
I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build; python3.14 -m unittest discover -v
nbgitpuller (unittest.loader._FailedTest.nbgitpuller) ... ERROR

======================================================================
ERROR: nbgitpuller (unittest.loader._FailedTest.nbgitpuller)
----------------------------------------------------------------------
ImportError: Failed to import test module: nbgitpuller
Traceback (most recent call last):
  File "/usr/lib/python3.14/unittest/loader.py", line 460, in _find_test_path
    package = self._get_module_from_name(name)
  File "/usr/lib/python3.14/unittest/loader.py", line 367, in _get_module_from_name
    __import__(name)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/__init__.py", line 2, in <module>
    from .handlers import SyncHandler, UIHandler, LegacyInteractRedirectHandler, LegacyGitSyncRedirectHandler
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build/nbgitpuller/handlers.py", line 5, in <module>
    from notebook.base.handlers import IPythonHandler
ModuleNotFoundError: No module named 'notebook.base'
---------------------------------------------------------------------- Ran 1 test in 0.000s FAILED (errors=1) E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_nbgitpuller/build; python3.14 -m unittest discover -v W: pybuild base:328: No test runner selected, defaulting to unittest, ignoring test discovery problems. Use --test-unittest to explicitly select the unittest runner. I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build; python3.13 -m unittest discover -v nbgitpuller (unittest.loader._FailedTest.nbgitpuller) ... ERROR ====================================================================== ERROR: nbgitpuller (unittest.loader._FailedTest.nbgitpuller) ---------------------------------------------------------------------- ImportError: Failed to import test module: nbgitpuller Traceback (most recent call last): File "/usr/lib/python3.13/unittest/loader.py", line 429, in _find_test_path package = self._get_module_from_name(name) File "/usr/lib/python3.13/unittest/loader.py", line 339, in _get_module_from_name __import__(name) ~~~~~~~~~~^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/__init__.py", line 2, in <module> from .handlers import SyncHandler, UIHandler, LegacyInteractRedirectHandler, LegacyGitSyncRedirectHandler File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build/nbgitpuller/handlers.py", line 5, in <module> from notebook.base.handlers import IPythonHandler ModuleNotFoundError: No module named 'notebook.base'
---------------------------------------------------------------------- Ran 1 test in 0.000s FAILED (errors=1) E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_nbgitpuller/build; python3.13 -m unittest discover -v dh_auto_test: error: pybuild --test -i python{version} -p "3.14 3.13" --parallel=2 returned exit code 13 make: *** [debian/rules:7: binary] Error 255 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2 --------------------------------------------------------------------------------