Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue31665>
___
___
Eryk Sun added the comment:
PR 1927 is a definite improvement. By using _get_osfhandle() instead of caching
the handle value, it guarantees that access to the original console file can be
saved and restored via `fd_save = dup(fd)` and `dup2(fd_save, fd)`. It also
allows duping a new open
Eryk Sun added the comment:
The need for asynchronous I/O (i.e. FILE_FLAG_OVERLAPPED) with
ReadFileScatter() and WriteFileGather() makes them a poor fit for POSIX
os.readv() and os.writev(), since we can't open the file with open() or
os.open(). Python's socket module opens sockets
Change by Eryk Sun :
--
components: -Windows
title: Pathlib.replace cannot move file to a different drive on Windows if
filename different -> Support moving across filesystems in pathlib.Path, as
shutil.move() does
versions: +Python 3.10, Python 3.8, Python 3.9 -Python
Change by Eryk Sun :
--
dependencies: +Python interactive console doesn't use sys.stdin for input
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue24
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue17620>
___
___
Python-bug
Eryk Sun added the comment:
bpo-33016 fixed the problem with the inconsistent dwFlags argument passed to
GetFinalPathNameByHandleW().
We do need the ability to get the NT name in order to implement samefile() and
sameopenfile() reliably in all cases -- i.e. when the volume serial number
Eryk Sun added the comment:
PEP 11 says that "[a] new feature release X.Y.0 will support all Windows
releases whose extended support phase is not yet expired". There was no such
thing as Extended Security Updates (ESU) when that provision was accepted. As
defined by PEP 11, extend
Eryk Sun added the comment:
"C:\some\path/some/file.txt" is a valid file path. The Windows file API
normalizes most paths, except for verbatim paths that start with exactly
"\\?\". Path normalization includes replacing forward slashes with backslashes.
If you provide th
Change by Eryk Sun :
--
title: multprocessing errors on Windows: WriteFile() argument 1 must be int,
not None; OSError: handle is closed -> multiprocessing Manager error: send()
called for a closed connection
type: crash -> behavior
versions: +Python 3.10, Python 3.8, Pyth
Eryk Sun added the comment:
This issue is similar to bpo-25117 in terms of the installer failing to run
Python for post-installation tasks. The complication in this case is that a
subsequent repair doesn't install pip.
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issue29
Eryk Sun added the comment:
I tested installing 3.10 in session 0 for the current user, as a user with the
batch logon right. The installation succeeded. If you're running as SYSTEM,
then installing for the current user doesn't see reasonable to me. I won't test
that case.
I tested
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue25166>
___
___
Python-bug
Eryk Sun added the comment:
Maybe it's worth adding a recommendation in the docs to reboot and try to
repair an installation that fails in the final stage due to ucrt not being
fully installed yet, i.e. missing api-ms-win-crt-*.dll. Or maybe this case can
be detected and display a message
Eryk Sun added the comment:
The current help text attempts to explain point 2, in terms of an active
virtual environment, shebangs, the PY_PYTHON[2|3] environment variables, and
the py.ini [defaults]. It's a lot to say succinctly in a few lines of text. A
shortened URL that links
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 3.5, Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue36880>
___
___
Eryk Sun added the comment:
> So no, while unresolved, this bug report should not be closed.
The implied question was whether you or the core devs on the nosy list, upon
further consideration, wanted to resolve the issue by rejecting the request,
but it had simply been forgotten about fo
Change by Eryk Sun :
--
resolution: -> not a bug
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/issue34840>
___
Change by Eryk Sun :
--
type: behavior -> enhancement
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
I think the documentation of ctypes.PyDLL and ctypes.pythonapi is good enough
as is.
--
resolution: -> rejected
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Eryk Sun :
--
assignee: -> docs@python
components: +Library (Lib)
type: -> enhancement
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/i
Eryk Sun added the comment:
> The proposal in this issue is to have a public standard library API,
> which I'm calling ‘tempfile.makepath’,
It's a few years later, and tempfile.mktemp() still exists and works without
raising a deprecation warning. Of course it's still marked as depr
Eryk Sun added the comment:
The pathlib documentation of Path.rename() says "[o]n Unix, if target exists
and is a file, it will be replaced silently if the user has permission". This
leaves the behavior on Windows in question. The reader has to scroll down to
the correspond
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg273845
___
Python tracker
<https://bugs.python.org/issue27886>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
components: +Unicode
nosy: +ezio.melotti, vstinner
versions: -Python 3.5, Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue35
Change by Eryk Sun :
--
components: +Extension Modules -Library (Lib)
versions: +Python 3.10 -Python 3.5, Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue37
Change by Eryk Sun :
--
stage: needs patch ->
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
Deleting a file in Windows 10 has been updated to try a POSIX-style delete. For
a POSIX delete, the filesystem unlinks the file even it's open, whereas a
classic delete only unlinks a 'deleted' file when it's closed. The filesystem
has to support it. NTFS does
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issue29
Change by Eryk Sun :
--
components: +Extension Modules, Interpreter Core -Library (Lib)
stage: patch review ->
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.pyth
Change by Eryk Sun :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> Ctypes Packing Bitfields Incorrectly - Linux
___
Python tracker
<https://bugs.python
Change by Eryk Sun :
--
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/issue22781>
___
___
Python-bugs-list
Eryk Sun added the comment:
"Tools/msi/README.txt" still references "%SystemRoot%\System32" and
"%SystemRoot%\SysWOW64" as the location of "python3[x].dll" for all-users
installs. The containing paragraph can be removed. Move the lines
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5
___
Python tracker
<https://bugs.python.org/issue11429>
___
___
Python-bug
Eryk Sun added the comment:
If non-disk files are made non-seekable in Windows, this will also resolve
bpo-42602.
--
___
Python tracker
<https://bugs.python.org/issue34
Change by Eryk Sun :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> seekable() returns True on pipe objects in Windows
___
Python tracker
<https://bugs.python
Eryk Sun added the comment:
Console input handles pose the same risk of hanging indefinitely when io.FileIO
is used in legacy standard I/O mode (i.e. PYTHONLEGACYWINDOWSSTDIO).
Seeking could simply be disallowed on all files that aren't FILE_TYPE_DISK. For
example, change portable_lseek
Eryk Sun added the comment:
Hanging on a synchronous console file during startup shouldn't be an issue in
3.6+, since io._WindowsConsoleIO doesn't support seeking, but it could still be
an issue with legacy mode, which uses io.FileIO. I'm marking this as a
duplicate of bpo-34780, which has
Eryk Sun added the comment:
I'm closing this issue as out of date. The tutorial now refers to the py
command and also the python3.9 command from the app distribution. The patch's
addition of "followed by Enter" after "Control-Z" is still needed, but it's not
r
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5
___
Python tracker
<https://bugs.python.org/issue24052>
___
___
Python-bug
Eryk Sun added the comment:
I added an updated implementation of windows_helper.py to the dependency
bpo-22080.
--
components: +Windows
nosy: +paul.moore
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5
___
Python tracker
<ht
Change by Eryk Sun :
--
title: Proposed addition to Windows FAQ -> Add an answer to the Windows FAQ
about installing the Universal C Runtime
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.5, Python 3.6, Python
3.7
___
Python trac
Eryk Sun added the comment:
> So, two interesting questions: does this in fact match the behavior of
> os._execvpe, and does it match the behavior of the shell?
I think it's fine. child_exec() tries all paths. It saves the first error
that's not ENOENT or ENOTDIR. The saved erro
Eryk Sun added the comment:
With increasing use of os.access() in shutil and tempfile, it would be nice to
have a real implementation of os.access() for Windows.
Instead of manually evaluating the security of the file/directory, as
issue2528.2.patch attempts to do, I'd rather just open
Change by Eryk Sun :
--
components: +Windows
nosy: +paul.moore, steve.dower, tim.golden, zach.ware
type: -> behavior
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issu
New submission from Eryk Sun :
pathlib._WindowsFlavour.resolve() mistakenly assume that os.getcwd() returns a
resolved path in Windows:
s = str(path)
if not s:
return os.getcwd()
I don't think this is a practical problem since `str(path)` should never be an
empty string
Eryk Sun added the comment:
exec(obj, globals(), locals()) is the same as exec(obj). Also, locals in a
function scope are optimized, so the locals() dict is a snapshot. Modifying the
snapshot dict doesn't modify the optimized local variables. At most I think
this issue is a duplicate of bpo
Eryk Sun added the comment:
ntpath.normcase() needs a platform-dependent implementation that calls
LCMapStringEx() in Windows, in order to properly agree with case-insensitive
Windows filesystems. See bpo-42658.
--
nosy: +eryksun
resolution: -> duplicate
stage: -> resolved
Change by Eryk Sun :
--
components: +Library (Lib), Unicode
nosy: +ezio.melotti, vstinner
versions: +Python 3.10, Python 3.8
___
Python tracker
<https://bugs.python.org/issue42
Eryk Sun added the comment:
>> PEP 443
>
> I guess that you mean the PEP 446 ;-)
Yes, that's why I meant :$
--
___
Python tracker
<https://bugs.python
Eryk Sun added the comment:
T-VEy, this is a documentation-only issue for versions of Python that are under
active development for bug fixes and enhancements -- 3.8, 3.9, and 3.10.
--
versions: +Python 3.10, Python 3.8
___
Python tracker
<ht
Eryk Sun added the comment:
venv copies the scripts in binary mode, but apparently the Unix "activate"
script already has CRLF line endings when Python is installed in Windows.
Probably the POSIX "Lib/venv/scripts/common/activate" script needs a
line-ending exceptio
Eryk Sun added the comment:
> Eryk Sun: This issue is now closed. If you want to enhance
> the time module, please open a new issue.
I was aware of that at the time, Victor. The problem can be worked on in a new
issue, or in the older issue bpo-8304, which remains open. The two me
Eryk Sun added the comment:
> I'm not sure of what you mean. The function is implemented:
My comment was limited to Windows, for which time.tzset() has never been
implemented. Since Python has its own implementation of time.tzname in Windows,
it should also implement time.tzset() to al
Eryk Sun added the comment:
The idea of adding some kind of clear_screen() function in the os or shutil
module was discussed extensively on python-ideas a few months ago:
https://mail.python.org/archives/list/python-id...@python.org/thread/EWQ2BOL3WVZAU2V2MT3HLXN3AEBHANNZ
https
Eryk Sun added the comment:
communicate() is incomplete, so decoding the output may fail. For example, say
the encoding is UTF-8, and the last multibyte character sequence (2-4 bytes) is
incomplete. Maybe communicate() should always set `stdout_bytes` and
`stderr_bytes` attributes
Eryk Sun added the comment:
So there are a couple things to clarify here. When the documentation says "if
the optional parts are omitted, the code is executed in the current scope", I
think it should explicitly state that this is equivalent to calling
exec(object, globals
Eryk Sun added the comment:
>> Why are __flags__, __basicsize__, __itemsize__,
>>__dictoffset__, and __weakrefoffset__ interesting?
>
> I haven't said they are, but on the other hand I don't see
> why consistency is a bad thing.
IMO, they're not interesting because t
Eryk Sun added the comment:
Update since msg255133:
Python 3.8+ now calls setlocale(LC_CTYPE, "") at startup in Windows, as 3.x has
always done in POSIX. So decoding the output of C strftime("%Z") with
PyUnicode_DecodeLocaleAndSize() 'works' again, since both default
Eryk Sun added the comment:
> decoding the output of strftime("%Z") with PyUnicode_DecodeLocaleAndSize()
> works again since both agree on using the process active code page
At least it works as much as it ever did. It depends on the process active code
page
Eryk Sun added the comment:
Update since msg243660:
Python 3.8+ now calls setlocale(LC_CTYPE, "") at startup in Windows, as it has
always done in POSIX, so decoding the output of strftime("%Z") with
PyUnicode_DecodeLocaleAndSize() works again since both agree on using
Eryk Sun added the comment:
The presumption I suppose is that these statements only execute if
self.stdout_thread and/or self.stderr_thread completes successfully. I suppose
that the read could fail or get canceled via CancelSynchronousIo(). Of course
in that case you have a bigger problem
Eryk Sun added the comment:
The solution for bpo-36779 changed init_timezone() to get tzname directly from
WinAPI GetTimeZoneInformation().
Unfortunately the implementer didn't think to also support time.tzset(), so the
value may be stale with no way to refresh it, or possibly different
Change by Eryk Sun :
--
components: +Library (Lib)
type: -> enhancement
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.4, Python 3.5, Python
3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issu
Change by Eryk Sun :
--
components: +Extension Modules, Library (Lib)
versions: +Python 3.10, Python 3.9 -Python 3.4, Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issue14
New submission from Eryk Sun :
In Windows, os.device_encoding() is hard coded to map file descriptor 0 and
descriptors 1 and 2 respectively to the console's input and output code page if
isatty(fd) is true. But isatty() is true for any character device, such as
"NUL". Also an
New submission from Eryk Sun :
Currently os.get_terminal_size() is hard coded to use the process standard
handles in Windows. The function, however, is intended for arbitrary file
descriptors, so should not be limited as follows:
>>> f = open('conout$', 'w')
>>> os
Eryk Sun added the comment:
In summary, the launcher documentation needs to be extended as follows:
* Include an example of a shebang with a normal Windows path:
#!"C:\Program Files\Python310\python.exe"
Highlight the importance of quoting paths that cont
Eryk Sun added the comment:
I didn't have time to look deeper into this. I'm sorry for not getting back to
you. The rather-large example that you uploaded didn't and doesn't run for me,
so I wasn't able to reproduce the problem.
The one bit of advice I have is to always declare required
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5, Python
3.6
___
Python tracker
<https://bugs.python.org/issue27
Eryk Sun added the comment:
This is a variation on bpo-21822. If join() is called in the main thread, and
it gets interrupted immediately after the lock.acquire(block, timeout) call,
then subsequent calls will hang. In Windows, the acquire() call is not
interruptible with Ctrl+C, so
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5
___
Python tracker
<https://bugs.python.org/issue27803>
___
___
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.2, Python
3.3, Python 3.4, Python 3.5, Python 3.6
___
Python tracker
<https://bugs.python.org/issue25
Eryk Sun added the comment:
The Popen() docs begin by explaining that it has "os.execvp()-like" behavior in
POSIX and uses CreateProcess() in Windows. Personally, I do not think it's
proper for Python's documentation to discuss details of how CreateProcess()
handles lpCommand
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5, Python
3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue30
Change by Eryk Sun :
--
type: -> enhancement
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.4, Python
3.5
___
Python tracker
<https://bugs.python.org/issu
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg221020
___
Python tracker
<https://bugs.python.org/issue16272>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.6
___
Python tracker
<https://bugs.python.org/issue29533>
___
___
Change by Eryk Sun :
--
type: behavior -> enhancement
versions: -Python 3.5, Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issu
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5, Python
3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue25
Eryk Sun added the comment:
> instead of the stated 'surrogatepass'
In Python 3.6 and above, you can check this as follows:
>>> sys.getfilesystemencoding()
'utf-8'
>>> sys.getfilesystemencodeerrors()
'surrogatepass'
In Py
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5, Python
3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue28
Eryk Sun added the comment:
The is fixed in 3.7+.
--
resolution: -> out of date
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Eryk Sun :
--
components: +Interpreter Core -IO
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issue30
Eryk Sun added the comment:
> lets not claim that bytes cannot represent everything on a filesystem
> with an encoding.
Gregory, before changing the filesystem encoding to UTF-8 in Python 3.6, the
[A]NSI file API (e.g. CreateFileA) was used for bytes paths and the [W]ide
character fi
Change by Eryk Sun :
--
resolution: -> duplicate
stage: needs patch -> resolved
status: open -> closed
superseder: -> os.path states that bytes can't represent all MBCS paths under
Windows
___
Python tracker
<https://bugs.python
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 2.7, Python 3.7
___
Python tracker
<https://bugs.python.org/issue36021>
___
___
Python-bug
Change by Eryk Sun :
--
type: -> enhancement
versions: +Python 3.10 -Python 2.7, Python 3.7
___
Python tracker
<https://bugs.python.org/issue39375>
___
___
Py
Eryk Sun added the comment:
For example, the named-pipe filesystem (NPFS), doesn't return timestamps for
pipes in the directory listing, so the timestamps are all 0 (i.e. 1601-01-01):
>>> write_time = win32file.FindFilesW('//./pipe/*')[0][3]
>>> format(write_tim
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 2.7, Python 3.5, Python 3.6, Python
3.7
___
Python tracker
<https://bugs.python.org/issue22
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 2.7, Python 3.5, Python
3.6
___
Python tracker
<https://bugs.python.org/issue4
Eryk Sun added the comment:
I'm closing this issue because the behavior was addressed for Python 3 in POSIX
and mostly addressed in Windows (PEP 443, bpo-19764). The switch to using
PROC_THREAD_ATTRIBUTE_HANDLE_LIST with subprocess.Popen() in Windows at least
makes scripts safe from race
Eryk Sun added the comment:
I forgot about the much older issue for this problem. I'm closing this issue,
because the broken behavior should be fixed, not documented.
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> subprocess fa
Eryk Sun added the comment:
For whatever the reason and Windows version, it's still the case that
_get_handles() should work around any bad standard handles in the current
process. In bpo-25492, I suggested checking os.get_handle_inheritable(). That's
too permissive. It should require
Eryk Sun added the comment:
The locale_alias database was extended to support "en_AG" and many others, but
I'd still prefer Serhiy's suggestion to not guess the codeset when checking the
default LC_CTYPE category. Use locale.nl_langinfo(locale.CODESET), if it's
available.
In Wi
Eryk Sun added the comment:
> Vice versa, using bytes objects cannot represent all file names
> on Windows (in the standard mbcs encoding), hence Windows
> applications should use string objects to access all files.
This is outdated advice that should be removed, or at least
Eryk Sun added the comment:
> I'm always very hesitant to modify system-wide (or user-wide) settings
> like this though. I'd be more comfortable if we made it a PYTHONUTF8_310
> variable that _only_ applies to that specific version. Otherwise someone
> might install an upda
Eryk Sun added the comment:
> I don't understand why any patch for CPython is needed at all.
If and operation on self._handle fails as an invalid handle (due to an
underlying STATUS_INVALID_HANDLE or STATUS_OBJECT_TYPE_MISMATCH), then call
self._handle.Detach() and re-raise the except
Eryk Sun added the comment:
Alexander, I wrote the above sample function to be slotted directly into the
existing design based on the SIGINT event. I wasn't looking to rewrite
everything using user-mode APCs and alertable waits. A change like that could
have ramifications for applications
701 - 800 of 2741 matches
Mail list logo