diff options
Diffstat (limited to 'third_party/python/wheel/wheel/cli/unpack.py')
-rw-r--r-- | third_party/python/wheel/wheel/cli/unpack.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/third_party/python/wheel/wheel/cli/unpack.py b/third_party/python/wheel/wheel/cli/unpack.py new file mode 100644 index 0000000000..2e9857a350 --- /dev/null +++ b/third_party/python/wheel/wheel/cli/unpack.py @@ -0,0 +1,25 @@ +from __future__ import print_function + +import os.path +import sys + +from ..wheelfile import WheelFile + + +def unpack(path, dest='.'): + """Unpack a wheel. + + Wheel content will be unpacked to {dest}/{name}-{ver}, where {name} + is the package name and {ver} its version. + + :param path: The path to the wheel. + :param dest: Destination directory (default to current directory). + """ + with WheelFile(path) as wf: + namever = wf.parsed_filename.group('namever') + destination = os.path.join(dest, namever) + print("Unpacking to: {}...".format(destination), end='') + sys.stdout.flush() + wf.extractall(destination) + + print('OK') |