Eryk Sun added the comment:
The issues brought up here are addressed in a more direct, comprehensive, and
productive way in PR 1927 for bpo-30555.
--
resolution: -> duplicate
stage: patch review -> resolved
status: open -> closed
superseder: -> _io._WindowsConsoleIO b
Eryk Sun added the comment:
Note that the following recommendation for getting the system version was
removed in late 2019 [1][2]:
To obtain the full version number for the operating system,
call the GetFileVersionInfo function on one of the system
DLLs, such as Kernel32.dll
Eryk Sun added the comment:
winrshost.exe runs Python with its standard I/O redirected to pipes, so
sys.stdin.read(1) blocks the main thread while waiting for the synchronous read
to complete. If the user types something, then the read completes and the main
thread can call the SIGINT
Eryk Sun added the comment:
> Python is conceptually multi-platform, so its behavior on
> Linux and Windows should be as much consistent as possible.
It's not expected for the behavior of all Popen() parameters to be the same on
all platforms. For example, the behavior and capa
Eryk Sun added the comment:
I wonder if this should be handled more productively by supporting a `daemon`
parameter. In POSIX, use the double fork technique for creating a daemon
process. In Windows, use DETACHED_PROCESS | CREATE_NEW_PROCESS_GROUP |
CREATE_BREAKAWAY_FROM_JOB. For a daemon
Change by Eryk Sun :
--
title: venv says to use python3 which does not exist in 3.6.4 -> Use the py
launcher in venv Windows examples
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
The narrow scope of this issue could be implemented by defining a scheme for
local builds in the PythonCore key -- such as "X.Ys[-32]". The build process
would create or update the
"HKCU\Software\Python\PythonCore\X.Ys[-32]\InstallPat
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg289517
___
Python tracker
<https://bugs.python.org/issue29688>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> Add support for Path.absolute()
___
Python tracker
<https://bugs.python
Change by Eryk Sun :
--
stage: test needed -> needs patch
title: Windows py.exe launcher fail to handle quote correctly -> Windows py
launcher fails to handle a quoted version argument
versions: +Python 3.10, Python 3.9 -Python 3.6, Pyth
Change by Eryk Sun :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> shutil.copy raises IsADirectoryError when the directory does
not actually exist
___
Python tracker
<https://bugs.python
Eryk Sun added the comment:
> For the other 10% (diagnostic logging), it would be nice to have a
> better option than running "cmd /c ver"
CMD's VER command (cmd!eVersion) calls GetVersion(), for which, in its case,
the API calls the internal function GetVersion_Curre
Eryk Sun added the comment:
See the related discussion in bpo-41299. The system interrupt period can be
lowered to 1 ms with timeBeginPeriod() -- or lower with undocumented
NtSetTimerResolution(). This affects the resolution of dispatcher waits such as
Sleep() and WaitForSingleObject(), as
Eryk Sun added the comment:
> Given that extra info, I'd say we're fine to document that our timeouts
> can't do any better than the OS, which "for example, is typically
> around 15ms on Windows", and recommend using non-blocking calls
> instead.
The 1
Change by Eryk Sun :
--
components: +Extension Modules, Interpreter Core
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue21
Change by Eryk Sun :
--
components: +Library (Lib)
versions: -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue42855>
___
___
Python-bug
Change by Eryk Sun :
--
versions: -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue43395>
___
___
Python-bugs-list mailing list
Unsub
Eryk Sun added the comment:
The POSIX "Lib/venv/scripts/common/activate" script needs a line-ending
exception in ".gitattributes":
https://github.com/python/cpython/blob/master/.gitattributes
--
title: python -m venv activation issue when using cygwin on windo
Change by Eryk Sun :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> venv activate bash script has wrong line endings in Windows
___
Python tracker
<https://bugs.python
Eryk Sun added the comment:
> What I would expect is a consistent behaviour and as a
> user I am not interested in inner guts of differences
> between filesystems.
It's already consistent. msg360033 contains a misunderstanding about what write
permission on a file means in Un
Eryk Sun added the comment:
> Explorer keeps handles open to directories to get updates via
> ReadDirectoryChangesExW. It opens watched directories with
> shared delete access, so deleting the child succeeds. But as
> discussed above, the directory isn't unlinked from t
Change by Eryk Sun :
--
components: -IO
___
Python tracker
<https://bugs.python.org/issue33240>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue25386>
___
___
Python-bug
Eryk Sun added the comment:
> Shouldn't the behaviour for _thread.interrupt_main() be always to
> interrupt the main thread.
The underlying C API function, PyErr_SetInterrupt(), simulates SIGINT without
actually sending the signal to the process via kill() or raise(), but the
Eryk Sun added the comment:
FYI, the 3rd field is Field3Value, defined in "PCbuild/python.props" as the
value `MicroVersionNumber*1000 + ReleaseLevelNumber*10 + ReleaseSerial`. It
gets set as the FIELD3 macro in "PCbuild/pyproject.props", which gets used in
the definitio
New submission from Eryk Sun :
bpo-8232 has a patch to add an `arguments` parameter to os.startfile(). This
improvement is needlessly tied to that issue. It's useful in general as a safer
way to execute applications and scripts compared to using subprocess.Popen()
with shell=True. It
Change by Eryk Sun :
--
components: +Windows
dependencies: +[Windows] support args and cwd in os.startfile()
nosy: +paul.moore, tim.golden, zach.ware
versions: +Python 3.10 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue8
Eryk Sun added the comment:
Windows Vista is no longer a concern, so find_windows_browsers() doesn't have
to worry about the KEY_WOW64_* flags. IMO, it should get the browser's real
name (the default value of the key) and the fully-qualified path of the
executable, instead of
Eryk Sun added the comment:
One issues with versioned "X.Y" executables is interference with normal
handling of the ".exe" extension. For example, in "python3.10" the ".10"
counts as an extension, so normally ".exe" won't be appended w
Change by Eryk Sun :
--
versions: +Python 3.10 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue27318>
___
___
Python-bugs-list mailing list
Unsub
Change by Eryk Sun :
--
components: +Extension Modules -Build
versions: +Python 3.10 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue28
Eryk Sun added the comment:
> The Documentation component is for issues that only change the docs
That's not clear in the triaging guide for the multi-select component field.
(However, it is clearly stated as such for the GitHub PR label
"type-documentation".) If that
Change by Eryk Sun :
--
components: +ctypes
___
Python tracker
<https://bugs.python.org/issue24823>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Eryk Sun :
--
versions: +Python 3.10 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue27274>
___
___
Python-bugs-list mailing list
Unsub
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue32745>
___
___
Python-bug
Eryk Sun added the comment:
The ctypes issue is bpo-12836, which has a suggested solution. This issue is a
third-party problem introduced by a workaround, which needs to be addressed at
the source, such as with helper functions and subclasses that close the loop.
--
resolution
Change by Eryk Sun :
--
stage: patch review -> needs patch
title: super call in ctypes sub-class fails in 3.6 -> super call in ctypes
subclass fails
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.6
___
Python tracker
<https://bugs.python.org/issue21130>
___
___
Python-bug
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue33030>
___
___
Python-bug
Eryk Sun added the comment:
I'm closing this as not a bug. You showed that all of the criteria used in a
non-shallow comparison are the same on your end, i.e. they're both regular
files with the same reported size and the same contents. Something is going on,
which is a mystery
Eryk Sun added the comment:
> Read the ANSI code page on Windows,
I don't see why the Windows implementation is inconsistent with POSIX here. If
it were changed to be consistent, the default encoding at startup would remain
the same, since setlocale(LC_CTYPE, "") uses the
Eryk Sun added the comment:
> If Python calls setlocale() per default now, it has served its purpose.
Except not for embedding applications if configure_locale [1] isn't set. But in
that case determining the default locale isn't Python's problem to solve.
> My assumptio
Eryk Sun added the comment:
> But it is not what I want for now. I want to ignore UTF-8 mode
> when `encoding="locale"` is specified.
> This is almost "only in Windows" issue, and users can use
> `encoding="mbcs"` in Windows-only script.
Why is it
Eryk Sun added the comment:
I suppose if you really need a plain `pip` command, you could reinstall with
`python.exe -m pip install --force-reinstall pip`.
--
nosy: +eryksun
___
Python tracker
<https://bugs.python.org/issue43
Eryk Sun added the comment:
That it allows creating the datetime instance looks like a bug to me, i.e. a
time before 0001-01-01 00:00 UTC is invalid. What am I misunderstanding?
--
nosy: +eryksun
___
Python tracker
<https://bugs.python.
Eryk Sun added the comment:
Thank you for thoughtful and detailed answer, Paul.
--
___
Python tracker
<https://bugs.python.org/issue43484>
___
___
Python-bug
Eryk Sun added the comment:
> But please discuss it in another issue.
What's returned by locale.get_locale_encoding() and
locale.get_current_locale_encoding() is relevant to adding them as new
functions and is a chance to implement this correctly in Windows.
You're right t
Eryk Sun added the comment:
Regarding Toby's patch:
Probably _is_windows_nt_internal_command() isn't needed or desired. It's more
of a command-line parsing issue, rather than a file-search issue. For example,
CMD will search for an internal name if it's quoted in
Change by Eryk Sun :
--
resolution: -> duplicate
stage: needs patch -> resolved
status: open -> closed
superseder: -> shutil.which wrong result on Windows
___
Python tracker
<https://bugs.python
Eryk Sun added the comment:
I thought this was a good idea at the time, but a core dev never took up the
mantle in over 4 years, and no one else showed interest.
--
resolution: -> rejected
stage: patch review -> resolved
status: open -&g
Eryk Sun added the comment:
Apparently there's no one else interested in implementing shutil.chown() in
Windows. Okay, but as long as that's the case, the definition should be skipped
in Windows, which is an easy problem.
--
components: -IO
keywords: +easy
versions: +P
Change by Eryk Sun :
--
title: shutil.chown on Windows -> shutil.chown should not be defined in Windows
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
I'm no longer interested in solving the SIGINT event problem locally at the
wait site. A common implementation of _Py_Sleep, _Py_WaitForSingleObject, and
_Py_WaitForMultipleObjects is needed. _winapi.WaitForSingleObject would call
_Py_WaitForSingleObjec
Eryk Sun added the comment:
The signal.signal() docs should explain that only SIGINT and SIGBREAK can be
signaled from another process, and only if the current process is a console
application. A link to os.kill() could be added, which should explain their use
as signals in relation to
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg256166
___
Python tracker
<https://bugs.python.org/issue23948>
___
___
Python-bugs-list mailin
Eryk Sun added the comment:
I'd prefer to change os.kill() to take the code path that generates a console
control event only when the pid value is negative (i.e. a process group ID),
with -1 reserved to send the event to all processes in the console session
(i.e. console process gr
Change by Eryk Sun :
--
components: +Extension Modules -Library (Lib)
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue32
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/issue32862>
___
___
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.9 -Python 3.6, Python 3.7
___
Python tracker
<https://bugs.python.org/issue36305>
___
___
Python-bug
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg291089
___
Python tracker
<https://bugs.python.org/issue29971>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
components: +Extension Modules, Interpreter Core
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue29
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue29178>
___
___
Python-bug
Change by Eryk Sun :
--
components: -ctypes
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue30
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg293989
___
Python tracker
<https://bugs.python.org/issue30405>
___
___
Python-bugs-list mailin
Eryk Sun added the comment:
See also bpo-30405, which has more discussion about supporting PEP 514 in the
launcher.
--
___
Python tracker
<https://bugs.python.org/issue27
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue30405>
___
___
Python-bug
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg291198
___
Python tracker
<https://bugs.python.org/issue29996>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue29996>
___
___
Python-bug
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg359933
___
Python tracker
<https://bugs.python.org/issue28166>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
components: +Interpreter Core -Library (Lib)
versions: +Python 3.10 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue28
Change by Eryk Sun :
--
stage: -> needs patch
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
> In my experience, most applications use the ANSI code page because
> they use the ANSI flavor of the Windows API.
The default encoding at startup and in the "C" locale wouldn't change. It would
only differ from the default if setlocale(
Eryk Sun added the comment:
> side note: do we need to care about Windows 7 anymore in
> 3.10 given that microsoft no longer supports it?
If the fix comes in time for Python 3.8, then it needs to support Windows 7.
For Python 3.9+, the 32 KiB limit can be removed.
The c
Eryk Sun added the comment:
> Isn't this just "how windows behaves" on some filesystems with
> little that we can do about it?
The suggestion was to include an error handler that retries unlink() and
rmdir() -- particularly rmdir() -- a given number of times, probably
Eryk Sun added the comment:
> oh, I missed that a notification happens to the other process(es) in a
> common case, a bit of retrying with backoff would actually make sense
The other common problem with deleting an empty directory is when it's opened
as the working directory o
Change by Eryk Sun :
--
components: +Extension Modules
versions: +Python 3.10, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/issue33
Eryk Sun added the comment:
Filesystem paths in Windows are normally opened case insensitive, but a
filesystem can choose to ignore this. NTFS does so for directories that flagged
as case sensitive [1]. ntpath.normcase() doesn't incorporate this information.
It would have to query the
Change by Eryk Sun :
--
title: shutil.copyfile throws incorrect SameFileError on Google Drive File
Stream -> [Windows] samefile() should not use zero-valued st_dev and st_ino
___
Python tracker
<https://bugs.python.org/issu
Eryk Sun added the comment:
> I'm not actually sure what the proposal here is. Are we suggesting
> that all Python's means of terminating a process should use the
> same exit code?
That's how I read it, but I don't agree if it means always pretending that a
pr
Eryk Sun added the comment:
> On Windows, the new process is executed in the background but
> can send output to a console if the original process was
> started in a console.
C execv[e]() is a mess for console applications. The child process is competing
for console input with an
Change by Eryk Sun :
--
assignee: -> docs@python
components: +Documentation, Extension Modules -Library (Lib)
nosy: +docs@python
title: time_ns() and time() cannot be compared on windows -> [time] document
that integer nanoseconds may be more precise than float
type: be
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg380944
___
Python tracker
<https://bugs.python.org/issue37205>
___
___
Python-bugs-list mailin
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg380941
___
Python tracker
<https://bugs.python.org/issue37205>
___
___
Python-bugs-list mailin
Eryk Sun added the comment:
For Windows, starting with Python 3.10, the value of time.perf_counter[_ns]()
is system wide instead of relative to the first time it's accessed in the
current process. This allows comparing the counter value across processes. See
bpo-37205.
--
Change by Eryk Sun :
--
Removed message: https://bugs.python.org/msg338058
___
Python tracker
<https://bugs.python.org/issue15286>
___
___
Python-bugs-list mailin
Eryk Sun added the comment:
This old issue still needs to be fixed. The check for special_prefixes in
ntpath.normpath() must be removed in order to be consistent with WinAPI
GetFullPathNameW(). In Windows, one can just call ntpath.abspath() to ensure
that nt._getfullpathname() is called
Eryk Sun added the comment:
It's still the case that we have to guess that a generic EINVAL (22) is
actually EPIPE. Low-level wrapper functions in Python/fileutils.c, such as
_Py_read() and _Py_write_impl(), should try to get a better error code by
calling Python's custom winerro
Change by Eryk Sun :
--
components: +Library (Lib)
stage: -> needs patch
type: -> behavior
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.7
___
Python tracker
<https://bugs.python.org/i
Eryk Sun added the comment:
3.7.8, released on 2020-06-27, was the last bugfix release of Python 3.7, so
I'm closing this issue as a duplicate of bpo-33898, which is about supporting
device paths correctly in pathlib.
--
resolution: -> duplicate
stage: -> resolved
s
Eryk Sun added the comment:
The issue with non-strict resolution of relative paths that do not exist is
being addressed in bpo-38671. The proposal to support and document the
absolute() method is addressed in bpo-29688.
--
resolution: -> duplicate
stage: -> resolved
status
Eryk Sun added the comment:
In bpo-29971 it was suggested to split the PyThread lock API in Windows into an
"interruptible lock" API that's based on emulated condition variables and a
"fast lock" API that's based on native condition variables and SRW locks. May
Eryk Sun added the comment:
> on windows, they print sys.path[0] is python38.zip not "".
Isolated mode is probably enabled, i.e. `sys.flags.isolated == 1`. It's enabled
by default for the embedded distribution [1], or if a "._pth" file exists
beside and wi
Eryk Sun added the comment:
Python 3.8 introduced some behavior changes to how reparse points are
supported, but generalized support for handling name-surrogate reparse points
as symlinks was not implemented. Python continues to set S_IFLNK in st_mode
only for IO_REPARSE_TAG_SYMLINK reparse
Change by Eryk Sun :
--
versions: +Python 3.10 -Python 3.9
___
Python tracker
<https://bugs.python.org/issue2920>
___
___
Python-bugs-list mailing list
Unsub
Eryk Sun added the comment:
In some cases, the problem can be worked around by setting the
__PYVENV_LAUNCHER__ environment variable and executing the base executable. For
example:
import os
import sys
import subprocess
def get_python_exe_env():
if sys.executable
Eryk Sun added the comment:
RFC8089 doesn't specify "a mechanism for translating namespaced paths ["\\?\"
and "\\.\"] to or from file URIs", and the Windows shell doesn't support them.
So what's the practical benefit of supporting them in nturl2p
Eryk Sun added the comment:
> I suppose the most reasonable behavior is to strip out the "\\?\" before
> attempting the conversion as the path is sensible and parsable without
Okay, so you're not looking to preserve the fact that it's a \\?\ verbatim path
in
Eryk Sun added the comment:
> Python interpreter will exit when using Ctrl C to interrupt
> some Python module functions with read operations.
The REPL exits when stdin is closed. open() allows the filename to be an
existing file descriptor without requiring a parameter such as "
Eryk Sun added the comment:
The documentation of os.path.join() uses os.sep because it's written from the
perspective of the platform's os.path, which is posixpath on a POSIX system and
ntpath on a Windows system.
If you need to work with POSIX paths in Windows, then use posixpat
Eryk Sun added the comment:
> certainly you can see this is a doc bug, since the doc clearly
> states that os.sep is utilized to join the elements of the path,
> when it clearly isn't; right?
os.path is ntpath in Windows, which uses backslash as the path separator, which
301 - 400 of 2119 matches
Mail list logo