[Python-checkins] distutils2: now generating a setup.cfg instead of a setup.py in mkpkg
tarek.ziade
python-checkins at python.org
Sat Oct 2 13:11:15 CEST 2010
tarek.ziade pushed f93fc80f6a71 to distutils2:
http://hg.python.org/distutils2/rev/f93fc80f6a71
changeset: 731:f93fc80f6a71
tag: tip
user: Tarek Ziade <tarek at ziade.org>
date: Sat Oct 02 13:11:11 2010 +0200
summary: now generating a setup.cfg instead of a setup.py in mkpkg
files: distutils2/mkpkg.py
diff --git a/distutils2/mkpkg.py b/distutils2/mkpkg.py
--- a/distutils2/mkpkg.py
+++ b/distutils2/mkpkg.py
@@ -32,6 +32,7 @@
# dict form or another structures for all purposes
from distutils2._trove import all_classifiers as _CLASSIFIERS_LIST
+_FILENAME = 'setup.cfg'
_helptext = {
'name': '''
@@ -213,7 +214,7 @@
for root, dirs, files in os.walk(os.curdir):
for filename in files:
- if root == os.curdir and filename == 'setup.py':
+ if root == os.curdir and filename == _FILENAME:
continue
self.inspect_file(os.path.join(root, filename))
@@ -361,45 +362,39 @@
return modified_pkgs
def write_setup_script(self):
- if os.path.exists('setup.py'):
- if os.path.exists('setup.py.old'):
- print ("ERROR: setup.py.old backup exists, please check that "
- "current setup.py is correct and remove setup.py.old")
+ if os.path.exists(_FILENAME):
+ if os.path.exists('%s.old' % _FILENAME):
+ print("ERROR: %(name)s.old backup exists, please check that "
+ "current %(name)s is correct and remove %(name)s.old" % \
+ {'name': _FILENAME})
return
- shutil.move('setup.py', 'setup.py.old')
+ shutil.move(_FILENAME, '%s.old' % _FILENAME)
- fp = open('setup.py', 'w')
+ fp = open(_FILENAME, 'w')
try:
- # XXX do LFs work on all platforms?
- fp.write('#!/usr/bin/env python\n\n')
- fp.write('from distutils2.core import setup\n\n')
- fp.write('setup(name=%s,\n' % repr(self.data['name']))
- fp.write(' version=%s,\n' % repr(self.data['version']))
- fp.write(' description=%s,\n'
- % repr(self.data['description']))
- fp.write(' author=%s,\n' % repr(self.data['author']))
- fp.write(' author_email=%s,\n'
- % repr(self.data['author_email']))
- if self.data['url']:
- fp.write(' url=%s,\n' % repr(self.data['url']))
- if self.data['classifier']:
- fp.write(' classifier=[\n')
- for classifier in sorted(self.data['classifier'].keys()):
- fp.write(' %s,\n' % repr(classifier))
- fp.write(' ],\n')
- if self.data['packages']:
- fp.write(' packages=%s,\n'
- % repr(self._dotted_packages(self.data['packages'])))
- fp.write(' package_dir=%s,\n'
- % repr(self.data['packages']))
- fp.write(' #scripts=[\'path/to/script\']\n')
+ fp.write('[metadata]\n')
+ fp.write('name = %s\n' % self.data['name'])
+ fp.write('version = %s\n' % self.data['version'])
+ fp.write('author = %s\n' % self.data['author'])
+ fp.write('author_email = %s\n' % self.data['author_email'])
+ fp.write('description = %s\n' % self.data['description'])
+ fp.write('home_url = %s\n' % self.data['url'])
+ fp.write('\n')
+ classifiers = '\n'.join([' %s' % clas for clas in
+ self.data['classifier']])
+ fp.write('classifier = %s\n' % classifiers.strip())
- fp.write(' )\n')
+
+ fp.write('[files]\n')
+ packages = '\n'.join([' %s' % pkg for pkg in
+ self.data['packages']])
+ fp.write('\n')
+ fp.write('packages = %s\n' % packages.strip())
finally:
fp.close()
- os.chmod('setup.py', 0755)
- print 'Wrote "setup.py".'
+ os.chmod(_FILENAME, 0755)
+ print 'Wrote "%s".' % _FILENAME
def main():
@@ -410,7 +405,7 @@
program.inspect_directory()
program.query_user()
program.update_config_file()
- program.write_setup()
+ program.write_setup_script()
if __name__ == '__main__':
--
Repository URL: http://hg.python.org/distutils2
More information about the Python-checkins
mailing list