[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

AltStyle によって変換されたページ (->オリジナル) /