Commit Graph

1474 Commits

Author SHA1 Message Date
Victor Stinner 98921aeaf5
bpo-35134: Add Include/cpython/bytesobject.h file (GH-18494)
Add Include/cpython/bytearrayobject.h and
Include/cpython/bytesobject.h header files.

Move CPython C API from Include/bytesobject.h into a new
Include/cpython/bytesobject.h header file which is included by
Include/bytesobject.h. Do a similar change for
Include/bytearrayobject.h.
2020-02-12 23:54:31 +01:00
Victor Stinner e9e7d284c4
bpo-35081: Move dtoa.h header to the internal C API (GH-18489)
Move the dtoa.h header file to the internal C API as pycore_dtoa.h:
it only contains private functions (prefixed by "_Py").

The math and cmath modules must now be compiled with the
Py_BUILD_CORE macro defined.
2020-02-12 22:54:42 +01:00
Victor Stinner 45876a90e2
bpo-35081: Move bytes_methods.h to the internal C API (GH-18492)
Move the bytes_methods.h header file to the internal C API as
pycore_bytes_methods.h: it only contains private symbols (prefixed by
"_Py"), except of the PyDoc_STRVAR_shared() macro.
2020-02-12 22:32:34 +01:00
Victor Stinner bec4186c67
bpo-35134: Create Include/cpython/listobject.h (GH-18395)
Move listobject.h code surrounded by "#ifndef Py_LIMITED_API"
to a new Include/cpython/listobject.h header file.

Add cpython/ header files to Makefile.pre.in and pythoncore project
of PCbuild.

Add _PyList_CAST() macro.
2020-02-07 09:20:21 +01:00
Anthony Shaw 89ae20b30e
bpo-39185 Add the d[etailed] and q[uiet] verbosity levels for msbuild (GH-17791) 2020-02-05 11:30:19 +11:00
Steve Dower 6a65eba44b
bpo-39401: Avoid unsafe DLL load on Windows 7 and earlier (GH-18231)
As Windows 7 is not supported by Python 3.9, we just replace the dynamic load with a static import. Backports will have a different fix to ensure they continue to behave the same.
2020-01-29 13:46:33 +11:00
Dino Viehland 0cd5bff6b7
bpo-39459: include missing test files in windows installer
Adds missing test files to Windows installer to wrap up bpo-39459
2020-01-28 13:24:12 -08:00
Steve Dower a9d0a6a1b9
bpo-36500: Simplify PCbuild/build.bat and prevent path separator changing in comments (GH-17644) 2019-12-17 14:14:13 -08:00
Anthony Shaw 9e36589d49 bpo-36500: Add --regen option to PCbuild/build.bat so Windows users can regen grammar, opcodes, tokens and symbols (GH-12654) 2019-12-17 13:21:20 -08:00
Steve Dower de148f263f
bpo-33125: Add support for building and releasing Windows ARM64 packages (GH-16828)
Note that the support is not actually enabled yet, and so we won't be publishing these packages. However, for those who want to build it themselves (even by reusing the Azure Pipelines definition), it's now relatively easy to enable.
2019-11-20 09:30:47 -08:00
Segev Finer abce2d9bc6 Add Python 3.8 to py based search in find_python.bat (GH-17188) 2019-11-20 09:25:45 -08:00
Tal Einat ee703cbb41 bpo-38809: Windows build scripts use python.exe from virtual envs (GH-17164)
https://bugs.python.org/issue38809
2019-11-18 09:32:25 -08:00
Victor Stinner 4d231bcc77
bpo-38644: Add _PyObject_Call() (GH-17089)
* Add pycore_call.h internal header file.
* Add _PyObject_Call(): PyObject_Call() with tstate
* Add _PyObject_CallNoArgTstate(): _PyObject_CallNoArg() with tstate
* Add _PyObject_FastCallDictTstate(): _PyObject_FastCallDict()
  with tstate
* _PyObject_Call_Prepend() now takes tstate
* Replace _PyObject_FastCall() calls
  with _PyObject_VectorcallTstate() calls
2019-11-14 13:36:21 +01:00
Victor Stinner f4b1e3d7c6
bpo-38644: Add Py_EnterRecursiveCall() to the limited API (GH-17046)
Provide Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() as
regular functions for the limited API. Previously, there were defined
as macros, but these macros didn't work with the limited API which
cannot access PyThreadState.recursion_depth field.

Remove _Py_CheckRecursionLimit from the stable ABI.

Add Include/cpython/ceval.h header file.
2019-11-04 19:48:34 +01:00
Steve Dower 7aebbd1182
bpo-38492: Remove pythonw.exe dependency on the Microsoft C++ runtime (GH-16824) 2019-10-16 10:27:17 -07:00
Benjamin Peterson 52b9408038
closes bpo-38174: Update vendored expat library to 2.2.8. (GH-16346)
Fixes CVE-2019-15903. See full changelog at https://github.com/libexpat/libexpat/blob/R_2_2_8/expat/Changes.
2019-09-25 21:33:58 -07:00
Steve Dower 3ab73f6bbf
bpo-38117: Update bundled Windows OpenSSL to 1.1.1d (GH-16184) 2019-09-16 15:21:16 +01:00
Steve Dower 8fcaffb048 bpo-37326: Include libffi license when available (GH-15921) 2019-09-11 13:43:00 +01:00
Greg Price 1ad0c776cb bpo-38043: Move unicodedata.normalize tests into test_unicodedata. (GH-15712)
Having these in a separate file from the one that's named after the
module in the usual way makes it very easy to miss them when looking
for tests for these two functions.

(In fact when working recently on is_normalized, I'd been surprised to
see no tests for it here and concluded the function had evaded being
tested at all.  I'd gone as far as to write up some tests myself
before I spotted this other file.)

Mostly this just means moving all the one file's code into the other,
and moving code from the module toplevel to inside the test class to
keep it tidily separate from the rest of the file's code.

There's one substantive change, which reduces by a bit the amount of
code to be moved: we drop the `x > sys.maxunicode` conditional and all
the `RangeError` logic behind it.  Now if that condition ever occurs
it will cause an error at `chr(x)`, and a test failure.  That's the
right result because, since PEP 393 in Python 3.3, there is no longer
such a thing as an "unsupported character".
2019-09-10 10:29:26 +01:00
Greg Price fa3a38d81f Mark files as executable that are meant as scripts. (GH-15354)
This is the converse of GH-15353 -- in addition to plenty of
scripts in the tree that are marked with the executable bit
(and so can be directly executed), there are a few that have
a leading `#!` which could let them be executed, but it doesn't
do anything because they don't have the executable bit set.

Here's a command which finds such files and marks them.  The
first line finds files in the tree with a `#!` line *anywhere*;
the next-to-last step checks that the *first* line is actually of
that form.  In between we filter out files that already have the
bit set, and some files that are meant as fragments to be
consumed by one or another kind of preprocessor.

    $ git grep -l '^#!' \
      | grep -vxFf <( \
          git ls-files --stage \
          | perl -lane 'print $F[3] if (!/^100644/)' \
        ) \
      | grep -ve '\.in$' -e '^Doc/includes/' \
      | while read f; do
          head -c2 "$f" | grep -qxF '#!' \
          && chmod a+x "$f"; \
        done
2019-09-09 07:16:33 -07:00
Dong-hee Na 0a18ee4be7 bpo-37798: Add C fastpath for statistics.NormalDist.inv_cdf() (GH-15266) 2019-08-23 15:20:30 -07:00
Steve Dower b0dace3e97
bpo-37841: Remove python_uwp dependency on msvcp140.dll (GH-15253) 2019-08-13 10:34:07 -07:00
Min ho Kim c4cacc8c5e Fix typos in comments, docs and test names (#15018)
* Fix typos in comments, docs and test names

* Update test_pyparse.py

account for change in string length

* Apply suggestion: splitable -> splittable

Co-Authored-By: Terry Jan Reedy <tjreedy@udel.edu>

* Apply suggestion: splitable -> splittable

Co-Authored-By: Terry Jan Reedy <tjreedy@udel.edu>

* Apply suggestion: Dealloccte -> Deallocate

Co-Authored-By: Terry Jan Reedy <tjreedy@udel.edu>

* Update posixmodule checksum.

* Reverse idlelib changes.
2019-07-30 18:16:13 -04:00
Steve Dower e1b9002472 bpo-36044: Avoid warnings in Windows PGO build and add lzma, bz2 and sqlite coverage (GH-14985)
https://bugs.python.org/issue36044



Automerge-Triggered-By: @zooba
2019-07-28 18:01:12 -07:00
Stefan Krah f117d871c4
Rename memory.c to mpalloc.c for consistency with the header file. (#14687) 2019-07-10 18:27:38 +02:00
Victor Stinner e21b45a8e7
bpo-37472: Remove Lib/test/outstanding_bugs.py (GH-14516) 2019-07-01 18:35:07 +02:00
animalize 8bd2872adb bpo-25361: Enable SSE2 instructions for Windows 32-bit build (GH-12438) 2019-06-24 16:43:26 -07:00
animalize 7fd2ba354e bpo-35360: Update Windows builds to use SQLite 3.28.0 (GH-14179) 2019-06-24 16:22:14 -07:00
Steve Dower 12f1c726d8
bpo-37333: Ensure IncludeTkinter has a value (GH-14240) 2019-06-19 13:07:23 -07:00
Victor Stinner 01b63ecac6
bpo-35134: Add Include/cpython/import.h header file (GH-14213)
* Add Include/cpython/import.h and Include/internal/pycore_import.h
  header files.
* Move _PyImport_ReInitLock() to the internal C API. Don't export the
  symbol anymore.
2019-06-19 00:48:09 +02:00
Steve Dower a268edd6a4
bpo-34631: Updated OpenSSL to 1.1.1c in Windows installer (GH-14163) 2019-06-17 11:36:08 -07:00
Paul Monson 00f6493084 bpo-37288: Fix Windows build when --no-tkinter is specified (GH-14096) 2019-06-17 08:21:28 -07:00
Victor Stinner 8bf08ee45b
bpo-37312: Remove _dummy_thread and dummy_threading modules (GH-14143)
Remove _dummy_thread and dummy_threading modules. These modules
were deprecated since Python 3.7 which requires threading support.
2019-06-17 14:18:43 +02:00
Steve Dower 21a92f8cda
Implement Windows release builds in Azure Pipelines (GH-14065) 2019-06-14 08:29:20 -07:00
Paul Monson 04856c2193 bpo-37238: Enable building for Windows using Visual Studio 2019 (GH-13988) 2019-06-11 15:03:17 -07:00
Paul Monson e7e5039d69 bpo-37181: Fix test_regrtest failures on Windows arm64 (GH-13872) 2019-06-07 10:58:41 -07:00
Łukasz Langa 9ab2fb1c68
Bump to 3.9.0a0 2019-06-04 22:12:32 +02:00
Inada Naoki 91234a1636
bpo-26219: per opcode cache for LOAD_GLOBAL (GH-12884)
This patch implements per opcode cache mechanism, and use it in
only LOAD_GLOBAL opcode.

Based on Yury's opcache3.patch in bpo-26219.
2019-06-03 21:30:58 +09:00
Zackery Spytz 8f96c9f8ed bpo-37007: Implement socket.if_nametoindex(), if_indextoname() and if_nameindex() on Windows (GH-13522) 2019-05-29 14:02:37 -07:00
Victor Stinner 331a6a56e9
bpo-36763: Implement the PEP 587 (GH-13592)
* Add a whole new documentation page:
  "Python Initialization Configuration"
* PyWideStringList_Append() return type is now PyStatus,
  instead of int
* PyInterpreterState_New() now calls PyConfig_Clear() if
  PyConfig_InitPythonConfig() fails.
* Rename files:

  * Python/coreconfig.c => Python/initconfig.c
  * Include/cpython/coreconfig.h => Include/cpython/initconfig.h
  * Include/internal/: pycore_coreconfig.h => pycore_initconfig.h

* Rename structures

  * _PyCoreConfig => PyConfig
  * _PyPreConfig => PyPreConfig
  * _PyInitError => PyStatus
  * _PyWstrList => PyWideStringList

* Rename PyConfig fields:

  * use_module_search_paths => module_search_paths_set
  * module_search_path_env => pythonpath_env

* Rename PyStatus field: _func => func
* PyInterpreterState: rename core_config field to config
* Rename macros and functions:

  * _PyCoreConfig_SetArgv() => PyConfig_SetBytesArgv()
  * _PyCoreConfig_SetWideArgv() => PyConfig_SetArgv()
  * _PyCoreConfig_DecodeLocale() => PyConfig_SetBytesString()
  * _PyInitError_Failed() => PyStatus_Exception()
  * _Py_INIT_ERROR_TYPE_xxx enums => _PyStatus_TYPE_xxx
  * _Py_UnixMain() => Py_BytesMain()
  * _Py_ExitInitError() => Py_ExitStatusException()
  * _Py_PreInitializeFromArgs() => Py_PreInitializeFromBytesArgs()
  * _Py_PreInitializeFromWideArgs() => Py_PreInitializeFromArgs()
  * _Py_PreInitialize() => Py_PreInitialize()
  * _Py_RunMain() => Py_RunMain()
  * _Py_InitializeFromConfig() => Py_InitializeFromConfig()
  * _Py_INIT_XXX() => _PyStatus_XXX()
  * _Py_INIT_FAILED() => _PyStatus_EXCEPTION()

* Rename 'err' PyStatus variables to 'status'
* Convert RUN_CODE() macro to config_run_code() static inline function
* Remove functions:

  * _Py_InitializeFromArgs()
  * _Py_InitializeFromWideArgs()
  * _PyInterpreterState_GetCoreConfig()
2019-05-27 16:39:22 +02:00
Antoine Pitrou 91f4380ced
bpo-36785: PEP 574 implementation (GH-7076) 2019-05-26 17:10:09 +02:00
Victor Stinner 438a12dd9d
bpo-36710: Add tstate parameter in ceval.c (GH-13547)
* Fix a possible reference leak in _PyErr_Print() if exception
  is NULL.
* PyErr_BadInternalCall(): replace PyErr_Format() with _PyErr_SetString().
* Add pycore_pyerrors.h header file.
* New functions:

  * _PyErr_Clear()
  * _PyErr_Fetch()
  * _PyErr_Print()
  * _PyErr_Restore()
  * _PyErr_SetObject()
  * _PyErr_SetString()

* Add 'tstate' parameter to _PyEval_AddPendingCall().
2019-05-24 17:01:38 +02:00
Steve Dower b82e17e626
bpo-36842: Implement PEP 578 (GH-12613)
Adds sys.audit, sys.addaudithook, io.open_code, and associated C APIs.
2019-05-23 08:45:22 -07:00
Paul Monson cfb241bd29 bpo-36941: Project file fixups for Windows ARM64 (GH-13477) 2019-05-22 15:16:21 -07:00
Victor Stinner fd1e0e93b1
bpo-35134: Register new traceback.h header files (GH-13431)
Add new cpython/traceback.h and pycore_traceback.h header files to
Makefile.pre.in and PCbuild/ project.
2019-05-20 02:22:32 +02:00
Paul Monson f96e7fd924 bpo-36941: Windows build changes for Windows ARM64 (GH-13365) 2019-05-17 10:07:24 -07:00
Paul Monson 67ff6a103a bpo-36511: Windows ARM32 buildbot changes (GH-12917) 2019-05-15 15:42:29 -07:00
Paul Monson fb7e7505ed bpo-35926: Add support for OpenSSL 1.1.1b on Windows (GH-11779) 2019-05-15 15:38:55 -07:00
Pierre Glaser f22cc69b01 bpo-36867: Make semaphore_tracker track other system resources (GH-13222)
The multiprocessing.resource_tracker replaces the multiprocessing.semaphore_tracker module. Other than semaphores, resource_tracker also tracks shared_memory segments. Patch by Pierre Glaser.
2019-05-10 22:59:08 +02:00
Paul Monson 62dfd7d6fe bpo-35920: Windows 10 ARM32 platform support (GH-11774) 2019-04-25 18:36:45 +00:00
Victor Stinner 23bace26ec
bpo-36635: Add _testinternalcapi module (GH-12841)
Add a new _testinternalcapi module to test the internal C API.

Move _Py_GetConfigsAsDict() function to the internal C API:
_testembed now uses _testinternalcapi to access the function.
2019-04-18 11:37:26 +02:00
Paul Monson 11efd79076 bpo-36071 Add support for Windows ARM32 in ctypes/libffi (GH-12059) 2019-04-17 18:09:16 -07:00
Victor Stinner 5c75f37d47
bpo-36635: Change pyport.h for Py_BUILD_CORE_MODULE define (GH-12853)
Change PyAPI_FUNC(type), PyAPI_DATA(type) and PyMODINIT_FUNC macros
of pyport.h when Py_BUILD_CORE_MODULE is defined.

The Py_BUILD_CORE_MODULE define must be now be used to build a C
extension as a dynamic library accessing Python internals: export the
PyInit_xxx() function in DLL exports on Windows.

Changes:

* Py_BUILD_CORE_BUILTIN and Py_BUILD_CORE_MODULE now imply
  Py_BUILD_CORE directy in pyport.h.
* ceval.c compilation now fails with an error if Py_BUILD_CORE is not
  defined, just to ensure that Python is build with the correct
  defines.
* setup.py now compiles _pickle.c with Py_BUILD_CORE_MODULE define.
* setup.py compiles _json.c with Py_BUILD_CORE_MODULE define, rather
  than Py_BUILD_CORE_BUILTIN define
* PCbuild/pythoncore.vcxproj: Add Py_BUILD_CORE_BUILTIN define.
2019-04-17 23:02:26 +02:00
Victor Stinner aba7d662ab
bpo-35134: Add cpython/pymem.h to build system (GH-12842) 2019-04-15 17:29:31 +02:00
Pablo Galindo f2cf1e3e28
bpo-36623: Clean parser headers and include files (GH-12253)
After the removal of pgen, multiple header and function prototypes that lack implementation or are unused are still lying around.
2019-04-13 17:05:14 +01:00
Paul Monson 32119e10b7 bpo-35947: Update Windows to the current version of libffi (GH-11797)
We now use a pre-built libffi binary from our binaries repository, and no longer vendor the full implementation.
2019-03-29 16:30:10 -07:00
Jeroen Demeyer 3396d1e0ca bpo-36448: mention 'make regen-all' in error message (GH-12585) 2019-03-29 11:37:22 -07:00
Steve Dower b95a79c928
bpo-36245: Fix more empty environment variable checks (GH-12592) 2019-03-27 16:28:41 -07:00
Isuru Fernando aedc273fd9 Fix registry key for Windows SDK detection (GH-12445) 2019-03-21 10:52:57 -07:00
Jess 7ee88bf3e5 bpo-36245: Avoid problems when building in a directory containing spaces. (GH-12241) 2019-03-21 09:02:59 -07:00
Inada Naoki 6a16b18224
bpo-36297: remove "unicode_internal" codec (GH-12342) 2019-03-18 15:44:11 +09:00
Eric Snow c11183cdcf
bpo-36097: Use only public C-API in the_xxsubinterpreters module (adding as necessary). (gh-12359) 2019-03-15 16:35:46 -06:00
Steve Dower 2f8f56499c
bpo-36108: Avoid failing the build on race condition in clean (GH-12217) 2019-03-07 09:09:15 -08:00
Victor Stinner 4d61e6e3b8
Revert: bpo-33608: Factor out a private, per-interpreter _Py_AddPendingCall(). (GH-11617) (GH-12159)
* Revert "bpo-36097: Use only public C-API in the_xxsubinterpreters module (adding as necessary). (#12003)"

This reverts commit bcfa450f21.

* Revert "bpo-33608: Simplify ceval's DISPATCH by hoisting eval_breaker ahead of time. (gh-12062)"

This reverts commit bda918bf65.

* Revert "bpo-33608: Use _Py_AddPendingCall() in _PyCrossInterpreterData_Release(). (gh-12024)"

This reverts commit b05b711a2c.

* Revert "bpo-33608: Factor out a private, per-interpreter _Py_AddPendingCall(). (GH-11617)"

This reverts commit ef4ac967e2.
2019-03-04 14:21:28 +01:00
Eric Snow bcfa450f21
bpo-36097: Use only public C-API in the_xxsubinterpreters module (adding as necessary). (#12003) 2019-03-01 16:50:31 -07:00
Pablo Galindo 1f24a719e7
bpo-35808: Retire pgen and use pgen2 to generate the parser (GH-11814)
Pgen is the oldest piece of technology in the CPython repository, building it requires various #if[n]def PGEN hacks in other parts of the code and it also depends more and more on CPython internals. This commit removes the old pgen C code and replaces it for a new version implemented in pure Python. This is a modified and adapted version of lib2to3/pgen2 that can generate grammar files compatibles with the current parser.

This commit also eliminates all the #ifdef and code branches related to pgen, simplifying the code and making it more maintainable. The regen-grammar step now uses $(PYTHON_FOR_REGEN) that can be any version of the interpreter, so the new pgen code maintains compatibility with older versions of the interpreter (this also allows regenerating the grammar with the current CI solution that uses Python3.5). The new pgen Python module also makes use of the Grammar/Tokens file that holds the token specification, so is always kept in sync and avoids having to maintain duplicate token definitions.
2019-03-01 15:34:44 -08:00
Victor Stinner 91b9ecf82c
bpo-36142: Add preconfig.c (GH-12128)
* Add _PyArgv_Decode() function
* Move _Py_ClearFileSystemEncoding() and _Py_SetFileSystemEncoding()
  to preconfig.c.
2019-03-01 17:52:56 +01:00
Victor Stinner f684d83d86
bpo-36142: Exclude coreconfig.h from Py_LIMITED_API (GH-12111)
The whole coreconfig.h header is now excluded from Py_LIMITED_API.
Move functions definitions into a new internal pycore_coreconfig.h
header.

* Move Include/coreconfig.h to Include/cpython/coreconfig.h
* coreconfig.h header is now excluded from Py_LIMITED_API
* Move functions to pycore_coreconfig.h
2019-03-01 03:44:13 +01:00
Paul Monson 8a1657b934 bpo-35976: Enable Windows projects to build with platform ARM32 (GH-11825)
This change adds the necessary items to the build projects to avoid erroring out right at the start. It does not add _support_ for targeting Windows on ARM32, but is a necessary prerequisite for adding it.
2019-02-14 08:31:30 -08:00
Steve Dower 4c70d9f79c
bpo-34691: Compile _contextvars module into main Python library (GH-11741) 2019-02-02 14:36:23 -08:00
antektek 6aedfa6b9a bpo-34855: Fix EXTERNALS_DIR build variable for Windows (GH-11177) 2019-01-10 11:19:29 +11:00
Gregory Szorc fbf50683b3 bpo-35642: Remove asynciomodule.c from pythoncore.vcxproj (GH-11410)
This module is built by _asyncio.vcxproj and does not need to be included in pythoncore.
2019-01-07 17:27:18 -08:00
Serhiy Storchaka 8ac658114d
bpo-30455: Generate all token related code and docs from Grammar/Tokens. (GH-10370)
"Include/token.h", "Lib/token.py" (containing now some data moved from
"Lib/tokenize.py") and new files "Parser/token.c" (containing the code
moved from "Parser/tokenizer.c") and "Doc/library/token-list.inc" (included
in "Doc/library/token.rst") are now generated from "Grammar/Tokens" by
"Tools/scripts/generate_token.py". The script overwrites files only if
needed and can be used on the read-only sources tree.

"Lib/symbol.py" is now generated by "Tools/scripts/generate_symbol_py.py"
instead of been executable itself.

Added new make targets "regen-token" and "regen-symbol" which are now
dependencies of "regen-all".

The documentation contains now strings for operators and punctuation tokens.
2018-12-22 11:18:40 +02:00
Steve Dower d3bbc52413
Enable signing Windows builds with SHA1 environment variable (GH-11279) 2018-12-21 13:48:18 -08:00
Steve Dower f8e9bd568a
bpo-35402: Update Windows build to use Tcl and Tk 8.6.9 (GH-11146) 2018-12-14 09:13:15 -08:00
Victor Stinner d7538dd5e3
bpo-35471: Remove the macpath module (GH-11129)
Python 2.4 dropped MacOS 9 support. The macpath module was deprecated
in Python 3.7. This change removes it.
2018-12-14 13:37:26 +01:00
Steve Dower 4824385fec
bpo-35401: Update Windows build to OpenSSL 1.1.0j (GH-11088) 2018-12-10 19:52:36 -08:00
Steve Dower 0cd6391fd8
bpo-34977: Add Windows App Store package (GH-11027)
Also adds the PC/layout script for generating layouts on Windows.
2018-12-10 18:52:57 -08:00
Steve Dower 1c3de541e6
bpo-34977: Use venv redirector instead of original python.exe on Windows (GH-11029) 2018-12-10 08:11:21 -08:00
Jeremy Kloth f46eccd0ff bpo-35433: Properly detect installed SDK versions (GH-11009) 2018-12-09 19:59:32 -08:00
Victor Stinner cb0b78a070
Revert "bpo-34977: Add Windows App Store package (GH-10245)" (GH-11019)
This reverts commit 468a15aaf9.
2018-12-07 12:57:43 +01:00
Steve Dower 468a15aaf9
bpo-34977: Add Windows App Store package (GH-10245) 2018-12-06 21:09:20 -08:00
Victor Stinner 54ba556c6c
bpo-35134: Create Include/cpython/tupleobject.h (GH-10764)
Move tupleobject.h code surrounded by "#ifndef Py_LIMITED_API"
to a new Include/cpython/tupleobject.h header file.

Add cpython/ header files to Makefile.pre.in and pythoncore project
of PCbuild.
2018-11-28 13:01:32 +01:00
Victor Stinner ec13b9322d
bpo-35081: Add Include/internal/pycore_tupleobject.h (GH-10705)
Move _PyTuple_ITEMS() to a new header file:
Include/internal/pycore_tupleobject.h
2018-11-25 23:56:17 +01:00
Victor Stinner e421106b9e
bpo-35134: Create Include/cpython/ subdirectory (GH-10624)
Include/*.h should be the "portable Python API", whereas
Include/cpython/*.h should be the "CPython API": CPython
implementation details.

Changes:

* Create Include/cpython/ subdirectory
* "make install" now creates $prefix/include/cpython and copy
  Include/cpython/* to $prefix/include/cpython
* Create Include/cpython/objimpl.h: move objimpl.h code
  surrounded by "#ifndef Py_LIMITED_API" to cpython/objimpl.h.
* objimpl.h now includes cpython/objimpl.h
* Windows installer (MSI) now also install Include/ subdirectories:
  Include/cpython/ and Include/internal/.
2018-11-23 17:00:00 +01:00
Victor Stinner 984061eeb4
bpo-35081: Add new internal headers to Makefile (GH-10670)
Add pycore_fileutils.h and pycore_object.h to Makefile.pre.in and to
the pythoncore project of PCbuild/.
2018-11-23 12:30:40 +01:00
Victor Stinner 621cebe81b
bpo-35081: Rename internal headers (GH-10275)
Rename Include/internal/ headers:

* pycore_hash.h -> pycore_pyhash.h
* pycore_lifecycle.h -> pycore_pylifecycle.h
* pycore_mem.h -> pycore_pymem.h
* pycore_state.h -> pycore_pystate.h

Add missing headers to Makefile.pre.in and PCbuild:

* pycore_condvar.h.
* pycore_hamt.h
* pycore_pyhash.h
2018-11-12 16:53:38 +01:00
Victor Stinner a1c249c405
bpo-35081: And pycore_lifecycle.h and pycore_pathconfig.h (GH-10273)
* And pycore_lifecycle.h and pycore_pathconfig.h headers to
  Include/internal/
* Move Py_BUILD_CORE specific code from coreconfig.h and
  pylifecycle.h to pycore_pathconfig.h and pycore_lifecycle.h
* Move _Py_wstrlist_XXX() definitions and _PyPathConfig code
  from pycore_state.h to pycore_pathconfig.h
* Move "Init" and "Fini" function definitions from pylifecycle.c to
  pycore_lifecycle.h.
2018-11-01 03:15:58 +01:00
Victor Stinner e281f7d80c
bpo-35081: Move accu.h to Include/internal/pycore_accu.h (GH-10271)
The accu.h header is no longer part of the Python C API: it has been
moved to the "internal" headers which are restricted to Python
itself.

Replace #include "accu.h" with #include "pycore_accu.h".
2018-11-01 02:30:36 +01:00
Victor Stinner 27e2d1f219
bpo-35081: Add pycore_ prefix to internal header files (GH-10263)
* Rename Include/internal/ header files:

  * pyatomic.h -> pycore_atomic.h
  * ceval.h -> pycore_ceval.h
  * condvar.h -> pycore_condvar.h
  * context.h -> pycore_context.h
  * pygetopt.h -> pycore_getopt.h
  * gil.h -> pycore_gil.h
  * hamt.h -> pycore_hamt.h
  * hash.h -> pycore_hash.h
  * mem.h -> pycore_mem.h
  * pystate.h -> pycore_state.h
  * warnings.h -> pycore_warnings.h

* PCbuild project, Makefile.pre.in, Modules/Setup: add the
  Include/internal/ directory to the search paths of header files.
* Update includes. For example, replace #include "internal/mem.h"
  with #include "pycore_mem.h".
2018-11-01 00:52:28 +01:00
Victor Stinner 31368a4f0e
bpo-35081: Move Include/pyatomic.c to Include/internal/ (GH-10239)
Add pyatomic.h to the VS project (it wasn't referenced).
2018-10-30 15:14:25 +01:00
Steve Dower 53125a53f4
bpo-35067: Remove _distutils_findvs and use vswhere.exe instead. (GH-10095) 2018-10-27 16:48:33 -04:00
Victor Stinner a05bef4f5b
bpo-35059, PCbuild: Expand inline funcs in Debug (GH-10094)
Visual Studio solution: Set InlineFunctionExpansion to
OnlyExplicitInline ("/Ob1" option) on all projects (in
pyproject.props) in Debug mode on Win32 and x64 platforms to expand
functions marked as inline.

This change should make Python compiled in Debug mode a little bit
faster on Windows. On Unix, GCC uses -Og optimization level for
./configure --with-pydebug.
2018-10-26 15:10:29 +02:00
Victor Stinner 6279c1c500
bpo-35053: Add Include/tracemalloc.h (GH-10091)
* Modify object.h to ensure that pymem.h is included,
  to get _Py_tracemalloc_config variable.
* Move _PyTraceMalloc_XXX() functions to tracemalloc.h,
  they need PyObject type. Break circular dependency between pymem.h
  and object.h.
2018-10-25 15:54:13 +02:00
Jeremy Kloth fa5329424f bpo-34980: P/Invoke QueryFullProcessImageName to get process names (GH-9901) 2018-10-23 07:41:48 -04:00
Serhiy Storchaka 79d1c2e6c9
bpo-25711: Rewrite zipimport in pure Python. (GH-6809) 2018-09-18 22:22:29 +03:00
Steve Dower 6750922f8d
bpo-34267: Update find_python.bat to use 3.7 if available (GH-8552) 2018-09-17 14:41:53 -07:00
Steve Dower 864a892af3
bpo-34405: Updated to OpenSSL 1.1.0i for Windows builds. (GH-8775) 2018-08-15 13:29:24 -07:00
Victor Stinner 6c785c0ebd
bpo-34170: Add Python/coreconfig.c for _PyCoreConfig (GH-8607)
* Add Include/coreconfig.h
* Move config_*() and _PyCoreConfig_*() functions from Modules/main.c
  to a new Python/coreconfig.c file.
* Inline _Py_ReadHashSeed() into config_init_hash_seed()
* Move global configuration variables to coreconfig.c
2018-08-01 17:56:14 +02:00
Steve Dower f9b364fe51
bro-33614: Override exit code in find_msbuild.bat (GH-7169) 2018-05-28 14:05:05 -07:00
Steve Dower e97ba4c690
bpo-33614: Ensures module definition files for the stable ABI on Windows are correctly regenerated. (GH-7165) 2018-05-28 12:32:05 -07:00
Carl Meyer c0ee341b29 Fix Windows build of Python for latest WinSDK. (GH-6874) 2018-05-17 14:03:59 -04:00
Steve Dower e5f41d2f1e
bpo-33522: Enable CI builds on Visual Studio Team Services (#6865) 2018-05-16 17:50:29 -04:00
Steve Dower b1dc07509f
bpo-33184: Update Windows installer to OpenSSL 1.1.0h (GH-6463) 2018-04-13 17:30:34 -07:00
Steve Dower 881323db71
Minor improvements to the Windows build/release process (GH-5935) 2018-02-27 22:09:27 -08:00
Steve Dower efa6c76226
bpo-32901: Update Tcl and Tk versions to 8.6.8 (GH-5823) 2018-02-23 08:22:10 -08:00
Ivan Levkivskyi 03e3c340a0
bpo-31333: Re-implement ABCMeta in C (#5273)
This adds C versions of methods used by ABCMeta that
improve performance of various ABC operations.
2018-02-18 12:41:58 +00:00
Steve Dower 667b91a5e2
Add missing backslashes to get_externals.bat (GH-5731) 2018-02-17 19:58:57 -08:00
Steve Dower 01423cb53b
Improves the ability to build in CI (GH-5728) 2018-02-17 18:59:03 -08:00
Zachary Ware 310b05289b
bpo-32604: Make _xxsubinterpreters build on Windows (GH-5516)
This is not the ideal solution; this means that a test module is now
always included in the main python3x.dll.  However, we're already
including xxsubtype, so why not?
2018-02-11 10:43:48 -06:00
Ned Deily 5489bdad51 Start of 3.8.0a0 2018-01-31 17:44:09 -05:00
Guido van Rossum 95e4d58913 String annotations [PEP 563] (#4390)
* Document `from __future__ import annotations`
* Provide plumbing and tests for `from __future__ import annotations`
* Implement unparsing the AST back to string form

This is required for PEP 563 and as such only implements a part of the
unparsing process that covers expressions.
2018-01-26 08:20:18 -08:00
Yury Selivanov f23746a934
bpo-32436: Implement PEP 567 (#5027) 2018-01-22 19:11:18 -05:00
Steve Dower 2507e29a9e
bpo-32588: Move _findvs into its own module and add missing _queue module to installer (#5227) 2018-01-19 09:09:36 +11:00
Antoine Pitrou 94e1696d04
bpo-14976: Reentrant simple queue (#3346)
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C implementation of put().
2018-01-16 00:27:16 +01:00
Steve Dower d135f20ae8
bpo-32507: Change Windows install to include app-local UCRT (#5119) 2018-01-09 19:14:46 +11:00
Zachary Ware 6c6d3a4608
Add missing backslashes in PCbuild bat files (GH-5056) 2017-12-30 17:17:36 -06:00
Benjamin Peterson e425bd7517
move pygetopt.h to internal (closes bpo-32264) (#4830) 2017-12-14 23:48:12 -08:00
INADA Naoki 7ea143ae79
bpo-29469: Move constant folding to AST optimizer (GH-2858) 2017-12-14 16:47:20 +09:00
Victor Stinner 31a8393cf6
Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)" (#4694)
* Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)"

This reverts commit 13badcbc60.

Re-apply commits:

* "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"
  commit af5a895073.
* "bpo-32030: Fix config_get_program_name() on macOS (#4669)"
  commit e23c06e2b0.
* "bpo-32030: Add Python/pathconfig.c (#4668)"
  commit 0ea395ae96.
* "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"
  commit ebac19dad6.
* "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"
  commit 9ac3d88827.

* Fix compilation error on macOS
2017-12-04 13:39:15 +01:00
Serhiy Storchaka 13badcbc60
bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)
* Revert "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"

This reverts commit af5a895073.

* Revert "bpo-32030: Fix config_get_program_name() on macOS (#4669)"

This reverts commit e23c06e2b0.

* Revert "bpo-32030: Add Python/pathconfig.c (#4668)"

This reverts commit 0ea395ae96.

* Revert "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"

This reverts commit ebac19dad6.

* Revert "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"

This reverts commit 9ac3d88827.
2017-12-02 21:36:00 +02:00
Victor Stinner 0ea395ae96
bpo-32030: Add Python/pathconfig.c (#4668)
* Factorize code from PC/getpathp.c and Modules/getpath.c to remove
  duplicated code
* rename pathconfig_clear() to _PyPathConfig_Clear()
* Inline _PyPathConfig_Fini() in pymain_impl() and then remove it,
  since it's a oneliner
2017-12-01 20:50:58 +01:00
Victor Stinner 9e87e7776f
bpo-32096: Remove obj and mem from _PyRuntime (#4532)
bpo-32096, bpo-30860:  Partially revert the commit
2ebc5ce42a8a9e047e790aefbf9a94811569b2b6:

* Move structures back from Include/internal/mem.h to
  Objects/obmalloc.c
* Remove _PyObject_Initialize() and _PyMem_Initialize()
* Remove Include/internal/pymalloc.h
* Add test_capi.test_pre_initialization_api():
   Make sure that it's possible to call Py_DecodeLocale(), and then call
   Py_SetProgramName() with the decoded string, before Py_Initialize().

PyMem_RawMalloc() and Py_DecodeLocale() can be called again before
_PyRuntimeState_Init().

Co-Authored-By: Eric Snow <ericsnowcurrently@gmail.com>
2017-11-24 12:09:24 +01:00
native-api fd0fa67464 bpo-31691: Specify where to find build instructions for the Windows installer (#4426) 2017-11-16 15:56:27 -08:00
Victor Stinner f7e5b56c37
bpo-32030: Split Py_Main() into subfunctions (#4399)
* Don't use "Python runtime" anymore to parse command line options or
  to get environment variables: pymain_init() is now a strict
  separation.
* Use an error message rather than "crashing" directly with
  Py_FatalError(). Limit the number of calls to Py_FatalError(). It
  prepares the code to handle errors more nicely later.
* Warnings options (-W, PYTHONWARNINGS) and "XOptions" (-X) are now
  only added to the sys module once Python core is properly
  initialized.
* _PyMain is now the well identified owner of some important strings
  like: warnings options, XOptions, and the "program name". The
  program name string is now properly freed at exit.
  pymain_free() is now responsible to free the "command" string.
* Rename most methods in Modules/main.c to use a "pymain_" prefix to
  avoid conflits and ease debug.
* Replace _Py_CommandLineDetails_INIT with memset(0)
* Reorder a lot of code to fix the initialization ordering. For
  example, initializing standard streams now comes before parsing
  PYTHONWARNINGS.
* Py_Main() now handles errors when adding warnings options and
  XOptions.
* Add _PyMem_GetDefaultRawAllocator() private function.
* Cleanup _PyMem_Initialize(): remove useless global constants: move
  them into _PyMem_Initialize().
* Call _PyRuntime_Initialize() as soon as possible:
  _PyRuntime_Initialize() now returns an error message on failure.
* Add _PyInitError structure and following macros:

  * _Py_INIT_OK()
  * _Py_INIT_ERR(msg)
  * _Py_INIT_USER_ERR(msg): "user" error, don't abort() in that case
  * _Py_INIT_FAILED(err)
2017-11-15 15:48:08 -08:00
Mariatta 31af650ee2
bpo-28791: Update Windows builds to use SQLite 3.21.0. (GH-4246) 2017-11-06 19:31:53 -08:00
Steve Dower 30f4fa456e
bpo-31957: Fixes version detection. (#4298) 2017-11-06 12:52:09 -08:00
Steve Dower aed0856222
bpo-31609: Fixes quotes in PCbuild/clean.bat (#4280) 2017-11-04 16:29:03 -07:00
Steve Dower 0d2a9088d1
bpo-31944: Fixes build and Modify button (#4278) 2017-11-04 16:28:47 -07:00
Steve Dower 2084b30e54 bpo-31523: Reliability improvements to the Windows build files (#3900) 2017-10-05 13:35:36 -07:00
Stefan Grönke f1502d097c bpo-31569: correct PCBuild/ case to PCbuild/ in build scripts and docs (GH-3711) 2017-09-25 17:58:10 +01:00
Steve Dower b84bcc48ae bpo-31392: Update SSL build for 1.1.0 (#3448) 2017-09-09 06:13:06 -07:00
Eric Snow 2ebc5ce42a bpo-30860: Consolidate stateful runtime globals. (#3397)
* group the (stateful) runtime globals into various topical structs
* consolidate the topical structs under a single top-level _PyRuntimeState struct
* add a check-c-globals.py script that helps identify runtime globals

Other globals are excluded (see globals.txt and check-c-globals.py).
2017-09-07 23:51:28 -06:00
Steve Dower bab21faded Updates PCBuild/readme.txt (#3418) 2017-09-07 20:10:29 -07:00
Steve Dower 05f01d8525 bpo-30389 Adds detection of VS 2017 to distutils._msvccompiler (#1632) 2017-09-07 11:49:23 -07:00
Zachary Ware d01db1c2a2 bpo-31358: Pull zlib out of the repository (GH-3375)
Also enable building externals by default on Windows, use PCbuild\build.bat's -E option to disable it.
2017-09-06 17:29:37 -07:00
Steve Dower 5d578442ed Fixes Tix build by correcting the directories used by Tcl and Tk. (#3391) 2017-09-06 13:55:42 -07:00
Steve Dower 5fcd5e64ee bpo-31340: Change to building with MSVC v141 (included with Visual Studio 2017) (#3311) 2017-09-06 10:01:38 -07:00
Eric Snow 05351c1bd8 Revert "bpo-30860: Consolidate stateful runtime globals." (#3379)
Windows buildbots started failing due to include-related errors.
2017-09-05 21:43:08 -07:00
Eric Snow 76d5abc868 bpo-30860: Consolidate stateful runtime globals. (#2594)
* group the (stateful) runtime globals into various topical structs
* consolidate the topical structs under a single top-level _PyRuntimeState struct
* add a check-c-globals.py script that helps identify runtime globals

Other globals are excluded (see globals.txt and check-c-globals.py).
2017-09-05 18:26:16 -07:00
Victor Stinner 93d0cb58b4 bpo-30947: Update libexpat from 2.2.1 to 2.2.3 (#3106)
* bpo-30947: Update libexpat from 2.2.1 to 2.2.3

* Add NEWS entry

* Add new loadlibrary.c

* expat_external.h: restore include "pyexpatns.h"

* PCbuild: add expat/loadlibrary.c

* Define XML_POOR_ENTROPY to compile expat
2017-08-18 23:43:54 +02:00
Serhiy Storchaka d5ed47dea2 bpo-30814, bpo-30876: Add new import test files to projects. (#2851) 2017-07-27 12:24:36 +03:00
Segev Finer 679b566622 bpo-9566: Fix some Windows x64 compiler warnings (#2492)
* bpo-9566: Silence liblzma warnings

* bpo-9566: Silence tcl warnings

* bpo-9566: Silence tk warnings

* bpo-9566: Silence tix warnings

* bpo-9566: Fix some library warnings

* bpo-9566: Fix msvcrtmodule.c warnings

* bpo-9566: Silence _bz2 warnings

* bpo-9566: Fixed some _ssl warnings

* bpo-9566: Fix _msi warnings

* bpo-9566: Silence _ctypes warnings

* Revert "bpo-9566: Fixed some _ssl warnings"

This reverts commit a639001c94.

* bpo-9566: Also consider NULL as a possible error in HANDLE_return_converter

* bpo-9566: whitespace fixes
2017-07-26 15:17:57 -07:00
Steve Dower 5feda33a35 bpo-30450: Fix logic for retrying nuget.exe download (#2744)
Fix logic for retrying nuget.exe download with Python.
Add support for HOST_PYTHON variable.
Clear internal environment variables used in find_python.bat
Use HOST_PYTHON as the actual Python if it is recent enough.
Adds HOST_PYTHON variable to AppVeyor configuration
2017-07-18 19:31:51 +02:00
Steve Dower efa26bcd50 bpo-30450: Fall back to git.exe if no Python is found. (#2739)
* bpo-30450: Fall back to git.exe if no Python is found.

* Also check whether git.exe is on PATH if it will be used.
2017-07-17 15:43:55 +02:00
Steve Dower 588836d3e6 bpo-30450: Adds alternate download approach for nuget.exe (#2737)
* bpo-30450: Adds alternate download approach for nuget.exe

* Whitespace fix.
2017-07-17 14:55:28 +02:00
Steve Dower 68d663cf85 [bpo-30916] Pre-build OpenSSL and Tcl/Tk for Windows (#2688)
Updates ssl and tkinter projects to use pre-built externals
2017-07-17 11:15:48 +02:00
Segev Finer 7526cadd64 bpo-30726: Also fix pyexpat.vcxproj (#2375) 2017-06-28 15:18:28 -07:00
Segev Finer 87c6555073 bpo-30726: Fix elementtree warnings on Windows due to expat upgrade (#2319)
* bpo-30726: Fix elementtree warnings on Windows

Caused by usage of `getenv` which should be safe. And a few integer
truncations which should also be ok.

* bpo-30726: Don't ignore libexpat warnings which haypo intends to fix upstream
2017-06-23 12:45:01 +02:00
Victor Stinner c8fb58bd79 bpo-30726: PCbuild _elementtree: remove duplicate defines (#2348)
bpo-30726, bpo-29591: libexpat 2.2.1 of Modules/expat/ now uses
a winconfig.h configuration file which already defines:

* XML_NS
* XML_DTD
* BYTEORDER=1234
* XML_CONTEXT_BYTES=1024
* HAVE_MEMMOVE

Remove these defines from PCbuild/_elementtree.vcxproj to prevent
compiler warnings.

Co-Authored-By: Jeremy Kloth <jeremy.kloth@gmail.com>
2017-06-23 10:09:34 +02:00
Steve Dower 40a23e8899 bpo-30687: Fixes build scripts to find msbuild.exe and stop relying on vcvarsall.bat (#2252)
* Fixes build scripts to find msbuild.exe and stop relying on vcvarsall.bat
Also fixes bdist_wininst.vcxproj to use correct version in generated name.
2017-06-19 10:34:25 -07:00
Segev Finer c9318853bb bpo-30631: Silence MSVC warnings in third-party code (GH-1963) 2017-06-15 22:12:05 -05:00
Zachary Ware 51599e2bdd bpo-30450: Pull Windows dependencies from GitHub rather than svn (GH-1783)
The Windows build now depends on Python 3.6 to fetch externals, but it will be downloaded via NuGet (which is downloaded via PowerShell) if it is not available via `py -3.6`.  This means the only thing that must be installed on a modern Windows box to do a full build of CPython with all extensions is Visual Studio.

Also fixes an outdated note about _lzma in PCbuild/readme.txt
2017-06-15 22:08:51 -05:00
Zachary Ware 6b6e687766 bpo-27425: Be more explicit in .gitattributes (GH-840)
Updates checked-in line endings on several files.
2017-06-10 14:58:42 -05:00
Steve Dower 9b33bf50da Improves test_underpth_nosite_file to reveal why it fails. (#1763)
* Improves test_underpth_nosite_file to reveal why it fails.

* Enable building with Windows 10 SDK.

* Fix WinSDK detection

* Fix initialization on Windows when a ._pth file exists.

* Fix tabs

* Adds comment about Py_GetPath call.
2017-05-23 16:25:25 -07:00
Eric Snow 6b4be195cd bpo-22257: Small changes for PEP 432. (#1728)
PEP 432 specifies a number of large changes to interpreter startup code, including exposing a cleaner C-API. The major changes depend on a number of smaller changes. This patch includes all those smaller changes.
2017-05-22 21:36:03 -07:00
Steve Dower 4486a09346 Fixes encodings in vcxproj files and adds script to automatically do it. (#1631) 2017-05-17 13:06:39 -07:00
Steve Dower 78e25ab5b3 Adds lib.pyproj file to solution (#1633)
* Adds lib.pyproj file to solution so that VS with Python support can open all the files in the standard library.

* Remove unexpected solution configuration.

* Remove lib.pyproj from solution to avoid memory issues on VS 2015.
2017-05-17 13:06:11 -07:00
Charles 8619c5417c PCbuild/build.bat: Add note about using msbuild response file. (#1551)
Using a response file will eliminate the headache associated with batch argument/quote processing.

For example I unsucessfully compiled python with visualcpptools when specifying VSInstallDir in the batch file (cannot find vcruntime.h)

```batch
build.bat -p x64 -e -M --no-tkinter  "/p:VCInstallDir=%VCInstallDir%"
```

but it build successfully when specifying it in a response file

msbuild.rsp:
```
/p:VCInstallDir=%VCInstallDir%
```
2017-05-12 16:23:15 -07:00
Charles 291557e290 PCbuild/build.bat: pass command line parameters when building PGO (#1510)
Custom msbuild properties passed as command line need to be passed too when calling `Build` when doing PGO build.
2017-05-09 23:58:48 +02:00
Segev Finer f60c9e54f5 bpo-29191: Add liblzma.vcxproj to pcbuild.sln and other missing entries (#1222)
liblzma is missing from pcbuild.sln. This causes the build of _lzma to fail when building the solution and not using build.bat.
2017-04-20 16:33:28 -07:00
Victor Stinner d6debb24e0 bpo-29919: Remove unused imports found by pyflakes (#137)
Make also minor PEP8 coding style fixes on modified imports.
2017-03-27 16:05:26 +02:00
Ned Deily 554626ada7 bpo-27593: Revise git SCM build info. (#744)
Use --short form of git hash.  Use output from "git describe" for tag.

Expected outputs:
1. previous hg
2. previous git
3. updated git

Release (tagged) build:
1. Python 3.7.0a0 (v3.7.0a0:4def2a2901a5, ...
2. Python 3.7.0a0 (v3.7.0a0^0:05f53735c8912f8df1077e897f052571e13c3496, ...
3. Python 3.7.0a0 (v3.7.0a0:05f53735c8, ...

Development build:
1. Python 3.7.0a0 (default:41df79263a11, ...
2. Python 3.7.0a0 (master:05f53735c8912f8df1077e897f052571e13c3496, ...
3. Python 3.7.0a0 (heads/master-dirty:05f53735c8, ...

"dirty" means the working tree has uncommitted changes.
See "git help describe" for more info.
2017-03-20 23:41:52 -04:00
Xiang Zhang 0710d75425 bpo-29770: remove outdated PYO related info (GH-590) 2017-03-11 13:02:52 +08:00
INADA Naoki 8886d5f392 PCbuild: Add -q option to svn export (GH-535)
Without this option, AppVeyor log is too unreadable.
2017-03-07 15:34:38 +09:00
Steve Dower 7030ca65de Fixes git command (#451) 2017-03-03 21:55:06 -08:00
Steve Dower a0c07d2edd bpo-27593: Updates Windows build to use information from git (#262)
* bpo-27593: Updates Windows build to use information from git
2017-03-03 21:20:37 -08:00
Zachary Ware fc64c351c7 bpo-29572: Update Windows build to OpenSSL 1.0.2k (GH-439) 2017-03-03 16:07:07 -06:00
Victor Stinner c22bfaae83 bpo-29524: Add Objects/call.c file (#12)
* Move all functions to call objects in a new Objects/call.c file.
* Rename fast_function() to _PyFunction_FastCallKeywords().
* Copy null_error() from Objects/abstract.c
* Inline type_error() in call.c to not have to copy it, it was only
  called once.
* Export _PyEval_EvalCodeWithName() since it is now called
  from call.c.
2017-02-12 19:27:05 +01:00
Victor Stinner d2306cec4d Backed out changeset f23fa1f7b68f
Sorry, I didn't want to push this change before the review :-( I was pushing a
change into the 2.7 branch.
2017-02-10 14:19:36 +01:00
Victor Stinner 766af559ad Issue #29465: Add Objects/call.c file
* Move all functions to call objects in a new Objects/call.c file.
* Rename fast_function() to _PyFunction_FastCallKeywords().
* Copy null_error() from Objects/abstract.c
* Inline type_error() in call.c to not have to copy it, it was only
  called once.
* Export _PyEval_EvalCodeWithName() since it is now called
  from call.c.
2017-02-10 13:32:29 +01:00
Steve Dower a558be76c2 Issue #29080: Removes hard dependency on hg.exe from PC/build.bat 2016-12-28 14:38:54 -08:00
Steve Dower 654da960a0 Issue #29080: Removes hard dependency on hg.exe from PC/build.bat 2016-12-28 14:38:08 -08:00
Steve Dower 7ec8a18514 Issue #29080: Removes hard dependency on hg.exe from PC/build.bat 2016-12-28 14:37:44 -08:00
Steve Dower 21e033466b Issue #28896: Disable WindowsRegistryFinder by default. 2016-12-12 11:19:03 -08:00
Steve Dower 10beb3cfef Issue #28896: Disable WindowsRegistryFinder by default. 2016-12-12 11:17:59 -08:00
Steve Dower 9cc113a8f7 Issue #28846: Various installer fixes 2016-12-03 12:11:25 -08:00
Steve Dower f00ef72ee1 Ensures intermediate directory is created before using it 2016-12-03 11:56:44 -08:00
Steve Dower de6efdb772 Ensures intermediate directory is created before accessing it. 2016-12-03 11:56:20 -08:00
Steve Dower 1058109b31 Issue #28846: Various installer fixes 2016-12-03 11:24:02 -08:00
Steve Dower 190dbd9ba2 Issue #28846: Various installer fixes 2016-12-03 11:18:53 -08:00
Steve Dower bbf32e1c98 Issue #28573: Missing sys._mercurial info and other build issues. 2016-11-22 11:49:09 -08:00
Steve Dower 02a4018c6e Issue #28573: Missing sys._mercurial info and other build issues. 2016-11-22 11:48:52 -08:00
Steve Dower e044dfa22b Issue #28573: Avoid setting up env too many times during build 2016-11-14 16:15:39 -08:00
Steve Dower 4468bed2fc Issue #28573: Avoid setting up env too many times during build 2016-11-14 16:13:56 -08:00
Steve Dower 1da055ee0d Makes test_underpth* tests more robust by copying the executable. 2016-10-29 08:50:31 -07:00
Steve Dower 842a146672 Merge from 3.6 2016-10-29 08:50:42 -07:00
Benjamin Peterson a2bc46da14 merge 3.6 2016-10-20 22:39:39 -07:00
Benjamin Peterson 4510e6de9d mark dtrace stubs as static inline; remove stubs
C99 inline semantics don't work everywhere. (https://bugs.python.org/issue28092)
We don't want these to have external visibility anyway.
2016-10-20 22:37:00 -07:00
INADA Naoki a1289c6841 Issue #28448: Fix C implemented asyncio.Future didn't work on Windows (merge 3.6) 2016-10-21 12:32:46 +09:00
INADA Naoki a83636247e Issue #28448: Fix C implemented asyncio.Future didn't work on Windows 2016-10-21 12:30:15 +09:00
INADA Naoki fa8b8847e2 Issue #28428: Rename _futures module to _asyncio. (merge from 3.6)
It will have more speedup functions or classes other than asyncio.Future.
2016-10-15 15:41:05 +09:00
INADA Naoki 9f2ce25481 Issue #28428: Rename _futures module to _asyncio.
It will have more speedup functions or classes other than asyncio.Future.
2016-10-15 15:39:19 +09:00
Zachary Ware 8d794d66bd Issue #28208: Merge with 3.6 2016-10-10 22:37:29 -05:00
Zachary Ware 547d156c2c Issue #28208: Update Windows build to use SQLite 3.14.2.0 2016-10-10 22:36:21 -05:00
Zachary Ware 0732fd62d9 Issue #28248: Merge with 3.6 2016-10-10 22:28:39 -05:00
Zachary Ware c08bb6c63a Issue #28248: Merge with 3.5 2016-10-10 22:22:27 -05:00
Zachary Ware fd28cbef4b Issue #28248: Merge with 3.4 2016-10-10 22:11:12 -05:00
Zachary Ware 068534ab03 Issue #28248: Update Windows build to use OpenSSL 1.0.2j 2016-10-10 21:57:20 -05:00
Steve Dower 15d3d8bd14 Issue #28402: Adds signed catalog files for stdlib on Windows. 2016-10-09 20:19:21 -07:00
Steve Dower 425ec150ea Issue #28402: Adds signed catalog files for stdlib on Windows. 2016-10-09 20:18:52 -07:00
INADA Naoki ca2f0d06f1 Issue #26801: Added C implementation of asyncio.Future.
Original patch by Yury Selivanov.
2016-10-09 14:51:36 +09:00
INADA Naoki 9e4e38ecd2 Issue #26801: Added C implementation of asyncio.Future.
Original patch by Yury Selivanov.
2016-10-09 14:44:47 +09:00
Steve Dower 4a8ff9ef60 Issue #28217: Adds _testconsole module to test console input. 2016-10-03 09:12:42 -07:00
Steve Dower 312cef7452 Issue #28217: Adds _testconsole module to test console input. Fixes some issues found by the tests. 2016-10-03 09:04:58 -07:00
Steve Dower 3e7d93dc70 Issue #28251: Improvements to help manuals on Windows. 2016-09-22 17:11:53 -07:00
Steve Dower 765285337a Issue #28251: Improvements to help manuals on Windows. 2016-09-22 17:09:56 -07:00
Steve Dower fb4a96a58f Issue #28251: Improvements to help manuals on Windows. 2016-09-22 17:07:56 -07:00
Victor Stinner 3e56c23e7d regrtest: add -u for unbuffered stdout/stderr 2016-09-21 17:12:50 +02:00
Steve Dower 17a564ecc9 Add file missed from backport 2016-09-17 17:29:37 -07:00
Steve Dower 5f9c3926cc Issue #27932: Prevent memory leak in win32_ver(). 2016-09-17 17:28:45 -07:00
Steve Dower 74f4af7ac3 Issue #27932: Prevent memory leak in win32_ver(). 2016-09-17 17:27:48 -07:00
Ned Deily 4829bc6619 Bump to 3.7.0a0 2016-09-12 17:29:04 -04:00
Steve Dower e7da2f8380 Make PGO use usual build directory on Windows. 2016-09-11 20:19:35 -07:00
Zachary Ware 16c18a354b Issue #28065: Update xz to 5.2.2 on Windows, and build it from source 2016-09-11 21:18:07 -05:00
Benjamin Peterson 37d398ebd1 compile dtrace stubs 2016-09-09 19:52:23 -07:00
Steve Dower ad46443e9d Issue #24186: Reenable optimised OpenSSL function 2016-09-09 14:57:39 -07:00
Steve Dower 4db86bc1b4 Changes pyvenv.cfg trick into an actual sys.path file. 2016-09-09 09:17:35 -07:00
Zachary Ware 8c9d99ff22 Issue #27407: Make PCbuild/prepare_ssl.py Python 2 compatible 2016-09-05 12:54:08 -05:00
Steve Dower 3929499914 Issue #1602: Windows console doesn't input or print Unicode (PEP 528)
Closes #17602: Adds a readline implementation for the Windows console
2016-08-30 21:22:36 -07:00
Christian Heimes 393b82e4c1 Issue #16113: compile the module on Windows, too. 2016-09-07 12:51:56 +02:00
Christian Heimes 121b9487d1 Issue #26798: Add BLAKE2 (blake2b and blake2s) to hashlib. 2016-09-06 22:03:25 +02:00
Zachary Ware dd2afe9edc Closes #20366: Build full text search support into SQLite on Windows 2016-09-05 18:19:13 -05:00
Steve Dower c7d1cf4de9 Issue #27756: Adds new icons for Python files and processes on Windows. Designs by Cherry Wang. 2016-09-05 14:05:17 -07:00
Zachary Ware ebbc736922 Fix get_externals.bat 2016-09-05 14:40:25 -05:00
Zachary Ware 7c510a6a2d Issue #27883: Update sqlite to 3.14.1 on Windows 2016-09-05 14:32:38 -05:00
Zachary Ware 1c2400cfdc Closes #27407: Merge with 3.5 2016-09-05 13:02:20 -05:00
Zachary Ware 28c3184d8d Issue #27647: Update Windows build to Tcl/Tk 8.6.6 2016-07-28 18:39:11 -05:00
Steve Dower 81fb0e33d6 Merge from 3.5 2016-07-24 18:06:51 -07:00
Steve Dower 6ed63f31e9 Fixes default intermediate directory when building on Windows. 2016-07-24 18:03:22 -07:00
Steve Dower edddc2704c Issue #27469: Adds a shell extension to the launcher so that drag and drop works correctly. 2016-07-23 08:02:02 -07:00
Steve Dower 1db9222b0c Closes #27545: Remove pyshellext.vcxproj from pcbuild.proj 2016-07-17 20:46:01 -07:00
Steve Dower bc3e9cac7c Closes #27545: Remove pyshellext.vcxproj from pcbuild.proj 2016-07-17 20:45:29 -07:00
Steve Dower df450d1a18 Issue #27469: Adds a shell extension to the launcher so that drag and drop works correctly. 2016-07-16 16:17:33 -07:00
Steve Dower fb2125daf3 Merge from 3.5 2016-07-16 16:13:51 -07:00
Steve Dower 6fd76bceda Fixes use of Py_IntDir and Py_OutDir to control build directories. 2016-07-16 16:13:19 -07:00
Steve Dower 3823aabb72 Merge from 3.5 2016-07-15 12:01:07 -07:00
Steve Dower b7567c587d Fix building tcl/tk with only the VC build tools installed. 2016-07-15 11:55:52 -07:00
Steve Dower da27c1da85 Merge from 3.5 2016-07-13 19:58:47 -07:00
Steve Dower 945863a691 Fixes build order and lingering intermediate files. 2016-07-13 19:58:21 -07:00
Zachary Ware 0475ffa64d Issue #26930: Merge with 3.5 2016-06-15 17:16:16 -05:00
Zachary Ware 42d4b9c22c Issue #26930: Update Windows build to OpenSSL 1.0.2h 2016-06-15 17:13:28 -05:00
Zachary Ware f88d83b922 Issue #26930: Update Windows build to OpenSSL 1.0.2h 2016-06-15 17:13:28 -05:00
Brett Cannon 82029ac14c Issue #27186: add Include/osmodule.h to the proper build rules 2016-06-12 13:21:22 -07:00
Serhiy Storchaka b0f80b0312 Issue #26647: Python interpreter now uses 16-bit wordcode instead of bytecode.
Patch by Demur Rumed.
2016-05-24 09:15:14 +03:00
Zachary Ware 15d2d49ce6 Closes #26706: Merge with 3.5 2016-04-14 10:22:58 -05:00
Zachary Ware 7d82d0366b Issue #26706: Update OpenSSL version in PCbuild/readme.txt
Thanks to Shaun Walbridge for noticing.
2016-04-14 10:22:12 -05:00
Steve Dower a4d41b3a3e Closes #26624: Adds validation of ucrtbase[d].dll version with warning for old versions. 2016-04-12 20:11:45 -07:00
Steve Dower a7a222fde7 Closes #26624: Adds validation of ucrtbase[d].dll version with warning for old versions. 2016-04-12 20:11:25 -07:00
Steve Dower 765c635dc8 Adds version info to all signed binaries on Windows 2016-04-06 12:36:23 -07:00
Steve Dower b0660582cc Adds version info to all signed binaries on Windows. 2016-04-06 12:35:24 -07:00
Victor Stinner 8c08e0db8f rt.bat: use -m test instead of Lib\test\regrtest.py 2016-03-24 17:46:24 +01:00
Steve Dower 8d9bcb5d62 Issue #26079: Fixing the build output folder for tix-8.4.3.6. Patch by Bjoern Thiel. 2016-03-12 08:39:07 -08:00
Steve Dower d3722e7b6f Issue #26079: Fixing the build output folder for tix-8.4.3.6. Patch by Bjoern Thiel. 2016-03-12 08:38:55 -08:00
Steve Dower 332018d17c Adds warning to prepare_ssl when nasm is not available.
Force clean externals on buildbots.
2016-03-08 12:51:19 -08:00
Steve Dower 79993a90e2 Adds warning to prepare_ssl when nasm is not available.
Force clean of externals on buildbots.
2016-03-08 12:50:57 -08:00
Steve Dower 43cbd05b6c Issue #26465: Update Windows builds to use OpenSSL 1.0.2g. 2016-03-08 10:29:24 -08:00
Steve Dower 947f411b0d Issue #26465: Update Windows builds to use OpenSSL 1.0.2g. 2016-03-08 10:26:52 -08:00
Zachary Ware 72f2ef4137 Issue #26268: Merge with 3.5 2016-02-22 04:16:33 -06:00
Zachary Ware 6fe57ad229 Issue #26268: Update Windows builds to use OpenSSL 1.0.2f 2016-02-22 04:08:51 -06:00
Zachary Ware 16f164e9b8 Issue #26268: Update the prepare_ssl.py script
It can now handle OpenSSL versions 1.0.2e and greater, which don't
include include files in include/.

Note that sources prepared by this script no longer support the old
project files for 2.7; you now have to have Perl available to use
the old build_ssl.py script with sources from svn.python.org.
2016-02-22 04:02:30 -06:00
Steve Dower a74826b086 Updates build to use SHA256 hash when signing files 2016-02-08 09:27:44 -08:00
Steve Dower 84d9fe3953 Updates build to use SHA256 hash when signing files. 2016-02-08 09:24:46 -08:00
Zachary Ware 03178a5f7e Issue #25934: Merge with 3.5 2016-01-29 19:09:41 -06:00
Zachary Ware 4c5ad9452b Issue #25934: Default to /fp:strict for ICC builds 2016-01-29 19:08:55 -06:00
Zachary Ware e2c9adb03b Closes #25348: Merge with 3.5 2016-01-12 01:31:21 -06:00
Zachary Ware bed30c37d8 Issue #25348: Add --pgo and --pgo-job flags to PCbuild\build.bat 2016-01-12 01:26:50 -06:00
Steve Dower bfb03a470c Merge from 3.5 2015-10-31 13:07:44 -07:00
Steve Dower 940f6a8f11 Improves handling of test markers for building Python without intefering with actual installs. 2015-10-31 12:17:11 -07:00
Steve Dower 80b31402d5 Issue #25361: Disables use of SSE2 instructions in Windows 32-bit build 2015-10-11 15:16:21 -07:00
Steve Dower 5700ae877f Issue #25361: Disables use of SSE2 instructions in Windows 32-bit build 2015-10-11 15:15:52 -07:00
Zachary Ware d038b78599 Closes #25022: Merge with 3.5 2015-09-10 15:03:02 -05:00
Zachary Ware 018e380d55 Issue #25022: Merge with 3.4 2015-09-10 15:02:14 -05:00
Zachary Ware b54a068204 Issue #25022: Remove PC/example_nt/
It was very much outdated, and the topic is better covered elsewhere.
2015-09-10 14:37:42 -05:00
Larry Hastings 334b4a3403 Merge from 3.5. 2015-09-09 07:00:54 -07:00
Larry Hastings ded28e3863 Merge Python 3.5.0rc4 back to hg.python.org. 2015-09-09 06:52:38 -07:00
Steve Dower fcbe1df4af Issue #25027: Reverts partial-static build options and adds vcruntime140.dll to Windows installation. 2015-09-08 21:39:01 -07:00
Zachary Ware 4da050a276 Update PCbuild/readme.txt (merge from 3.5) 2015-09-08 01:12:56 -05:00
Zachary Ware 875ef4c70a Update PCbuild/readme.txt 2015-09-08 01:12:00 -05:00
Zachary Ware fcec42c3a8 Closes #25010: Merge with 3.5 2015-09-07 23:32:10 -05:00
Zachary Ware 70b7539f9c Issue #25010: Merge with 3.4 2015-09-07 23:31:49 -05:00
Zachary Ware 1a690fb65a Issue #25010: Fix path for .pyd example project.
Patch by Shaun Walbridge
2015-09-07 23:30:46 -05:00
Zachary Ware 99cfed77c4 Issue #24986: Merge with 3.5 2015-09-04 01:12:44 -05:00
Zachary Ware a6deff2588 Issue #24986: Save some bandwidth from svn.python.org
Don't download sources that won't be used.
2015-09-04 01:10:23 -05:00
Serhiy Storchaka 8fc0d918eb Merge 3.5 2015-09-04 08:34:57 +03:00
Zachary Ware b27f3c3e20 Issue #24986: Allow building Python without external libraries on Windows
This modifies the behavior of the '-e' flag to PCbuild\build.bat: when '-e'
is not supplied, no attempt will be made to build extension modules that
require external libraries, even if the external libraries are present.

Also adds '--no-<module>' flags to PCbuild\build.bat, where '<module>' is
one of 'ssl', 'tkinter', or 'bsddb', to allow skipping just those modules
(if '-e' is given).
2015-09-03 23:43:54 -05:00
Zachary Ware e74fe18ebb Allow PCbuild\rt.bat to accept unlimited arguments for regrtest.
This makes it possible to pass more than 4 tests by name through
Tools\buildbot\test.bat
2015-09-03 23:43:37 -05:00
Zachary Ware 6732343ade Turn 'rem' comments into a real usage message in PCbuild/build.bat
Also fixes error in 'kill' target (already fixed in 2.7, somehow the fix
didn't make it to this branch).
2015-09-02 13:21:19 -05:00
Zachary Ware 8cbb013553 Merge with 3.5 2015-09-02 15:01:42 -05:00
Zachary Ware 677744b386 Closes #25456: Copy Tcl/Tk DLLs to build directory on Windows
This removes the need to add externals/tcltk[64]/bin to PATH to be able
to import tkinter.  Also documents the necessity for the DLLs to be
on PATH or in python.exe's directory.
2015-10-24 01:34:22 -05:00
Martin Panter 9955a373a8 Various minor typos in documentation and comments 2015-10-07 10:26:23 +00:00
Steve Dower b98046b206 Fixes file that did not graft correctly. 2015-08-19 08:44:05 -07:00
Steve Dower ab2a34abb7 Issue #24847: Removes vcruntime140.dll dependency from Tcl/Tk. 2015-08-19 08:39:12 -07:00
Steve Dower 77861e17f1 Issue #24847: Fixes Tix revision number and reverts fix for the wrong revision.
Triggers clean on buildbots.
2015-08-18 19:30:13 -07:00
Steve Dower e7e69391e3 Issue #24847: Fixes Tix revision number and reverts fix for the wrong revision.
Triggers clean on buildbots.
2015-08-18 19:29:51 -07:00
Steve Dower 572183cce3 Merge with 3.5 2015-08-18 16:01:25 -07:00
Steve Dower 9f0cbbc376 Issue #24847: Removes vcruntime140.dll dependency from Tcl/Tk. 2015-08-18 16:00:56 -07:00
Steve Dower 079e080765 Issue #19450: Update Windows builds to use SQLite 3.8.11.0 2015-07-28 11:11:58 -07:00
Steve Dower 4e167ca7c1 Issue #19450: Update Windows builds to use SQLite 3.8.11.0 2015-07-28 11:09:40 -07:00
Steve Dower 54d361fd86 Issue #19450: Update Windows builds to use SQLite 3.8.11.0 2015-07-28 11:05:18 -07:00
Steve Dower 9c11d91b50 Merge with 3.5 2015-07-27 14:59:00 -07:00
Steve Dower de9fb28bf1 Allow intermediate build directory to be overridden. 2015-07-27 14:56:58 -07:00
Zachary Ware bdaaf49cea Issue #24603: Merge with 3.5 2015-07-21 23:28:28 -05:00
Zachary Ware 80acc3ebbc Issue #24603: Update the Windows build to use OpenSSL 1.0.2d 2015-07-21 23:27:08 -05:00
Zachary Ware 689b55c1cb Issue #24603: Update the Windows build to use OpenSSL 1.0.2d 2015-07-21 23:20:47 -05:00
Steve Dower 8a40b6bbcc Fixes argument handling in build.bat and HHC search 2015-07-20 21:35:38 -07:00
Steve Dower e1f6805776 Fixes argument handling in build.bat and HHC search 2015-07-20 21:34:45 -07:00
Steve Dower 67b9ab53c9 Issue #24585: Enables build-to-build upgrades that preserve settings.
Rather than using Burn "Persisted" variables we now add registry keys for each added feature. These can be detected by the installer regardless of which version installed them, and we use this for Modify and Upgrade. In particular, Upgrades can't access the Persisted variables, but can find well-known registry keys.
There are also some changes to the bootstrap app to properly handle upgrades.
Finally, a few minor improvements to the Windows build to keep things tidier.
2015-07-08 20:19:07 -07:00
Steve Dower 494374922c Issue #24585: Enables build-to-build upgrades that preserve settings.
Rather than using Burn "Persisted" variables we now add registry keys for each added feature. These can be detected by the installer regardless of which version installed them, and we use this for Modify and Upgrade. In particular, Upgrades can't access the Persisted variables, but can find well-known registry keys.
There are also some changes to the bootstrap app to properly handle upgrades.
Finally, a few minor improvements to the Windows build to keep things tidier.
2015-07-08 20:18:44 -07:00
Steve Dower df418b67ab Issue #24432: Update Windows builds to use OpenSSL 1.0.2c. 2015-07-03 15:17:17 -07:00
Steve Dower f92673c254 Issue #24432: Update Windows builds to use OpenSSL 1.0.2c. 2015-07-03 15:16:37 -07:00
Steve Dower a09ef0389b Issue #24432: Update Windows builds to use OpenSSL 1.0.2c. 2015-07-03 15:13:48 -07:00
Steve Dower 0a34c49603 Fixes warnings when building python3.dll due to the .def file accumulating multiple copies of each line.
Adds shebang line to prepare_ssl so it will run with py.exe.
2015-07-03 12:21:29 -07:00
Steve Dower ac2bd5b1e8 Fixes warnings when building python3.dll due to the .def file accumulating multiple copies of each line.
Adds shebang line to prepare_ssl so it will run with py.exe.
2015-07-03 09:08:47 -07:00
Steve Dower 81fdd0b868 Issue 24476: Statically links vcruntime140.dll and removes it from the installer 2015-06-19 13:08:58 -07:00
Steve Dower 6d58f8dc52 Issue 24476: Statically links vcruntime140.dll and removes it from the installer 2015-06-19 10:49:04 -07:00
Zachary Ware 4132b30636 Merge PCbuild/readme.txt update from 3.5 2015-06-17 09:48:19 -05:00
Zachary Ware 6c7f2acd99 Merge 3.4's PCbuild/readme.txt update.
All the new information in 3.4's readme.txt was already here, but the
wrong name was used to refer to the script.  Also reworded the sentence.
2015-06-17 09:45:22 -05:00
Zachary Ware d1f7c594fa Update PCbuild/readme.txt
It now recommends PCbuild/get_externals.bat instead of the scripts in
Tools/buildbot.
2015-06-16 23:27:56 -05:00
Zachary Ware 27da359519 Merge with 3.5 2015-06-10 00:44:40 -05:00
Zachary Ware 785273cd84 Merge forward extras beyond #21907 backport. 2015-06-10 00:43:20 -05:00
Zachary Ware 6250df81bf Clean up/refactor the batch scripts used for building on Windows.
This is mostly a backport of issue #21907, but also includes a few
extras necessary to make the bulidbot scripts as thin as possible.
2015-06-09 23:16:52 -05:00
Steve Dower b980c05ef8 Issue #24376: Bumps xxlimited.vcxproj to use 3.6 limited ABI. 2015-06-03 11:05:57 -07:00
Steve Dower 405c7f0712 Issue #24376: xxlimited.c errors when building 32 and 64 bit on Windows 2015-06-03 11:04:44 -07:00
Steve Dower b6c6a4dc04 Issue #24376: xxlimited.c errors when building 32 and 64 bit on Windows 2015-06-03 11:03:15 -07:00
Eric Snow 97abf97e45 Merge from 3.5. 2015-05-30 14:56:30 -06:00
Eric Snow dce09c34a0 Issue #16991: Add odictobject.h on Windows. 2015-05-30 14:56:04 -06:00
Yury Selivanov 7aa5341164 Reverting my previous commit.
Something went horribly wrong when I was doing `hg rebase`.
2015-05-30 10:57:56 -04:00
Zachary Ware 41a6a625d4 Update Windows build for 3.6 2015-05-28 17:30:03 -05:00
Steve Dower 42a059b632 Issue #24268: Adds PCBuild project to build _testmultiphase module. 2015-05-23 17:51:54 -07:00
Zachary Ware 7dc9dea778 Issue #20035: Reimplement tkinter._fix module as a C function.
The new private C function makes no permanent changes to the environment
and is #ifdef'd out on non-Windows platforms.
2015-05-22 11:36:53 -05:00
Steve Dower f54bcfb835 Updates PCBuild.sln to open with VS 2015 by default. 2015-05-20 09:30:42 -07:00
Steve Dower c8241cfb8c Issue #24186: Disable optimised OpenSSL functions on 64-bit Windows to avoid crashing. 2015-05-13 21:44:02 -07:00
Gregory P. Smith 8cb6569fe1 Implements issue #9951: Adds a hex() method to bytes, bytearray, & memoryview.
Also updates a few internal implementations of the same thing to use the
new built-in code.

Contributed by Arnon Yaari.
2015-04-25 23:22:26 +00:00
Zachary Ware 9d04e6ab01 Update Tcl/Tk to 8.6.4.
The new version of Tcl/Tk plays nice(r) with VS2015 CTP 6+.
2015-04-14 11:53:03 -05:00
Zachary Ware bd4b247f17 Actually build Tix.
It's been absent from all alpha releases, which apparently nobody has noticed.
2015-04-14 10:58:06 -05:00
Zachary Ware 50ebf0316a Merge with 3.4 2015-04-13 12:30:53 -05:00
Zachary Ware 30cc6fae98 Force the Windows readme to CRLF 2015-04-13 12:28:11 -05:00
Zachary Ware 774ac377da Closes #17202: Merge with 3.4 2015-04-13 12:11:40 -05:00
Zachary Ware 4c9c848159 Issue #17202: Add .bat to .hgeol to force them to CRLF.
Using LF can a script to fail if it tries to use a label that is
split across 512 byte blocks.  Who knows why.
2015-04-13 11:59:54 -05:00
Zachary Ware 7dfa094e78 Closes #18402: Merge with 3.4 2015-04-13 10:53:11 -05:00
Zachary Ware a3655eaa39 Issue #18402: Also look for 64 bit Perl in build_ssl.py.
It's still not necessary to build, but may be useful to some.
2015-04-13 10:46:40 -05:00
Zachary Ware 057b530024 Put the NASM pulled from svn.python.org at the front of the PATH.
This will prevent failures from the version of NASM installed on buildbots,
if the ability to override the version used is desired again later, we can
figure out a way to opt in.
2015-04-09 20:16:05 -05:00
Zachary Ware 9f3109c459 Issue #23686: Update Windows build to use OpenSSL 1.0.2a. 2015-04-07 19:59:37 -05:00
Steve Dower c7d979f022 Closes #23686: Update Windows installer OpenSSL to 1.0.2a 2015-04-11 23:36:04 -04:00
Zachary Ware 6bd687e0f2 Merge with 3.4.
The fix has moved in this branch.  Also, the opt-in is already available
on this branch; just set nasmDir when building.
2015-04-09 20:20:55 -05:00
Zachary Ware a59f9639fa Fix prepare_ssl.py script
Builds using prepared sources that had Perl available anyway were broken
by the previous fix to this script (oops).
2015-04-09 15:48:32 -05:00
Zachary Ware f975b3d499 Fix prepare_ssl.py for OpenSSL 1.0.2a builds without Perl (using old system).
This change affects the makefiles checked into svn.python.org, which the 3.5
build no longer uses.  3.4 and 2.7 both still use those makefiles, but their
build_ssl.py scripts don't require an update; if the script is running the
'fix_makefiles' method it already has Perl available anyway.
2015-04-07 20:38:53 -05:00
Steve Dower d81431f587 Issue #23524: Replace _PyVerify_fd function with calling _set_thread_local_invalid_parameter_handler on every thread. 2015-03-06 14:47:02 -08:00
Steve Dower f63dab5a84 Back-out wcstok deprecation suppression and updates calls to use wcstok_s. 2015-02-25 20:48:01 -08:00