Mercurial > repos > guerler > hhblits
comparison lib/python3.8/site-packages/wheel/cli/__init__.py @ 0:9e54283cc701 draft
"planemo upload commit d12c32a45bcd441307e632fca6d9af7d60289d44"
author | guerler |
---|---|
date | Mon, 27 Jul 2020 03:47:31 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:9e54283cc701 |
---|---|
1 """ | |
2 Wheel command-line utility. | |
3 """ | |
4 | |
5 from __future__ import print_function | |
6 | |
7 import argparse | |
8 import os | |
9 import sys | |
10 | |
11 | |
12 def require_pkgresources(name): | |
13 try: | |
14 import pkg_resources # noqa: F401 | |
15 except ImportError: | |
16 raise RuntimeError("'{0}' needs pkg_resources (part of setuptools).".format(name)) | |
17 | |
18 | |
19 class WheelError(Exception): | |
20 pass | |
21 | |
22 | |
23 def unpack_f(args): | |
24 from .unpack import unpack | |
25 unpack(args.wheelfile, args.dest) | |
26 | |
27 | |
28 def pack_f(args): | |
29 from .pack import pack | |
30 pack(args.directory, args.dest_dir, args.build_number) | |
31 | |
32 | |
33 def convert_f(args): | |
34 from .convert import convert | |
35 convert(args.files, args.dest_dir, args.verbose) | |
36 | |
37 | |
38 def version_f(args): | |
39 from .. import __version__ | |
40 print("wheel %s" % __version__) | |
41 | |
42 | |
43 def parser(): | |
44 p = argparse.ArgumentParser() | |
45 s = p.add_subparsers(help="commands") | |
46 | |
47 unpack_parser = s.add_parser('unpack', help='Unpack wheel') | |
48 unpack_parser.add_argument('--dest', '-d', help='Destination directory', | |
49 default='.') | |
50 unpack_parser.add_argument('wheelfile', help='Wheel file') | |
51 unpack_parser.set_defaults(func=unpack_f) | |
52 | |
53 repack_parser = s.add_parser('pack', help='Repack wheel') | |
54 repack_parser.add_argument('directory', help='Root directory of the unpacked wheel') | |
55 repack_parser.add_argument('--dest-dir', '-d', default=os.path.curdir, | |
56 help="Directory to store the wheel (default %(default)s)") | |
57 repack_parser.add_argument('--build-number', help="Build tag to use in the wheel name") | |
58 repack_parser.set_defaults(func=pack_f) | |
59 | |
60 convert_parser = s.add_parser('convert', help='Convert egg or wininst to wheel') | |
61 convert_parser.add_argument('files', nargs='*', help='Files to convert') | |
62 convert_parser.add_argument('--dest-dir', '-d', default=os.path.curdir, | |
63 help="Directory to store wheels (default %(default)s)") | |
64 convert_parser.add_argument('--verbose', '-v', action='store_true') | |
65 convert_parser.set_defaults(func=convert_f) | |
66 | |
67 version_parser = s.add_parser('version', help='Print version and exit') | |
68 version_parser.set_defaults(func=version_f) | |
69 | |
70 help_parser = s.add_parser('help', help='Show this help') | |
71 help_parser.set_defaults(func=lambda args: p.print_help()) | |
72 | |
73 return p | |
74 | |
75 | |
76 def main(): | |
77 p = parser() | |
78 args = p.parse_args() | |
79 if not hasattr(args, 'func'): | |
80 p.print_help() | |
81 else: | |
82 try: | |
83 args.func(args) | |
84 return 0 | |
85 except WheelError as e: | |
86 print(e, file=sys.stderr) | |
87 | |
88 return 1 |