summaryrefslogtreecommitdiffstats
path: root/PC
Commit message (Collapse)AuthorAgeFilesLines
* bpo-43795: Sort PC/python3dll.c (GH-25312)Petr Viktorin2021-04-141-7/+7
| | | | | | Each section is sorted to reduce diffs (review effort) when the file becomes generated. Sort is done with key=str.lower to preserve most of the original order (underscored items first). https://bugs.python.org/issue43795
* bpo-43688: Support the limited C API in debug mode (GH-25131)Victor Stinner2021-04-021-0/+2
| | | | | | | | | | | | | The limited C API is now supported if Python is built in debug mode (if the Py_DEBUG macro is defined). In the limited C API, the Py_INCREF() and Py_DECREF() functions are now implemented as opaque function calls, rather than accessing directly the PyObject.ob_refcnt member, if Python is built in debug mode and the Py_LIMITED_API macro targets Python 3.10 or newer. It became possible to support the limited C API in debug mode because the PyObject structure is the same in release and debug mode since Python 3.8 (see bpo-36465). The limited C API is still not supported in the --with-trace-refs special build (Py_TRACE_REFS macro).
* bpo-43179: Generalise alignment for optimised string routines (GH-24624)Jessica Clarke2021-03-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove m68k-specific hack from ascii_decode On m68k, alignments of primitives is more relaxed, with 4-byte and 8-byte types only requiring 2-byte alignment, thus using sizeof(size_t) does not work. Instead, use the portable alternative. Note that this is a minimal fix that only relaxes the assertion and the condition for when to use the optimised version remains overly strict. Such issues will be fixed tree-wide in the next commit. NB: In C11 we could use _Alignof(size_t) instead, but for compatibility we use autoconf. * Optimise string routines for architectures with non-natural alignment C only requires that sizeof(x) is a multiple of alignof(x), not that the two are equal. Thus anywhere where we optimise based on alignment we should be using alignof(x) not sizeof(x). This is more annoying than it would be in C11 where we could just use _Alignof(x) (and alignof(x) in C++11), but since we still require only C99 we must plumb the information all the way from autoconf through the various typedefs and defines.
* bpo-43637: Fix a possible memory leak in winreg.SetValueEx() (GH-25038)Zackery Spytz2021-03-301-0/+1
|
* bpo-43510: Implement PEP 597 opt-in EncodingWarning. (GH-19481)Inada Naoki2021-03-291-0/+1
| | | | | | | | | | | See [PEP 597](https://www.python.org/dev/peps/pep-0597/). * Add `-X warn_default_encoding` and `PYTHONWARNDEFAULTENCODING`. * Add EncodingWarning * Add io.text_encoding() * open(), TextIOWrapper() emits EncodingWarning when encoding is omitted and warn_default_encoding is enabled. * _pyio.TextIOWrapper() uses UTF-8 as fallback default encoding used when failed to import locale module. (used during building Python) * bz2, configparser, gzip, lzma, pathlib, tempfile modules use io.text_encoding(). * What's new entry
* bpo-43244: Remove symtable.h header file (GH-24910)Victor Stinner2021-03-191-1/+0
| | | | | | | | | | | | | | | | | | Rename Include/symtable.h to to Include/internal/pycore_symtable.h, don't export symbols anymore (replace PyAPI_FUNC and PyAPI_DATA with extern) and rename functions: * PyST_GetScope() to _PyST_GetScope() * PySymtable_BuildObject() to _PySymtable_Build() * PySymtable_Free() to _PySymtable_Free() Remove PySymtable_Build(), Py_SymtableString() and Py_SymtableStringObject() functions. The Py_SymtableString() function was part the stable ABI by mistake but it could not be used, since the symtable.h header file was excluded from the limited C API. The Python symtable module remains available and is unchanged.
* bpo-43356: Allow passing a signal number to interrupt_main() (GH-24755)Antoine Pitrou2021-03-111-0/+1
| | | | Also introduce a new C API ``PyErr_SetInterruptEx(int signum)``.
* bpo-11717: fix ssize_t redefinition error when targeting 32bit Windows app ↵Jozef Grajciar2021-03-011-3/+3
| | | | (GH-24479)
* Fix typo in launcher.c (GH-24497)Ikko Ashimine2021-02-201-2/+2
|
* bpo-43155: Add PyCMethod_New to PC/python3dll.c (GH-24500)Zackery Spytz2021-02-161-0/+1
|
* Fix signed/unsigned comparison to avoid compilation warning (GH-24441)Ken Jin2021-02-041-1/+1
|
* bpo-41713: Remove PyOS_InitInterrupts() from python3dll.c (GH-24257)Victor Stinner2021-01-191-1/+0
|
* bpo-1635741: Fix PyModule_AddObjectRef to use EXPORT_FUNC (GH-24205)Dong-hee Na2021-01-131-1/+1
|
* bpo-42802: Remove distutils bdist_wininst command (GH-24043)Victor Stinner2021-01-0813-3484/+0
| | | | | | | | | | The distutils bdist_wininst command deprecated in Python 3.8 has been removed. The distutils bidst_wheel command is now recommended to distribute binary packages on Windows. * Remove Lib/distutils/command/bdist_wininst.py * Remove PC/bdist_wininst/ project * Remove Lib/distutils/command/wininst-*.exe programs * Remove all references to bdist_wininst
* Bring Python into the new year. (GH-24036)Dong-hee Na2021-01-011-1/+1
|
* Add symbols of the stable ABI to python3dll.c (GH-23598)Victor Stinner2020-12-161-0/+7
| | | | | | | | | | | Add the following symbols to python3dll.c: * PyFrame_GetCode (bpo-40421) * PyFrame_GetLineNumber (bpo-40421) * PyModule_AddObjectRef (bpo-1635741) * PyObject_CallNoArgs (bpo-37194) * PyThreadState_GetFrame (bpo-39947) * PyThreadState_GetID (bpo-39947) * PyThreadState_GetInterpreter (bpo-39947)
* bpo-42591: Export missing Py_FrozenMain() symbol (GH-23730)Victor Stinner2020-12-101-0/+1
| | | | | | | Export the Py_FrozenMain() function: fix a Python 3.9.0 regression. Python 3.9 uses -fvisibility=hidden and the function was not exported explicitly and so not exported. Add also Py_FrozenMain to the stable ABI on Windows.
* bpo-42111: Make the xxlimited module an example of best extension module ↵Petr Viktorin2020-12-081-1/+1
| | | | | | | practices (GH-23226) - Copy existing xxlimited to xxlimited53 (named for the limited API version it uses) - Build both modules, both in debug and release - Test both modules
* bpo-42519: Replace PyObject_MALLOC() with PyObject_Malloc() (GH-23587)Victor Stinner2020-12-012-3/+3
| | | | | | | | | No longer use deprecated aliases to functions: * Replace PyObject_MALLOC() with PyObject_Malloc() * Replace PyObject_REALLOC() with PyObject_Realloc() * Replace PyObject_FREE() with PyObject_Free() * Replace PyObject_Del() with PyObject_Free() * Replace PyObject_DEL() with PyObject_Free()
* bpo-42519: Replace PyMem_MALLOC() with PyMem_Malloc() (GH-23586)Victor Stinner2020-12-011-1/+1
| | | | | | | | | | | No longer use deprecated aliases to functions: * Replace PyMem_MALLOC() with PyMem_Malloc() * Replace PyMem_REALLOC() with PyMem_Realloc() * Replace PyMem_FREE() with PyMem_Free() * Replace PyMem_Del() with PyMem_Free() * Replace PyMem_DEL() with PyMem_Free() Modify also the PyMem_DEL() macro to use directly PyMem_Free().
* bpo-42120: Remove macro defining copysign to _copysign on Windows (GH-23326)Steve Dower2020-11-161-1/+0
|
* bpo-38506: Fix the Windows py.exe launcher's misordering of 3.10 (GH-18307)Zackery Spytz2020-11-161-5/+15
|
* Bump magic number. (GH-23245)Mark Shannon2020-11-121-0/+1
|
* bpo-42171: Add PEP573-related items to the limited API (GH-23009)Petr Viktorin2020-11-101-0/+4
|
* bpo-42262: Add Py_NewRef() and Py_XNewRef() (GH-23152)Victor Stinner2020-11-051-1/+3
| | | | Added Py_NewRef() and Py_XNewRef() functions to increment the reference count of an object and return the object.
* bpo-38439: Update the Windows Store package's icons for IDLE. Artwork by ↵Steve Dower2020-10-203-2/+7
| | | | Andrew Clover (GH-22817)
* bpo-41845: Move PyObject_GenericGetDict() back into the limited API (GH22646)Zackery Spytz2020-10-191-0/+1
| | | | It was moved out of the limited API in 7d95e4072169911b228c9e42367afb5f17fd3db0. This change re-enables it from 3.10, to avoid generating invalid extension modules for earlier versions.
* bpo-41784: make PyUnicode_AsUTF8AndSize part of the limited API (GH-22252)Alex Gaynor2020-10-191-0/+1
|
* bpo-41756: Export PyGen_Send and wrap it in if-defs (#22677)Vladimir Matveev2020-10-131-0/+1
|
* bpo-41834: Remove _Py_CheckRecursionLimit variable (GH-22359)Victor Stinner2020-09-231-1/+0
| | | | | | | | | | Remove the global _Py_CheckRecursionLimit variable: it has been replaced by ceval.recursion_limit of the PyInterpreterState structure. There is no need to keep the variable for the stable ABI, since Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() were not usable in Python 3.8 and older: these macros accessed PyThreadState members, whereas the PyThreadState structure is opaque in the limited C API.
* bpo-41729: Fix test_winconsole failures (3) and hang (GH-22146)Terry Jan Reedy2020-09-121-1/+1
| | | | The problems occured with a repository build on machine with freshly updated Windows 10 Pro.
* bpo-40989: Fix compiler warning in winreg.c (GH-21722)Victor Stinner2020-08-051-1/+1
| | | Explicitly cast PyHKEYObject* to PyObject* to call _PyObject_Init().
* bpo-41304: Ensure python3x._pth is loaded on Windows (GH-21495)Steve Dower2020-07-151-1/+1
|
* bpo-36346: Make using the legacy Unicode C API optional (GH-21437)Serhiy Storchaka2020-07-102-23/+52
| | | | Add compile time option USE_UNICODE_WCHAR_CACHE. Setting it to 0 makes the interpreter not using the wchar_t cache and the legacy Unicode C API.
* bpo-39573: Use the Py_TYPE() macro (GH-21433)Victor Stinner2020-07-102-5/+5
| | | Replace obj->ob_type with Py_TYPE(obj).
* bpo-29778: Ensure python3.dll is loaded from correct locations when Python ↵Steve Dower2020-07-061-77/+73
| | | | | | is embedded (GH-21297) Also enables using debug build of `python3_d.dll` Reference: CVE-2020-15523
* bpo-36346: Undeprecate private function _PyUnicode_AsUnicode(). (GH-21336)Serhiy Storchaka2020-07-053-47/+2
|
* bpo-41187: Convert the _msi module to Argument Clinic (GH-21264)Serhiy Storchaka2020-07-012-183/+1069
|
* bpo-41142: Add support of non-ASCII paths for CAB files. (GH-21195)Serhiy Storchaka2020-06-301-10/+53
| | | | * The path to the CAB file can be non-ASCII. * Paths of added files can be non-ASCII.
* bpo-36346: Prepare for removing the legacy Unicode C API (AC only). (GH-21223)Serhiy Storchaka2020-06-301-30/+297
|
* bpo-41103: Remove old buffer protocol support (#21117)Inada Naoki2020-06-251-4/+0
| | | They are deprecated since Python 3.0.
* bpo-41074: Fix support of non-ASCII names and SQL in msilib. (GH-21126)Serhiy Storchaka2020-06-251-6/+6
| | | | | * Fix support of non-ASCII names in functions OpenDatabase() and init_database(). * Fix support of non-ASCII SQL in method Database.OpenView().
* bpo-41038: Fix non-ASCII string corruption in Win32 resource files (GH-20985)Nikita Nemkin2020-06-241-0/+1
| | | | | | | | In absence of explicit declaration, resource compiler uses system codepage. When this codepage is DBCS or UTF-8, Python's copyright string is corrupted, because it contains copyright sign encoded as \xA9. The fix is to explicitly declare codepage 1252.
* bpo-41070: Simplify pyshellext.dll build (GH-21037)Nikita Nemkin2020-06-234-25/+4
| | | | | Replace MIDL-generated file with manual GUID definition. Use the same .def file for release and debug builds. Update setup build to support latest toolset
* bpo-41039: Simplify python3.dll build (GH-20989)Nikita Nemkin2020-06-232-813/+814
| | | | | | | | | Use linker comment #pragma and preprocessor for re-exporting stable API functions and variables. Module definition file, custom build targets and entry point code become unnecessary and can be removed. This change also fixes missing _PyErr_BadInternalCall export on x86.
* bpo-41054: Simplify resource compilation on Windows (GH-21004)Nikita Nemkin2020-06-233-20/+2
| | | | | | | Remove auto-generated resource header. Pass definitions required by resource files (ORIGINAL_FILENAME and FIELD3) directly to resource compiler. Remove unused MS_DLL_ID resource string and related dead code.
* bpo-41089: Filters and other issues in Visual Studio projects (GH-21070)Nikita Nemkin2020-06-232-22/+29
| | | | | | | | | * Add missing header files to pythoncore. * Add missing file filters ("Resource Files" in particular) to all projects. * Add new sub-filters for private headers in pythoncore and for 3rd party source files. * Add missing _zoneinfo configurations in pcbuild.sln. * Update bdist_wininst with the new zlib location.
* bpo-40989: PyObject_INIT() becomes an alias to PyObject_Init() (GH-20901)Victor Stinner2020-06-151-5/+5
| | | | | | | | | | | | | | The PyObject_INIT() and PyObject_INIT_VAR() macros become aliases to, respectively, PyObject_Init() and PyObject_InitVar() functions. Rename _PyObject_INIT() and _PyObject_INIT_VAR() static inline functions to, respectively, _PyObject_Init() and _PyObject_InitVar(), and move them to pycore_object.h. Remove their return value: their return type becomes void. The _datetime module is now built with the Py_BUILD_CORE_MODULE macro defined. Remove an outdated comment on _Py_tracemalloc_config.
* bpo-37556 Extend help to include latest overrides (GH-14701)Steve (Gadget) Barnes2020-06-121-1/+10
| | | | | Modify the help in cpython/PC/launcher.c to show users that "latest" can be overridden by shebang, PY_PYTHON[n] or py.ini files. Also show that script [args] is optional by enclosing in square brackets. Automerge-Triggered-By: @zooba
* bpo-40939: Remove the old parser (GH-20768)Pablo Galindo2020-06-111-4/+0
| | | This commit removes the old parser, the deprecated parser module, the old parser compatibility flags and environment variables and all associated support code and documentation.