[issue37189] PyRun_String not exported in python38.dll

2019-06-18 Thread STINNER Victor
STINNER Victor added the comment: I close the issue. The initial issue has been fixed (PyRun_String is now exported again in the Python DLL). Eryk Sun: > Wouldn't it be better to add a function to _testcapi that checks > GetProcAddress(PyWin_DLLhModule, name)? I have no idea. Steve Dower:

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread miss-islington
miss-islington added the comment: New changeset 8cb8d5de4bcc587b35d1b2f4166dad98c202805c by Miss Islington (bot) in branch '3.8': bpo-37189: Export old PyRun_XXX() functions (GH-14142) https://github.com/python/cpython/commit/8cb8d5de4bcc587b35d1b2f4166dad98c202805c -- nosy:

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: My notes on checking an ABI: https://pythoncapi.readthedocs.io/stable_abi.html#check-for-abi-changes I didn't check if https://abi-laboratory.pro/tracker/timeline/python/ supports Windows or not. -- ___ Python

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: > Should we add a regression test to avoid this happening in the future? I'm not sure where to add such test, nor which kind of test is needed. I mean, should we only test that the symbol is present? Or should we also test the ABI? Or even write a

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread miss-islington
Change by miss-islington : -- pull_requests: +14016 pull_request: https://github.com/python/cpython/pull/14177 ___ Python tracker ___

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: New changeset 343ed0ffe0d5ddd4f17c31e14a656a04ac7dfc19 by Victor Stinner in branch 'master': bpo-37189: Export old PyRun_XXX() functions (#14142) https://github.com/python/cpython/commit/343ed0ffe0d5ddd4f17c31e14a656a04ac7dfc19 --

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread Steve Dower
Steve Dower added the comment: Ah, that's what ctypes.pythonapi is :) I looked at PyDLL first and figured it out from there. Should we add a regression test to avoid this happening in the future? -- ___ Python tracker

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: "Those should be the same." Well, I wasn't 100% sure so I tested both. At least, I can now confirm that missing symbols are now exposed in both :-D -- ___ Python tracker

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread Eryk Sun
Eryk Sun added the comment: > api = ctypes.pythonapi > api2 = ctypes.PyDLL("", handle=sys.dllhandle) Those should be the same. In Windows, pythonapi is defined as PyDLL("python dll", None, sys.dllhandle). Wouldn't it be better to add a function to _testcapi that checks

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: I tested the following code: --- import ctypes, sys names = """ PyRun_String PyRun_AnyFile PyRun_AnyFileEx PyRun_AnyFileFlags PyRun_SimpleString PyRun_SimpleFile PyRun_SimpleFileEx PyRun_InteractiveOne PyRun_InteractiveLoop PyRun_File PyRun_FileEx

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread Steve Dower
Steve Dower added the comment: I haven't fully tested this, but a suitable test using ctypes might look like: py = ctypes.PyDLL("", handle=sys.dllhandle) missing = {name for name in EXPECTED_NAMES if not hasattr(py, name)} # assert 'missing' is empty --

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: > A look through `git log -p` looks like bpo-34646 is likely to be related. New changeset e5024517811ee990b770fca0ba7058742d00e032 by Benjamin Peterson in branch 'master': closes bpo-34646: Remove PyAPI_* macros from declarations. (GH-9218)

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
STINNER Victor added the comment: Attached PR 14142 fix bpo-34646 regression. > It shouldn't break existing code because PyRun_String has a macro expansion > to PyRun_StringFlags. ABI compatibility between major releases is not > provided. Many applications don't use Python header files,

[issue37189] PyRun_String not exported in python38.dll

2019-06-17 Thread STINNER Victor
Change by STINNER Victor : -- keywords: +patch pull_requests: +13983 stage: -> patch review pull_request: https://github.com/python/cpython/pull/14142 ___ Python tracker ___

[issue37189] PyRun_String not exported in python38.dll

2019-06-16 Thread PyScripter
PyScripter added the comment: This does break PyScripter Python for Delphi as well. The question whether this change was intentional in which case it would need to be explained and documented, or accidental and will be reversed begs an answer. -- nosy: +pyscripter

[issue37189] PyRun_String not exported in python38.dll

2019-06-08 Thread Benjamin Peterson
Benjamin Peterson added the comment: It shouldn't break existing code because PyRun_String has a macro expansion to PyRun_StringFlags. ABI compatibility between major releases is not provded. -- ___ Python tracker

[issue37189] PyRun_String not exported in python38.dll

2019-06-07 Thread Zachary Ware
Zachary Ware added the comment: A look through `git log -p` looks like bpo-34646 is likely to be related. -- nosy: +benjamin.peterson ___ Python tracker ___

[issue37189] PyRun_String not exported in python38.dll

2019-06-07 Thread Christoph Gohlke
Christoph Gohlke added the comment: `PyRun_String` was exported at least since `python23.dll`. Python.Net relies on it at -- ___ Python tracker

[issue37189] PyRun_String not exported in python38.dll

2019-06-07 Thread Steve Dower
Steve Dower added the comment: Guessing Victor may have touched something in this area. Was it exported before? Or did we just have a macro for it? Maybe the macro was moved to an internal header by mistake? -- nosy: +vstinner ___ Python tracker

[issue37189] PyRun_String not exported in python38.dll

2019-06-07 Thread Christoph Gohlke
New submission from Christoph Gohlke : While testing third party packages on Python 3.8.0b1 for Windows, I noticed that the `PyRun_String` function is no longer exported from `python38.dll`. Is this intentional? I can't see this mentioned at or