comparison env/lib/python3.7/site-packages/virtualenv/run/plugin/discovery.py @ 5:9b1c78e6ba9c draft default tip

"planemo upload commit 6c0a8142489327ece472c84e558c47da711a9142"
author shellac
date Mon, 01 Jun 2020 08:59:25 -0400
parents 79f47841a781
children
comparison
equal deleted inserted replaced
4:79f47841a781 5:9b1c78e6ba9c
1 from __future__ import absolute_import, unicode_literals
2
3 from virtualenv.run.app_data import TempAppData
4
5 from .base import PluginLoader
6
7
8 class Discovery(PluginLoader):
9 """"""
10
11
12 def get_discover(parser, args, options):
13 discover_types = Discovery.entry_points_for("virtualenv.discovery")
14 discovery_parser = parser.add_argument_group(
15 title="discovery", description="discover and provide a target interpreter"
16 )
17 discovery_parser.add_argument(
18 "--discovery",
19 choices=_get_default_discovery(discover_types),
20 default=next(i for i in discover_types.keys()),
21 required=False,
22 help="interpreter discovery method",
23 )
24 options, _ = parser.parse_known_args(args, namespace=options)
25 if options.app_data == "<temp folder>":
26 options.app_data = TempAppData()
27 if options.clear_app_data:
28 options.app_data.clean()
29 discover_class = discover_types[options.discovery]
30 discover_class.add_parser_arguments(discovery_parser)
31 options, _ = parser.parse_known_args(args, namespace=options)
32 discover = discover_class(options)
33 return discover
34
35
36 def _get_default_discovery(discover_types):
37 return list(discover_types.keys())