diff --git a/setup.py b/setup.py
index e050efe97fbe4fec7d0d02b95c46cbbc9d05737e_c2V0dXAucHk=..fceccc36873decb6614c47ff38f0b4f22aecfaff_c2V0dXAucHk= 100644
--- a/setup.py
+++ b/setup.py
@@ -438,7 +438,8 @@
     else:
         version = '0+hg' + kw.get('node', '')[:12]
 elif os.path.exists('mercurial/__version__.py'):
-    data = open('mercurial/__version__.py').read()
+    with open('mercurial/__version__.py') as f:
+        data = f.read()
     version = re.search('version = b"(.*)"', data).group(1)
 
 if version: