else:
cfile = imp.cache_from_source(file)
try:
- os.makedirs(os.path.dirname(cfile))
+ dirname = os.path.dirname(cfile)
+ if dirname:
+ os.makedirs(dirname)
except OSError as error:
if error.errno != errno.EEXIST:
raise
py_compile.compile(self.source_path)
self.assertTrue(os.path.exists(self.cache_path))
+ def test_cwd(self):
+ cwd = os.getcwd()
+ os.chdir(self.directory)
+ py_compile.compile(os.path.basename(self.source_path),
+ os.path.basename(self.pyc_path))
+ os.chdir(cwd)
+ self.assertTrue(os.path.exists(self.pyc_path))
+ self.assertFalse(os.path.exists(self.cache_path))
+
def test_relative_path(self):
py_compile.compile(os.path.relpath(self.source_path),
os.path.relpath(self.pyc_path))
Library
-------
+- Issue #12618: Fix a bug that prevented py_compile from creating byte
+ compiled files in the current directory. Initial patch by Sjoerd de Vries.
+
- Issue #13444: When stdout has been closed explicitly, we should not attempt
to flush it at shutdown and print an error.