[Checkins] SVN: zc.buildout/trunk/ - Conditionally import and use hashlib.md5 when it's available instead

Sidnei da Silva sidnei at enfoldsystems.com
Tue Oct 7 20:58:50 EDT 2008


Log message for revision 91889:
  - Conditionally import and use hashlib.md5 when it's available instead
    of md5 module, which is deprecated in Python 2.6.
  
  

Changed:
  U   zc.buildout/trunk/CHANGES.txt
  U   zc.buildout/trunk/src/zc/buildout/buildout.py

-=-
Modified: zc.buildout/trunk/CHANGES.txt
===================================================================
--- zc.buildout/trunk/CHANGES.txt	2008-10-08 00:48:21 UTC (rev 91888)
+++ zc.buildout/trunk/CHANGES.txt	2008-10-08 00:58:49 UTC (rev 91889)
@@ -7,6 +7,9 @@
 1.1.2 (Unreleased)
 ==================
 
+- Conditionally import and use hashlib.md5 when it's available instead
+  of md5 module, which is deprecated in Python 2.6.
+
 - Added Jython support for bootstrap, development bootstrap
   and zc.buildout support on Jython
 

Modified: zc.buildout/trunk/src/zc/buildout/buildout.py
===================================================================
--- zc.buildout/trunk/src/zc/buildout/buildout.py	2008-10-08 00:48:21 UTC (rev 91888)
+++ zc.buildout/trunk/src/zc/buildout/buildout.py	2008-10-08 00:58:49 UTC (rev 91889)
@@ -18,7 +18,6 @@
 
 import distutils.errors
 import logging
-import md5
 import os
 import pprint
 import re
@@ -36,6 +35,12 @@
 
 from rmtree import rmtree
 
+try:
+    from hashlib import md5
+except ImportError:
+    # Python 2.4 and older
+    from md5 import md5
+
 realpath = zc.buildout.easy_install.realpath
 
 pkg_resources_loc = pkg_resources.working_set.find(
@@ -1202,7 +1207,7 @@
 
 ignore_directories = '.svn', 'CVS'
 def _dir_hash(dir):
-    hash = md5.new()
+    hash = md5()
     for (dirpath, dirnames, filenames) in os.walk(dir):
         dirnames[:] = [n for n in dirnames if n not in ignore_directories]
         filenames[:] = [f for f in filenames



More information about the Checkins mailing list