Have the sha module raise a DeprecationWarning as specified in PEP 4.

This commit is contained in:
Brett Cannon 2007-05-31 19:20:00 +00:00
parent 03b75fa4e1
commit c2aa09ad80
6 changed files with 19 additions and 7 deletions

View File

@ -3,6 +3,10 @@
# Copyright (C) 2005 Gregory P. Smith (greg@electricrain.com)
# Licensed to PSF under a Contributor Agreement.
import warnings
warnings.warn("the sha module is deprecated; use the hashlib module instead",
DeprecationWarning, 2)
from hashlib import sha1 as sha
new = sha

View File

@ -1,5 +1,5 @@
import hmac
import sha
from hashlib import sha1
import unittest
from test import test_support
@ -43,7 +43,7 @@ class TestVectorsTestCase(unittest.TestCase):
def test_sha_vectors(self):
def shatest(key, data, digest):
h = hmac.HMAC(key, data, digestmod=sha)
h = hmac.HMAC(key, data, digestmod=sha1)
self.assertEqual(h.hexdigest().upper(), digest.upper())
shatest(chr(0x0b) * 20,
@ -95,11 +95,11 @@ class ConstructorTestCase(unittest.TestCase):
def test_withmodule(self):
# Constructor call with text and digest module.
import sha
from hashlib import sha1
try:
h = hmac.HMAC("key", "", sha)
h = hmac.HMAC("key", "", sha1)
except:
self.fail("Constructor call with sha module raised exception.")
self.fail("Constructor call with hashlib.sha1 raised exception.")
class SanityTestCase(unittest.TestCase):

View File

@ -6,6 +6,8 @@
import warnings
warnings.filterwarnings("ignore", "the md5 module is deprecated.*",
DeprecationWarning)
warnings.filterwarnings("ignore", "the sha module is deprecated.*",
DeprecationWarning)
import md5, sha, hmac

View File

@ -4,6 +4,10 @@
# Publication 180-1, Secure Hash Standard, 1995 April 17
# http://www.itl.nist.gov/div897/pubs/fip180-1.htm
import warnings
warnings.filterwarnings("ignore", "the sha module is deprecated.*",
DeprecationWarning)
import sha
import unittest
from test import test_support

View File

@ -529,8 +529,8 @@ def uuid4():
def uuid5(namespace, name):
"""Generate a UUID from the SHA-1 hash of a namespace UUID and a name."""
import sha
hash = sha.sha(namespace.bytes + name).digest()
from hashlib import sha1
hash = sha1(namespace.bytes + name).digest()
return UUID(bytes=hash[:16], version=5)
# The following standard UUIDs are for use with uuid3() or uuid5().

View File

@ -220,6 +220,8 @@ Core and builtins
Library
-------
- sha now raises a DeprecationWarning upon import.
- md5 now raises a DeprecationWarning upon import.
- mimify now raises a DeprecationWarning upon import.