[Checkins] SVN: zope.z2release/trunk/ Avoid hardcoded upper_names list.

Hanno Schlichting hannosch at hannosch.eu
Mon Apr 5 16:13:34 EDT 2010


Log message for revision 110524:
  Avoid hardcoded upper_names list.
  

Changed:
  U   zope.z2release/trunk/docs/HISTORY.txt
  U   zope.z2release/trunk/setup.py
  U   zope.z2release/trunk/zope/z2release/cli.py

-=-
Modified: zope.z2release/trunk/docs/HISTORY.txt
===================================================================
--- zope.z2release/trunk/docs/HISTORY.txt	2010-04-05 20:02:34 UTC (rev 110523)
+++ zope.z2release/trunk/docs/HISTORY.txt	2010-04-05 20:13:33 UTC (rev 110524)
@@ -1,6 +1,11 @@
 Changelog
 =========
 
+0.2 - 2010/04/05
+----------------
+
+* Avoid hardcoded upper_names list.
+
 0.1.5 - 2009/12/25
 ------------------
 

Modified: zope.z2release/trunk/setup.py
===================================================================
--- zope.z2release/trunk/setup.py	2010-04-05 20:02:34 UTC (rev 110523)
+++ zope.z2release/trunk/setup.py	2010-04-05 20:13:33 UTC (rev 110524)
@@ -1,17 +1,15 @@
 from setuptools import setup, find_packages
 import os
 
-version = '0.1.5'
+version = '0.2'
 
 setup(name='zope.z2release',
       version=version,
       description="Zope 2 release helper",
       long_description=open("README.txt").read() + "\n" +
                        open(os.path.join("docs", "HISTORY.txt")).read(),
-      # Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers
       classifiers=[
         "Programming Language :: Python",
-        "Topic :: Software Development :: Libraries :: Python Modules",
         ],
       keywords='',
       author='Andreas Jung',
@@ -24,7 +22,6 @@
       zip_safe=False,
       install_requires=[
           'setuptools',
-          # -*- Extra requirements: -*-
       ],
       entry_points=dict(console_scripts=[
         'z2_kgs=zope.z2release.cli:main'

Modified: zope.z2release/trunk/zope/z2release/cli.py
===================================================================
--- zope.z2release/trunk/zope/z2release/cli.py	2010-04-05 20:02:34 UTC (rev 110523)
+++ zope.z2release/trunk/zope/z2release/cli.py	2010-04-05 20:13:33 UTC (rev 110524)
@@ -17,10 +17,16 @@
 from xmlrpclib import Server
 from ConfigParser import RawConfigParser as ConfigParser
 
-# packages containing upper-case letters
-upper_names = ('ClientForm', 'RestrictedPython', 'ZConfig', 'ZODB3', 'zLOG', 
-               'Acquisition', 'DateTime', 'ExtensionClass', 'Persistence')
 
+server = None
+
+
+class CasePreservingConfigParser(ConfigParser):
+
+    def optionxform(self, option):
+        return option  # don't flatten case!
+
+
 def write_index(package, version, dirname):
     print >>sys.stderr, 'Package %s==%s' % (package, version)
     dest_dir = os.path.join(dirname, package)
@@ -38,7 +44,7 @@
             print >>fp, link
             print >>fp, '<br/>'
     else:
-        # for externally hosted packages we need to rely on the 
+        # for externally hosted packages we need to rely on the
         # download_url metadata
         rel_data = server.release_data(package, version)
         download_url = rel_data['download_url']
@@ -51,13 +57,13 @@
     print >>fp, '</body></html>'
     fp.close()
 
-def main():
 
+def main():
     global server
 
     if len(sys.argv) != 3:
         print 'Usage: z2_kgs <tag-name> <destination-dirname>'
-        print 'Example: z2_kgs tags/2.10.0b4  /var/www/download.zope.org/Zope2/index/2.12.0b4/'
+        print 'Example: z2_kgs tags/2.12.1 /var/www/download.zope.org/Zope2/index/2.12.1/'
         sys.exit(1)
 
     tag = sys.argv[1]
@@ -73,21 +79,13 @@
     version_file = os.path.join(dirname, 'versions.cfg')
     file(version_file, 'w').write(data)
 
-    CP = ConfigParser()
+    CP = CasePreservingConfigParser()
     CP.read(version_file)
 
     server = Server('http://pypi.python.org/pypi')
-    links = list()
 
     write_index('Zope2', version, dirname)
     for package in CP.options('versions'):
-
-        # options() returns all options in lowercase but
-        # we must preserve the case for package names
-        for name in upper_names:
-            if name.lower() == package:
-                package = name
-                break
         version = CP.get('versions', package)
         write_index(package, version, dirname)
 



More information about the checkins mailing list