Fix(research/delf): Replace os.system with native Python libs in dataset_download.py #13603
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Refactored
research/delf/delf/python/datasets/sfm120k/dataset_download.pyto remove dependencies on OS-specific shell commands invoked viaos.system.Changes implemented:
os.system('wget ...')withurllib.request.urlretrieve.os.system('tar ...')with the nativetarfilemodule.os.system('rm ...')withos.remove.os.system('ln -s ...')withos.symlink.Motivation and Context
wget,rm, andlnbinaries which are not present by default. Using native Python libraries ensures cross-platform compatibility.os.systemeliminates the risk of shell injection vulnerabilities and is considered a best practice for file operations.Dependencies
urllib,tarfile,os,shutil.Type of change
Tests
I manually verified the changes by running the script locally:
urllib.tarfilecorrectly extracts the archives to the target directory.Checklist