diff --git a/test/package/test_dependency_api.py b/test/package/test_dependency_api.py index 6ec504b7fc24..9f1a9c9899e8 100644 --- a/test/package/test_dependency_api.py +++ b/test/package/test_dependency_api.py @@ -347,37 +347,6 @@ class TestDependencyAPI(PackageTestCase): with self.assertRaises(NotImplementedError): foo2.package_a.get_something() - def test_auto_extern_c_extension_modules(self): - """auto extern c extionsion modules when c module included in interning package.""" - - def create_module(name): - spec = importlib.machinery.ModuleSpec(name, self, is_package=False) # type: ignore[arg-type] - module = importlib.util.module_from_spec(spec) - ns = module.__dict__ - ns["__spec__"] = spec - ns["__loader__"] = self - ns["__file__"] = f"{name}.so" - ns["__cached__"] = None - return module - - class BrokenImporter(Importer): - def __init__(self): - self.modules = { - "foo": create_module("foo"), - "bar": create_module("bar"), - } - - def import_module(self, module_name): - return self.modules[module_name] - - buffer = BytesIO() - with PackageExporter( - buffer, importer=BrokenImporter(), auto_extern_c_extension_modules=True - ) as exporter: - exporter.intern(["foo", "bar"]) - exporter.save_source_string("my_module", "import foo; import bar") - self.assertListEqual(exporter.externed_modules(), ["bar", "foo"]) - if __name__ == "__main__": run_tests() diff --git a/torch/package/package_exporter.py b/torch/package/package_exporter.py index 2eb62958c515..3710e9eab5b4 100644 --- a/torch/package/package_exporter.py +++ b/torch/package/package_exporter.py @@ -187,7 +187,6 @@ class PackageExporter: self, f: Union[str, Path, BinaryIO], importer: Union[Importer, Sequence[Importer]] = sys_importer, - auto_extern_c_extension_modules: bool = False, ): """ Create an exporter. @@ -197,8 +196,6 @@ class PackageExporter: or a binary I/O object. importer: If a single Importer is passed, use that to search for modules. If a sequence of importers are passsed, an ``OrderedImporter`` will be constructed out of them. - auto_extern_c_extension_modules: Flag whether to enable autoly extern c extension modules (``True``), - or disable (``False``). """ if isinstance(f, (Path, str)): f = str(f) @@ -212,8 +209,6 @@ class PackageExporter: self.serialized_reduces: Dict[int, Any] = {} - self.auto_extern_c_extension_modules = auto_extern_c_extension_modules - # A graph tracking all the modules and pickle objects added to this # package and the dependencies between them. # - Each node is a module name (or a pickle name that looks like '') @@ -533,17 +528,7 @@ class PackageExporter: if filename is None: packaging_error = PackagingErrorReason.NO_DUNDER_FILE elif filename.endswith(tuple(importlib.machinery.EXTENSION_SUFFIXES)): - if self.auto_extern_c_extension_modules: - self.extern([module_name]) - self.dependency_graph.add_node( - module_name, - action=_ModuleProviderAction.EXTERN, - is_package=is_package, - provided=True, - ) - return - else: - packaging_error = PackagingErrorReason.IS_EXTENSION_MODULE + packaging_error = PackagingErrorReason.IS_EXTENSION_MODULE else: packaging_error = PackagingErrorReason.SOURCE_FILE_NOT_FOUND error_context = f"filename: {filename}"