From 5fc99788269c350479b6ac51009d2725035ce0c5 Mon Sep 17 00:00:00 2001
From: Brian Warner <warner@lothar.com>
Date: Wed, 9 Nov 2011 10:36:32 -0800
Subject: [PATCH] setup.py: umask=022 for 'sdist', to avoid depending on
 environment

The new tarball-building buildslave had a bogus umask set, causing the 1.9.0
tarballs to be non-other-user-readable (go-rwx), which is a hassle for
packaging. (The umask was correct on the old buildslave, but it was moved to
a new host shortly before the release). This should make sure tarballs are
correct despite the host's setting.

Note to others: processes run under twistd get umask=077 unless you arrange
otherwise.
---
 setup.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/setup.py b/setup.py
index 72ef1f96..e471c973 100644
--- a/setup.py
+++ b/setup.py
@@ -311,7 +311,11 @@ class MySdist(sdist.sdist):
                 return fullname + "-SUMO"
             self.distribution.get_fullname = get_fullname
 
-        return sdist.sdist.make_distribution(self)
+        try:
+            old_mask = os.umask(int("022", 8))
+            return sdist.sdist.make_distribution(self)
+        finally:
+            os.umask(old_mask)
 
 
 setup_args = {}
-- 
2.45.2