diff --git a/src/datasets/config.py b/src/datasets/config.py index 5ee05da6118..3c4927858c4 100644 --- a/src/datasets/config.py +++ b/src/datasets/config.py @@ -155,4 +155,6 @@ LICENSE_FILENAME = "LICENSE" METRIC_INFO_FILENAME = "metric_info.json" +MODULE_NAME_FOR_DYNAMIC_MODULES = "datasets_modules" + MAX_DATASET_CONFIG_ID_READABLE_LENGTH = 255 diff --git a/src/datasets/load.py b/src/datasets/load.py index 40b4dfcf754..095f676a7eb 100644 --- a/src/datasets/load.py +++ b/src/datasets/load.py @@ -58,10 +58,10 @@ logger = get_logger(__name__) -MODULE_NAME_FOR_DYNAMIC_MODULES = "datasets_modules" - -def init_dynamic_modules(name: str, hf_modules_cache: Optional[Union[Path, str]] = None): +def init_dynamic_modules( + name: str = config.MODULE_NAME_FOR_DYNAMIC_MODULES, hf_modules_cache: Optional[Union[Path, str]] = None +): """ Create a module with name `name` in which you can add dynamic modules such as metrics or datasets. The module can be imported using its name. @@ -285,11 +285,7 @@ def prepare_module( return module_path, hash # otherwise the module is added to the dynamic modules - dynamic_modules_path = ( - dynamic_modules_path - if dynamic_modules_path is not None - else init_dynamic_modules(MODULE_NAME_FOR_DYNAMIC_MODULES, hf_modules_cache=config.HF_MODULES_CACHE) - ) + dynamic_modules_path = dynamic_modules_path if dynamic_modules_path else init_dynamic_modules() module_name_for_dynamic_modules = os.path.basename(dynamic_modules_path) datasets_modules_path = os.path.join(dynamic_modules_path, "datasets") datasets_modules_name = module_name_for_dynamic_modules + ".datasets" diff --git a/tests/test_load.py b/tests/test_load.py index 531c28f7eb9..28b5e2ed127 100644 --- a/tests/test_load.py +++ b/tests/test_load.py @@ -75,7 +75,9 @@ def inject_fixtures(self, caplog): def setUp(self): self.hf_modules_cache = tempfile.mkdtemp() - self.dynamic_modules_path = datasets.load.init_dynamic_modules("test_datasets_modules", self.hf_modules_cache) + self.dynamic_modules_path = datasets.load.init_dynamic_modules( + name="test_datasets_modules", hf_modules_cache=self.hf_modules_cache + ) def tearDown(self): shutil.rmtree(self.hf_modules_cache)