diff options
| author | Tarek Ziade <tarek@ziade.org> | 2010-03-17 00:12:54 -0400 |
|---|---|---|
| committer | Tarek Ziade <tarek@ziade.org> | 2010-03-17 00:12:54 -0400 |
| commit | 40c3c1bd6befb8d0d4f34d3510dc237fa9bc8171 (patch) | |
| tree | f2e34c57919733a1128e4b1f9f4fa1ae73a99b63 /src/distutils2/command | |
| parent | 9b2180743d4ed6e6809bae0d4fec44d662a56f63 (diff) | |
| download | disutils2-40c3c1bd6befb8d0d4f34d3510dc237fa9bc8171.tar.gz | |
sending to PyPI various metadata versions in the register command
Diffstat (limited to 'src/distutils2/command')
| -rw-r--r-- | src/distutils2/command/register.py | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/src/distutils2/command/register.py b/src/distutils2/command/register.py index c751200..d060dc8 100644 --- a/src/distutils2/command/register.py +++ b/src/distutils2/command/register.py @@ -227,8 +227,7 @@ Your selection [default 1]: ''', log.INFO) meta = self.distribution.metadata data = { ':action': action, - # XXX implement 1.1 - 'metadata_version' : '1.0', + 'metadata_version' : meta.version, 'name': meta['Name'], 'version': meta['Version'], 'summary': meta['Summary'], @@ -241,12 +240,21 @@ Your selection [default 1]: ''', log.INFO) 'platform': meta['Platform'], 'classifier': meta['Classifier'], 'download_url': meta['Download-URL'], - #'provides': meta['Provides'], - #'requires': meta['Requires'], - #'obsoletes': meta['Obsoletes'], } - #if data['provides'] or data['requires'] or data['obsoletes']: - # data['metadata_version'] = '1.1' + + if meta.version == '1.2': + data['requires_dist'] = meta['Requires-Dist'] + data['requires_python'] = meta['Requires-Python'] + data['requires_external'] = meta['Requires-External'] + data['provides_dist'] = meta['Provides-Dist'] + data['obsoletes_dist'] = meta['Obsoletes-Dist'] + data['project_url'] = meta['Project-Url'] + + elif meta.version == '1.1': + data['provides'] = meta['Provides'] + data['requires'] = meta['Requires'] + data['obsoletes'] = meta['Obsoletes'] + return data def post_to_server(self, data, auth=None): @@ -263,8 +271,9 @@ Your selection [default 1]: ''', log.INFO) body = StringIO.StringIO() for key, value in data.items(): # handle multiple entries for the same name - if type(value) not in (type([]), type( () )): + if not isinstance(value, (tuple, list)): value = [value] + for value in value: body.write(sep_boundary) body.write('\nContent-Disposition: form-data; name="%s"'%key) |
