You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I opened a similar ticket against dipy but figured it would be useful to open here as well as nibabel is the root cause...
Reading through the nibabel source code for InTemporaryDirectory its doing some quite sketchy things like:
self._pwd=os.getcwd()
os.chdir(self.name)
To support programs that are mutlithreaded -- as a lot of API server implementations are in the Python universe -- I suggest the implementation be revisited so as to not accidentally introduce race conditions into the code of consuming applications.
I can work on a reproduction but logically since Python threads share a single process and os.chdir operates at the process level, conceptually I think its obvious nibabel is making some bad assumptions