[Python-checkins] distutils2: add --metadata option
tarek.ziade
python-checkins at python.org
Sat Jan 29 12:59:10 CET 2011
tarek.ziade pushed 35838832577a to distutils2:
http://hg.python.org/distutils2/rev/35838832577a
changeset: 905:35838832577a
user: Gael Pasgrimaud <gael at gawel.org>
date: Sat Jan 29 12:33:00 2011 +0100
summary:
add --metadata option
files:
distutils2/run.py
diff --git a/distutils2/run.py b/distutils2/run.py
--- a/distutils2/run.py
+++ b/distutils2/run.py
@@ -124,6 +124,10 @@
action="store_true", dest="version", default=False,
help="Prints out the version of Distutils2 and exits.")
+ parser.add_option("-m", "--metadata",
+ action="append", dest="metadata", default=[],
+ help="List METADATA metadata or 'all' for all metadatas.")
+
parser.add_option("-s", "--search",
action="store", dest="search", default=None,
help="Search for installed distributions.")
@@ -141,6 +145,31 @@
print('Distutils2 %s' % __version__)
# sys.exit(0)
+ if len(options.metadata):
+ from distutils2.dist import Distribution
+ dist = Distribution()
+ dist.parse_config_files()
+ metadata = dist.metadata
+
+ if 'all' in options.metadata:
+ keys = metadata.keys()
+ else:
+ keys = options.metadata
+ if len(keys) == 1:
+ print metadata[keys[0]]
+ sys.exit(0)
+
+ for key in keys:
+ if key in metadata:
+ print(metadata._convert_name(key)+':')
+ value = metadata[key]
+ if isinstance(value, list):
+ for v in value:
+ print(' '+v)
+ else:
+ print(' '+value.replace('\n', '\n '))
+ sys.exit(0)
+
if options.search is not None:
search = options.search.lower()
for dist in get_distributions(use_egg_info=True):
--
Repository URL: http://hg.python.org/distutils2
More information about the Python-checkins
mailing list