[issue39573] [C API] Make PyObject an opaque structure in the limited C API

2021-06-06 Thread William Pickard


William Pickard  added the comment:

MSVC by default disables method inlining (/Ob0) when '/Od' is specified on the 
command line while the optimization options specify '/Ob2'.

--

___
Python tracker 
<https://bugs.python.org/issue39573>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44216] Bug in class method with optional parameter

2021-05-23 Thread William Pickard


William Pickard  added the comment:

This is not a bug but a side-affect at how defaulted parameters are stored. The 
rule of thumb is to never use mutable values as default values for parameters.

When a method is created in the Python runtime, it checks if the signature has 
defaulted keyword arguments. If it does, it executes the expression to retrieve 
the value for the arguments and stores the results internally.

When you go and execute the method with these arguments missing, Python 
retrieves a reference the the generated value and provides your method with 
that. This is your issue as you're modifying the same object with every call to 
the method.

The proper way to do this is this:

def do_something(self, a, b=None):
  b = b if b is not None else []
  b.append(a)
  print('b contains', b)

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue44216>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43804] "Building C and C++ Extensions on Windows" docs are very out-of-date

2021-05-10 Thread William Pickard


William Pickard  added the comment:

Correction: You can use either VsDevCmd.bat/Enter-VsDevShell on VS versions 
that provide them (2017 and 2019 are known to include it), but to get the x64 
tools you need to pass command line arguments (They default to x86 native 
tools).

Otherwise you must use either vcvarsall.cmd and pass the appropriate command 
line arguments or vcvarsx86_amd64.bat/vcvars64.bat

--

___
Python tracker 
<https://bugs.python.org/issue43804>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43804] "Building C and C++ Extensions on Windows" docs are very out-of-date

2021-05-10 Thread William Pickard


William Pickard  added the comment:

Then it appears you're using a version of the compiler that is built for 
building 32-bit exes/dlls, you need to use the x64 version.

For this you need to start either the x86 Cross Tools console or the x64 native 
console (VS 2019) or use vcvarsall.cmd/Enter-VsDevShell (PowerShell)

--

___
Python tracker 
<https://bugs.python.org/issue43804>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43804] "Building C and C++ Extensions on Windows" docs are very out-of-date

2021-05-10 Thread William Pickard


William Pickard  added the comment:

I'm quite familiar with MSVC's command line and I'm quite confused on what you 
mean "the above commands are specific to 32-bit Python"

"/LD" is available for both 32-bit and 64-bit compilations, it implies "/MT" to 
the compiler and "/DLL" to the linker.

"/I" is available for both 32-bit and 64-bit compilations.

Python's lib files are named exactly the same between 32-bit and 64-bit 
versions.

The only thing platform specific in MSVC is the compiler. Visual Studio's C/C++ 
build tools ships with 4 variants of MSVC:

2 32-bit versions, 1 for targeting 32-bit and the other for targeting 64-bit 
(32-bit native, 32-bit cross compile to 64-bit)

The same is true for the 64-bit versions (64-bit native and 64-bit cross 
compile to 32-bit)

Internally, these are known as: x86, x86_x64, x64, x64_x86

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43804>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44046] When writing to the Registry using winreg, it currently allows you to write ONLY to HKEY_CURRENT_USERS.

2021-05-06 Thread William Pickard


William Pickard  added the comment:

Here's something you should know about Windows, even if a local account is in 
the Administrators group, it still has restrictions on what it can do, it just 
has the power to elevate itself without requiring login credentials (VIA UAC 
prompts).

This group functions very similar to the sudoers group in Linux.

I expect that disabling UAC only causes Windows to automatically approve them 
on Administrator accounts and deny on non-Administrator accounts for 
applications that explicitly require the prompt (Run as Administrator special 
flag).

There exists a hidden deactivated account called Administrator in Windows that 
functions very similar to root in Linux. UAC prompts are to allow an 
application to run under a temporary Windows Logon session as this hidden 
account while using your logon session, aka elevation.

--

___
Python tracker 
<https://bugs.python.org/issue44046>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44046] When writing to the Registry using winreg, it currently allows you to write ONLY to HKEY_CURRENT_USERS.

2021-05-05 Thread William Pickard


William Pickard  added the comment:

Do you mind ticking the box, "Run as Administrator" in the Compatibility tab 
for python.exe and try winreg again?

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue44046>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43866] Installation files of the Python

2021-04-16 Thread William Pickard


William Pickard  added the comment:

Python, when installed for all users, installs to %ProgramFiles% (or 
%ProgramFiles(x86)% for 32-bit version on 64-bit Windows).

The %LocalAppData% install is just for you... you didn't install it for 
everyone or you didn't provide Python with the Administrator privileges it 
needs for %ProgramFiles% (IE: No process elevation)

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43866>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43776] Popen with shell=True yield mangled repr output

2021-04-08 Thread William Pickard


William Pickard  added the comment:

Actually, the problem is independent of the value of "shell", the __repr__ 
function from the initial PR that introduced it expects "args" to be a sequence 
and converts it to a list.

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43776>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43685] __call__ not being called on metaclass

2021-03-31 Thread William Pickard


William Pickard  added the comment:

This line is the cause of your issue: "new_cls: SingletonMeta = 
cast(SingletonMeta, type(name, bases, namespace))"

More specifically, your call to type() actually erases all information about 
your meta class. If you did "type(S)", you would've seen "type" returned.

Replace it with: "new_cls: SingletonMeta = super().__new__(name, bases, 
namespace)"

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43685>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43661] api-ms-win-core-path-l1-1.0.dll, redux of 40740 (which has since been closed)

2021-03-29 Thread William Pickard


William Pickard  added the comment:

Python 3.9 does not support Windows 7, it's explicitly stated in the release 
notes of 3.9.0

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43661>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43181] Python macros don’t shield arguments

2021-02-09 Thread William Pickard


William Pickard  added the comment:

This feels like it's more of an issue with the C++ compiler you're using. (I 
can tell it's C++ because of template syntax)

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43181>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43122] Python Launcher doesn't open a terminal window

2021-02-03 Thread William Pickard


William Pickard  added the comment:

That quick flash would be your terminal window if I have to guess (based on no 
Mac experience, but Windows).

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue43122>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42887] 100000 assignments of .__sizeof__ cause a segfault on del

2021-01-15 Thread William Pickard


William Pickard  added the comment:

Jumping in here to explain why '__class' doesn't crash when '__sizeof__' does:

When '__class__' is fetched, it returns a new reference to the object's type.

When '__sizeof__' is fetched on the otherhand, a new object is allocated on the 
heap ('types.MethodType') and is returned to the caller.

This object also has a '__sizeof__' that does the same (as it's implemented on 
'object'.

So yes, you are exhausting the C runtime stack by de-allocating over a THOUSAND 
objects.

You can see this happen by watching the memory usage of Python steadily climb.

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue42887>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42529] CPython DLL initialization routine failed from PYC cache file

2020-12-19 Thread William Pickard


William Pickard  added the comment:

I recommend first doing a capture of these functions first, incase Windows is 
routing some through them:

LoadLibrary(Ex)(W|A)

W is the Unicode variant while A is the Ascii variant.

--

___
Python tracker 
<https://bugs.python.org/issue42529>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42529] CPython DLL initialization routine failed from PYC cache file

2020-12-19 Thread William Pickard


William Pickard  added the comment:

Msvcp140.dll from what I can find is part of the VS 2015 Redstributable package.

--

___
Python tracker 
<https://bugs.python.org/issue42529>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42529] CPython DLL initialization routine failed from PYC cache file

2020-12-18 Thread William Pickard


William Pickard  added the comment:

I was just expecting only detours for LoadLibraryExW (and variants) to find out 
which dll failed.

--

___
Python tracker 
<https://bugs.python.org/issue42529>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42529] CPython DLL initialization routine failed from PYC cache file

2020-12-18 Thread William Pickard


William Pickard  added the comment:

https://www.microsoft.com/en-us/research/project/detours/

--

___
Python tracker 
<https://bugs.python.org/issue42529>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42529] CPython DLL initialization routine failed from PYC cache file

2020-12-18 Thread William Pickard


William Pickard  added the comment:

You may need to inject a LoadLibraryExW detour into your python runtime before 
_jpype is loaded and output all the library names its requesting.

You may need to detour all Load 
Library functions for maximum coverage.

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue42529>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41889] enum: Mixin and int base class regression in 3.8.6

2020-09-30 Thread William Pickard


William Pickard  added the comment:

Actually, this is an issue with native types in general that define a 'tp_new' 
slot value ('!= NULL').

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue41889>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24427] subclass of multiprocessing Connection segfault upon attribute acces

2020-09-27 Thread William Pickard


William Pickard  added the comment:

You did just necro a 5 year old bug report...

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue24427>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24427] subclass of multiprocessing Connection segfault upon attribute acces

2020-09-27 Thread William Pickard


Change by William Pickard :


--
nosy:  -WildCard65

___
Python tracker 
<https://bugs.python.org/issue24427>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41525] Python '--help' has corrupted text.

2020-09-08 Thread William Pickard


Change by William Pickard :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue41525>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41523] functools.cached_property does not satisfy the property check

2020-08-17 Thread William Pickard


William Pickard  added the comment:

Another thing to note Raymond, as I stated before, example C is, from an 
external context, is a plain property object who's "fget" attribute is an 
instance of whatever "lru_cache" returns.

isinstance won't be able to differentiate between example "a" and "c" without 
checking "fget"

--

___
Python tracker 
<https://bugs.python.org/issue41523>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41525] Python '--help' has corrupted text.

2020-08-11 Thread William Pickard

New submission from William Pickard :

Running Python's '--help' argument yields some corrupted text:
"-X dev: enable CPythonâ?Ts â?odevelopment modeâ??, introducing additional 
runtime"

--
components: Interpreter Core
messages: 375204
nosy: WildCard65
priority: normal
severity: normal
status: open
title: Python '--help' has corrupted text.
type: behavior
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue41525>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41523] functools.cached_property does not satisfy the property check

2020-08-11 Thread William Pickard


William Pickard  added the comment:

In the lru_cache example, I think property is using the result of 
'lru_cache(c)', which in turns returns a property instance, not a subtype 
instance.

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue41523>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41501] 0x80070643, can't install any version

2020-08-08 Thread William Pickard


William Pickard  added the comment:

Try what's explained here:
https://support.microsoft.com/en-us/help/2438651/how-to-troubleshoot-windows-installer-errors

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue41501>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41358] Unable to uninstall Python launcher using command line

2020-07-23 Thread William Pickard


William Pickard  added the comment:

I think on Windows, the Python Launcher is a separate install entity.

You can verify this under Control Panel -> Uninstall Program and Features.

--
nosy: +WildCard65

___
Python tracker 
<https://bugs.python.org/issue41358>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41368] Allow compiling Python with llvm-clang on Windows.

2020-07-22 Thread William Pickard


William Pickard  added the comment:

Note: Apparently Google-OpenID login button created a seperate account... 
instead of finding this one.

--
nosy: +WildCard65 -William Pickard

___
Python tracker 
<https://bugs.python.org/issue41368>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41368] Allow compiling Python with llvm-clang on Windows.

2020-07-22 Thread William Pickard


New submission from William Pickard :

Since Visual Studio 2017, Microsoft has an optional C++ Desktop Development 
option for compiling C/C++ code with LLVM's Clang compiler.

It's called: Clang with Microsoft CodeGen.
While the code is parsed with LLVM's Clang parser, the code is generated with a 
MSVC compatible code generator (hence the "with Microsoft CodeGen" name suffix)

Currently, Python 3.10 is uncompilable with Clang, but I would appreciate it if 
it can be supported.

I have attached a build log from MSBuild, below is the commandline I used to 
run the build.

Start-Process -FilePath $(Join-Path $PCBUILD -ChildPath 'build.bat' -Resolve) 
-WorkingDirectory $PCBuild -NoNewWindow -RedirectStandardOut $BUILD_LOG 
-RedirectStandardError $BUILDERROR_LOG -ArgumentList '-m', '-v', '-c', 'Debug', 
'-p', 'x64', '-t', 'Build', '"/p:PlatformToolset=ClangCL"'
PS L:\GIT\cpython> Start-Process -FilePath $(Join-Path $PCBUILD -ChildPath 
'build.bat' -Resolve) -WorkingDirectory $PCBuild -NoNewWindow 
-RedirectStandardOut $BUILD_LOG -RedirectStandardError $BUILDERROR_LOG 
-ArgumentList '-m', '-v', '-c', 'Debug', '-p', 'x64', '-t', 'Build', 
'"/p:PlatformToolset=ClangCL"'

--
components: Cross-Build, Windows
files: build.log
messages: 374099
nosy: Alex.Willmer, William Pickard, paul.moore, steve.dower, tim.golden, 
zach.ware
priority: normal
severity: normal
status: open
title: Allow compiling Python with llvm-clang on Windows.
type: compile error
versions: Python 3.10
Added file: https://bugs.python.org/file49331/build.log

___
Python tracker 
<https://bugs.python.org/issue41368>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41294] Allow '__qualname__' to be an instance of 'DynamicClassAttribute'

2020-07-13 Thread William Pickard


New submission from William Pickard :

Currently within Python, the attribute '__qualname__' is restricted to only be 
a string valued attribute.

This makes is rather cumbersome for anyone who wants to implement 
'__qualname__' as a property, instead of a plain attribute (especially if 
'__slots__' are used)

Python also has the type 'DynamicClassAttribute' who's only first party user is 
the 'enum' module, BUT it only supports shadow get requests.

Therefore, I'm requesting both changing DynamicClassAttribute to supoort 
__set__ and __del__ to function like __get__ AND to allow __qualname__ to be an 
instance of DynamicClassAttribute.

--
messages: 373621
nosy: WildCard65
priority: normal
severity: normal
status: open
title: Allow '__qualname__' to be an instance of 'DynamicClassAttribute'
type: enhancement
versions: Python 3.10

___
Python tracker 
<https://bugs.python.org/issue41294>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41188] Prepare CPython for opaque PyObject structure.

2020-07-01 Thread William Pickard


Change by William Pickard :


--
keywords: +patch
pull_requests: +20415
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/21262

___
Python tracker 
<https://bugs.python.org/issue41188>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41188] Prepare CPython for opaque PyObject structure.

2020-07-01 Thread William Pickard


New submission from William Pickard :

The goal of issue 39573 is to make "PyObject" and opaque structure in the 
limited API.

To do that, a few mandatory changes will be required to CPython in order to 
allow for seamless implementation.

Namely:
1) User types need to get away from directly referencing PyObject.
- This can be done by adding a new variable to "PyTypeObject" who's value 
is an offset into the object's pointer to the type's internal structure.
-- Example: 'PyType_Type.tp_obj_offset' would be the value of 
"sizeof(PyVarObject)".
-- For custom types with another base: The value would be calculated 
from the base's "tp_obj_offset" + "tp_basicsize"

2) Create a linkable static library to facility method calls requiring internal 
implementation.
- This static library will be implementation defined, IE: using internal 
methods specific to the runtime that created it.
- Public facing methods will use generic names for example, 
"PyObject_GetType" will get the object's ob_type (or whatever the target 
runtime calls it).

--
components: C API, Interpreter Core
messages: 372775
nosy: WildCard65, vstinner
priority: normal
severity: normal
status: open
title: Prepare CPython for opaque PyObject structure.
type: enhancement
versions: Python 3.10

___
Python tracker 
<https://bugs.python.org/issue41188>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue39573] [C API] Make PyObject an opaque structure in the limited C API

2020-07-01 Thread William Pickard


Change by William Pickard :


--
nosy: +WildCard65
nosy_count: 9.0 -> 10.0
pull_requests: +20410
pull_request: https://github.com/python/cpython/pull/21262

___
Python tracker 
<https://bugs.python.org/issue39573>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41153] [easy Doc] "PyPreConfig_InitIsolatedConfig" and "PyPreConfig_InitPythonConfig" are given the opposite's documentation.

2020-07-01 Thread William Pickard


Change by William Pickard :


--
resolution:  -> fixed
stage:  -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue41153>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41171] Create companion methods of "PyType_FromSpec*" to allow setting metaclass.

2020-06-30 Thread William Pickard


Change by William Pickard :


--
keywords: +patch
pull_requests: +20390
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/21238

___
Python tracker 
<https://bugs.python.org/issue41171>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41171] Create companion methods of "PyType_FromSpec*" to allow setting metaclass.

2020-06-30 Thread William Pickard


William Pickard  added the comment:

Another thing I thought of, if this is accepted, we can turn the "PyType" 
methods into header static inline methods.

--

___
Python tracker 
<https://bugs.python.org/issue41171>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41171] Create companion methods of "PyType_FromSpec*" to allow setting metaclass.

2020-06-30 Thread William Pickard


New submission from William Pickard :

The current goal from what I can tell for Python is to have all C based modules 
move away from static types and instead use "PyType_FromSpec" and the variant 
that specifies base classes.

The only problem is, PyType_FromSpec and it's variant makes the assumption the 
caller wants "PyType_Type" as the type's metaclass.

Why not add companion methods to them prefixed with "PyMetaType" and have the 
"PyType" ones internally invoke these new methods with "PyType_Type" as the 
metaclass (to keep existing behavior and backwards compatibility)

--
components: C API
messages: 372696
nosy: WildCard65
priority: normal
severity: normal
status: open
title: Create companion methods of "PyType_FromSpec*" to allow setting 
metaclass.
type: enhancement
versions: Python 3.10, Python 3.8, Python 3.9

___
Python tracker 
<https://bugs.python.org/issue41171>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41153] [easy Doc] "PyPreConfig_InitIsolatedConfig" and "PyPreConfig_InitPythonConfig" are given the opposite's documentation.

2020-06-28 Thread William Pickard


Change by William Pickard :


--
title: [easy Doc] "PyPreConfig_InitIsolatedConfig" and 
"PyPreConfig_InitPythonConfig" are given opposite documentation. -> [easy Doc] 
"PyPreConfig_InitIsolatedConfig" and "PyPreConfig_InitPythonConfig" are given 
the opposite's documentation.

___
Python tracker 
<https://bugs.python.org/issue41153>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41153] [easy Doc] "PyPreConfig_InitIsolatedConfig" and "PyPreConfig_InitPythonConfig" are given opposite documentation.

2020-06-28 Thread William Pickard


New submission from William Pickard :

The initconfig API functions "PyPreConfig_InitPythonConfig" and 
"PyPreConfig_InitIsolatedConfig" are mistakenly documented for the other method.

--
assignee: docs@python
components: Documentation
messages: 372531
nosy: WildCard65, docs@python
priority: normal
pull_requests: 20358
severity: normal
status: open
title: [easy Doc] "PyPreConfig_InitIsolatedConfig" and 
"PyPreConfig_InitPythonConfig" are given opposite documentation.
type: enhancement
versions: Python 3.10

___
Python tracker 
<https://bugs.python.org/issue41153>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41117] [easy C] GC: Use local variable 'op' when invoking 'traverse' in 'subtract_refs'

2020-06-25 Thread William Pickard


New submission from William Pickard :

When the GC module goes to collect objects (most notably, during Python 
shutdown), it makes a call to subtract_refs on the GC container.

During this invocation, it creates a local variable "op" who's value is the 
result of 'FROM_GC(gc)', but when it goes to use the obtained 'traverse' 
method, it calls FROM_GC(gc) instead of using 'op'.

This, unfortunately, makes it rather difficult to debug "Access Violations" for 
extension modules for when 'traverse' is 'NULL' as inspecting the variable 'op' 
in the chosen debugger (for my case: Visual Studio on Windows) is impossible.

This can potentially introduce a micro optimization in the overall runtime of 
the GC module as it no longer has to invoke the addition instruction (if it 
does) to construct the first parameter of the 'traverse' call.

--
components: C API, Interpreter Core
files: cpython.patch
keywords: patch
messages: 372380
nosy: WildCard65
priority: normal
severity: normal
status: open
title: [easy C] GC: Use local variable 'op' when invoking 'traverse' in 
'subtract_refs'
type: enhancement
versions: Python 3.10
Added file: https://bugs.python.org/file49261/cpython.patch

___
Python tracker 
<https://bugs.python.org/issue41117>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41085] [easy C] array.array.index() method downcasts Py_ssize_t to long

2020-06-23 Thread William Pickard


Change by William Pickard :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue41085>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41085] [easy C] array.array.index() method downcasts Py_ssize_t to long

2020-06-23 Thread William Pickard


Change by William Pickard :


--
keywords: +patch
pull_requests: +20240
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/21071

___
Python tracker 
<https://bugs.python.org/issue41085>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41085] Array regression test fails

2020-06-23 Thread William Pickard


William Pickard  added the comment:

The only modification I made was to "rt.bat" to have the value of '-u' work 
properly.

--

___
Python tracker 
<https://bugs.python.org/issue41085>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41085] Array regression test fails

2020-06-22 Thread William Pickard


New submission from William Pickard :

Here's the verbose stack trace of the failing test:

==
FAIL: test_index (test.test_array.LargeArrayTest)
--
Traceback (most recent call last):
  File "L:\GIT\cpython\lib\test\support\__init__.py", line 837, in wrapper
return f(self, maxsize)
  File "L:\GIT\cpython\lib\test\test_array.py", line 1460, in test_index
self.assertEqual(example.index(11), size+3)
AssertionError: -2147483645 != 2147483651

--
components: Tests
files: test_output.log
messages: 372135
nosy: WildCard65
priority: normal
severity: normal
status: open
title: Array regression test fails
type: behavior
versions: Python 3.10
Added file: https://bugs.python.org/file49257/test_output.log

___
Python tracker 
<https://bugs.python.org/issue41085>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2020-05-23 Thread William Pickard


William Pickard  added the comment:

I've made the changes you've requested.

--

___
Python tracker 
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2020-05-22 Thread William Pickard


William Pickard  added the comment:

I'll get to it Saturday.

--

___
Python tracker 
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-09-25 Thread William Pickard


Change by William Pickard :


--
pull_requests: +8966

___
Python tracker 
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-08-01 Thread William Pickard


William Pickard  added the comment:

My computer was running BitDefender Total Security 2018 (At the time, currently 
running the 2019 edition) and MalwareBytes 3 Premium.

BitDefender has both a built-in firewall and a web protection module while 
MalwareBytes has a web protection module.

--

___
Python tracker 
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32928] _findvs failing on Windows 10 (Release build only)

2018-02-24 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

The powershell module that interacts with the API works if I don't supply 
"-All", supplying said option produces the same issue that is plagues me when 
_findvs.findall() is used.

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32928>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32928] _findvs failing on Windows 10 (Release build only)

2018-02-24 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Looks like something wierd about my computer as the powershell module that 
interacts with the API also has the issue with Windows reporting "File not 
found" for a 2nd instance (maybe Community edition of VS)

--
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32928>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32928] _findvs failing on Windows 10 (Release build only)

2018-02-23 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Use, when distutils calls findall in the module, it results in the OSError 
being thrown.

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32928>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32928] _findvs failing on Windows 10 (Release build only)

2018-02-23 Thread William Pickard

New submission from William Pickard <lollol22...@gmail.com>:

The distutils module _findvs is failing on my Windows 10 PRO machine with the 
following error: OSError: Error 80070002

Note: Building Python 3.6 in debug for some reason doesn't cause the error.

--
components: Distutils, Extension Modules, Library (Lib), Windows
messages: 312673
nosy: WildCard65, dstufft, eric.araujo, paul.moore, steve.dower, tim.golden, 
zach.ware
priority: normal
severity: normal
status: open
title: _findvs failing on Windows 10 (Release build only)
type: crash
versions: Python 3.6, Python 3.7, Python 3.8

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32928>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-30 Thread William Pickard

Change by William Pickard <lollol22...@gmail.com>:


--
versions: +Python 3.6, Python 3.7, Python 3.8

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-27 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Alright, the PR is ready for review.

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-27 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Ok, I found another way to apply the solution to this issue, that is by adding 
the "Connection" header (with value of "close") to the client's request instead 
of the server's response.

I'm going to use this other method as the client is expected to expect the 
server to shutdown the connection (as it asked the server to).

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-05 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

I have tried value 0 for "Content-Length" (along with "text/plain" for 
"Content-Type"), it was when I said I tried both "Content-Length" and 
"Content-Type", while I haven't tried directly setting "close_connection" in 
the handler, my solution is based on how "send_error()" works internally, not 
only that, but send_header is public API (by convention) and the "Connection" 
header is part of HTTP 1.1 so it should be documented ( reference: 
https://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html ), so I don't really 
understand why my initial solution is consider "undocumented logic"

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-05 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

It hangs for me on Windows 10 Professional running on a MSI gaming laptop for 
debug and PGO builds (Python 3.6)

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-05 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Martin, your suggestion will never work as if you look at the trace back posted 
terry.reedy and my test print statements, both the client and server get stuck 
waiting to read data their respective socket, hence the deadlock. Adding the 
header "Connection" with value of "close" is logic taken from the method 
"send_error()" which is what test_err executes (same test class), that header 
along with send_error() adding the Content-Type and Content-Length headers, 
those headers are what is different between do_ERROR and do_GET, I've already 
tried locally having do_GET set both Content-Type and Content-Length headers 
without the Connection header, no difference (deadlock continued).

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs since Python 3.5

2018-01-04 Thread William Pickard

Change by William Pickard <lollol22...@gmail.com>:


--
title: test_httpservers hangs on 3.5.0, win 7 -> test_httpservers hangs since 
Python 3.5
type: crash -> performance

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs on 3.5.0, win 7

2018-01-04 Thread William Pickard

Change by William Pickard <lollol22...@gmail.com>:


--
keywords: +patch
pull_requests: +4969
stage:  -> patch review

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25095] test_httpservers hangs on 3.5.0, win 7

2018-01-04 Thread William Pickard

William Pickard <lollol22...@gmail.com> added the comment:

Scratch the previous message about the possible cause, I found the true cause, 
getresponse() is waiting for a specific header, one that 
BaseHTTPRequestHandler.send_error sends and 
BaseHTTPRequestHandler.send_response() doesn't, that header is "Connection" 
with message "close" (http.server#450), adding that to 
RequestHandlerLoggingTestCase.request_handler.do_GET before self.end_headers() 
fixes the deadlock.

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue25095>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com