Web lists-archives.com

Re: Bug in Python3 ('tempfile', 'subprocess', '_hashlib')




On Thu, Apr 5, 2018 at 7:14 PM, Giuseppe Scelsi
<giuseppe.scelsi@xxxxxxxxxx> wrote:
> Hi,
>
> Using freshly-updated Cygwin 64-bit under Windows 7 Enterprise Ver 6.1
> and Python 3 version 3.6.4.
>
> The execution of the following script:
>
>     import subprocess
>     import _hashlib
>     import _sha3
>     subprocess.run('pwd')
>
> always results in 'BlockingIOError: [Errno 11] Resource temporarily
> unavailable'.
>
> I saw this error first in a script that imported 'tempfile' together
> with 'subprocess' (in any order):
>
>     import subprocess
>     import tempfile
>     subprocess.run('pwd')
>
> I then managed to narrow down the problem to the '_sha3' module.
> Notice that you need to import both '_hashlib' and '_sha3' *in that
> order*.  If I swap the order and import '_sha3' before '_hashlib', the
> error becomes sporadic, sometimes it happens and sometimes not.
>
> This problem makes it impossible to use 'tempfile' and 'subprocess' in
> the same script.  My workaround is currently to disable '_sha3' in
> '/lib/python3.6/hashlib.py' by adding at line 62:
>
>     __always_supported = __always_supported[0:8]
>
> This problem only happens in Cygwin 64, 32-bit Cygwin works ok.
>
> Can anyone reproduce this problem?
>
> Best regards,
>
> Giuseppe
>

Tried to reproduce:

davec@SodiumWin ~/tmp
$ cat py3t.py
#!/usr/bin/python3

import subprocess
import _hashlib
import _sha3
subprocess.run('pwd')

davec@SodiumWin ~/tmp
$ ./py3t.py
/home/davec/tmp

Everything seems to work OK for me.  This is with a recently updated Cygwin 64.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple