-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Open
Labels
bugSomething isn't workingSomething isn't workinggreat writeupA wonderful example of a quality contribution 💜A wonderful example of a quality contribution 💜
Description
Summary
To reproduce create a new project
uv init testnbconvert
add nbconvert as a dependecy
dependencies = ["nbconvert==7.16.6"]
now running
uv run python -c "import nbconvert; nbconvert.RSTExporter()"
works as expected
but running
uv run --with ipykernel python -c "import nbconvert; nbconvert.RSTExporter()"
results in
Traceback (most recent call last):
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\traitlets\traitlets.py", line 632, in get
value = obj._trait_values[self.name]
~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'template_paths'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<string>", line 1, in <module>
import nbconvert; nbconvert.RSTExporter()
~~~~~~~~~~~~~~~~~~~~~^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\templateexporter.py", line 354, in __init__
super().__init__(config=config, **kw)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\exporter.py", line 123, in __init__
self._init_preprocessors()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\templateexporter.py", line 540, in _init_preprocessors
conf = self._get_conf()
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\templateexporter.py", line 558, in _get_conf
for path in map(Path, self.template_paths):
^^^^^^^^^^^^^^^^^^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\traitlets\traitlets.py", line 687, in __get__
return t.cast(G, self.get(obj, cls)) # the G should encode the Optional
~~~~~~~~^^^^^^^^^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\traitlets\traitlets.py", line 635, in get
default = obj.trait_defaults(self.name)
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\traitlets\traitlets.py", line 1897, in trait_defaults
return t.cast(Sentinel, self._get_trait_default_generator(names[0])(self))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\traitlets\traitlets.py", line 1241, in __call__
return self.func(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\templateexporter.py", line 569, in _template_paths
template_names = self.get_template_names()
File "D:\source\repos\testnbconvert\.venv\Lib\site-packages\nbconvert\exporters\templateexporter.py", line 663, in get_template_names
raise ValueError(msg)
ValueError: No template sub-directory with name 'rst' found in the following paths:
D:\packages\uv\builds-v0\.tmpaUEwIS\share\jupyter
C:\Users\jenielse\AppData\Roaming\jupyter
I originally observed this when building the docs of one of my packages using nbsphinx and using with to override another package. That package depends on ipykernel and it looks like that if I remove that dependency the issue is not opserved.
Platform
Windows 11
Version
UV 0.8.8 but can also reproduce with 0.8.0
Python version
3.11, 3.13
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workinggreat writeupA wonderful example of a quality contribution 💜A wonderful example of a quality contribution 💜