required dependency on importlib_resources missing
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 68/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- python, tensorflow
- Ambito
- data, machine-learning
Direzione di ricerca
Inizia ispezionando i metadati delle dipendenze di tensorflow-datasets e il percorso di caricamento del dataset che arriva a importlib_resources. Riproduci il problema in un ambiente Python 3.12 prima e dopo l’installazione del pacchetto mancante. Il lavoro è completato quando un ambiente nuovo può scaricare un dataset non memorizzato nella cache senza un ModuleNotFoundError.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
/!\ PLEASE INCLUDE THE FULL STACKTRACE AND CODE SNIPPET
Short description
Description of the bug.
Our downstream project depends on tfds and while we're in the process of patching in our repo, the better answer would be for you to fix it directly in yours.
Simply adding a dependency for higher python versions than 3.9 for importlib_resources should be sufficient.
Our repo is https://github.com/trueagi-io/FabricPC and here's the stacktrace.
Downloading and preparing dataset Unknown size (download: Unknown size, generated: Unknown size, total: Unknown size) to /home/ni/tensorflow_datasets/mnist/3.0.1...
Traceback (most recent call last):
File "/home/ni/repos/test/test2/FabricPC/examples/mnist_demo.py", line 90, in
train_loader = MnistLoader(
^^^^^^^^^^^^
File "/home/ni/repos/test/test2/FabricPC/fabricpc/utils/data/dataloader.py", line 57, in init
ds, info = tfds.load(
^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/logging/init.py", line 176, in call
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/load.py", line 669, in load
_download_and_prepare_builder(dbuilder, download, download_and_prepare_kwargs)
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/load.py", line 519, in _download_and_prepare_builder
dbuilder.download_and_prepare(**download_and_prepare_kwargs)
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/logging/init.py", line 176, in call
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/dataset_builder.py", line 726, in download_and_prepare
dl_manager = self._make_download_manager(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/dataset_builder.py", line 1333, in _make_download_manager
url_infos=self.url_infos,
^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/utils/py_utils.py", line 155, in get
return self.fget.get(None, objtype)() # pytype: disable=attribute-error
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/dataset_builder.py", line 492, in url_infos
checksums_path = cls._checksums_path
^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/utils/py_utils.py", line 155, in get
return self.fget.get(None, objtype)() # pytype: disable=attribute-error
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/dataset_builder.py", line 467, in _checksums_path
if not cls.code_path:
^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/utils/py_utils.py", line 155, in get
return self.fget.get(None, objtype)() # pytype: disable=attribute-error
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/tensorflow_datasets/core/dataset_builder.py", line 345, in code_path
or isinstance(path, importlib_resources.abc.Traversable)
^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/etils/epy/lazy_imports_utils.py", line 123, in getattr
return getattr(self._module, name)
^^^^^^^^^^^^
File "/usr/lib/python3.12/functools.py", line 995, in get
val = self.func(instance)
^^^^^^^^^^^^^^^^^^^
File "/home/ni/repos/test/test2/oopy3/lib/python3.12/site-packages/etils/epy/lazy_imports_utils.py", line 84, in _module
module = importlib.import_module(self.module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/importlib/init.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'importlib_resources'
(oopy3) ni@singbuntu24:~/repos/test/test2/FabricPC$
Environment information
-
Operating System: ubuntu 24
-
Python version: 3.12.3
-
tensorflow-datasets/tfds-nightlyversion: tfds_nightly-4.9.9.dev202510250044-py3-none-any.whl -
tensorflow/tf-nightlyversion: -
Does the issue still exists with the last
tfds-nightlypackage (pip install --upgrade tfds-nightly) ?
yes it does
Reproduction instructions
In a python3.12 (and possibly other >3.9) virtual environment on a machine where a dataset has not yet been downloaded, try to use tfds to fetch the dataset and you'll get an error.
<put a code snippet, a link to a gist or a colab here>
If you share a colab, make sure to update the permissions to share it.
Link to logs
If applicable, <link to gist with logs, stack trace>
Expected behavior
What you expected to happen.
I expected the dataset to download and instead got the above stacktrace.
After pip install importlib_resources the problem disappears.
Additional context
Add any other context about the problem here.
- Lingua principale
- Python
- Stelle
- 4.6k
- Fork
- 1.6k
- Merge medio
- 5h 47m
- PR unite (30g)
- 2
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di tensorflow/datasets
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 76/100
tensorflow/datasets#11233 ·
-
dataset request
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
tensorflow/datasets#11228 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
tensorflow/datasets#11210 · 1 commento ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 1/100
tensorflow/datasets#11196 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 1/100
tensorflow/datasets#11195 ·
Tutte le issue di tensorflow/datasets
Issue simili
-
correction metadata
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
acl-org/acl-anthology#10104 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug status/needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
prowler-cloud/prowler#12885 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Bug in GaussianTailProbabilityCalibrator: running_statistics=False still uses a windowed varianceApertabug good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
selimfirat/pysad#107 ·
I maintainer di solito rispondono entro 1 giorno
-
bug ci-failure high priority
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
vllm-project/vllm-omni#8194 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno