Commit Graph

531 Commits

Author SHA1 Message Date
Nick Coghlan d5cacbb1d9 PEP 489: Multi-phase extension module initialization
Known limitations of the current implementation:

- documentation changes are incomplete
- there's a reference leak I haven't tracked down yet

The leak is most visible by running:

  ./python -m test -R3:3 test_importlib

However, you can also see it by running:

  ./python -X showrefcount

Importing the array or _testmultiphase modules, and
then deleting them from both sys.modules and the local
namespace shows significant increases in the total
number of active references each cycle. By contrast,
with _testcapi (which continues to use single-phase
initialisation) the global refcounts stabilise after
a couple of cycles.
2015-05-23 22:24:10 +10:00
Berker Peksag 4256e8ab6d Issue #16537: Use the new *default* parameter of max(). 2014-10-01 05:12:18 +03:00
Berker Peksag 1d82a9c383 Issue #16537: Use the new *default* parameter of max(). 2014-10-01 05:11:13 +03:00
Antoine Pitrou afa3153b27 Remove pointless "vile hack" that can cause the build step to fail when some extension modules can't be imported.
See issue #5309 for the build failures, issue #458343 for the original motivation.
2014-09-30 14:58:22 +02:00
Berker Peksag a72bc8c3cf Issue #16537: Check whether self.extensions is empty in setup.py.
Patch by Jonathan Hosmer.
2014-09-27 22:39:38 +03:00
Berker Peksag 21c8d5c7d9 Issue #16537: Check whether self.extensions is empty in setup.py.
Patch by Jonathan Hosmer.
2014-09-27 22:37:15 +03:00
Antoine Pitrou 2c0a916061 Issue #5309: distutils' build and build_ext commands now accept a ``-j``
option to enable parallel building of extension modules.
2014-09-26 23:31:59 +02:00
Benjamin Peterson acb8c52343 add -Werror=declaration-after-statement only to stdlib extension modules (closes #21121)
Patch from Stefan Krah.
2014-08-09 20:01:49 -07:00
Benjamin Peterson b30802b7a8 merge 3.4 (#21121) 2014-08-09 20:04:19 -07:00
Ned Deily ce38f24af8 Issue #21811: Anticipated fixes to 3.x and 2.7 for OS X 10.10 Yosemite. 2014-06-25 13:42:22 -07:00
Ned Deily 04cdfa1147 Issue #21811: Anticipated fixes to 3.x and 2.7 for OS X 10.10 Yosemite. 2014-06-25 13:36:14 -07:00
Brett Cannon 2a17bde930 Issue #20383: Introduce importlib.util.module_from_spec().
Along the way, dismantle importlib._bootstrap._SpecMethods as it was
no longer relevant and constructing the new function required
partially dismantling the class anyway.
2014-05-30 14:55:29 -04:00
Benjamin Peterson 5c2ac8c1c6 setup.py: report modules which built but import failed (closes #21282)
Patch by Lukas Vacek.
2014-04-30 11:06:16 -04:00
doko@ubuntu.com a3818a3043 - Issue #15234: For BerkelyDB and Sqlite, only add the found library and
include directories if they aren't already being searched. This avoids
  an explicit runtime library dependency.
2014-04-17 17:52:48 +02:00
Benjamin Peterson 8a553f5be4 merge 3.3 2014-03-15 12:29:21 -05:00
Benjamin Peterson 51281736d9 remove runtime_library_dirs for _sqlite; it isn't needed 2014-03-15 12:29:04 -05:00
Martin v. Löwis ca7b04644c Issue #17162: Add PyType_GetSlot. 2014-02-04 09:33:05 +01:00
Eric Snow 335e14dd1a Issue #19713: Move away from using find_module/load_module. 2014-01-04 15:09:28 -07:00
Martin v. Löwis 24e43308b7 * Issue #16113: Remove sha3 module again.
Patch by Christian Heimes, with modifications.
2014-01-03 14:05:06 +01:00
Stefan Krah daa96b7669 Merge from 3.3. 2013-11-24 19:56:23 +01:00
Stefan Krah 45059eb1d0 1) Prepare libmpdec for the 2.4.0 release. None of the following changes affects
_decimal:

      o Make all "mpd_t to C integer" conversion functions available in both the
        64-bit and the 32-bit versions.

      o Make all mixed mpd_t/C integer arithmetic functions available in the
        32-bit version.

      o Better handling of __STDC_LIMIT_MACROS for C++ users.

      o Add struct tags (at the request of C++ users).

2) Check for libmpdec.so.2 if --with-system-libmpdec is used.
2013-11-24 19:44:57 +01:00
Larry Hastings 3a9079742f Issue #19722: Added opcode.stack_effect(), which accurately
computes the stack effect of bytecode instructions.
2013-11-23 14:49:22 -08:00
Ned Deily 65657c27fa Issue #1584: Provide options to override default search paths for Tcl and Tk
when building _tkinter.  configure has two new options; if used, both must
be specified:

  ./configure \
      --with-tcltk-includes="-I/opt/local/include" \
      --with-tcltk-libs="-L/opt/local/lib -ltcl8.5 -ltk8.5"

In addition, the options can be overridden with make:

   make \
       TCLTK_INCLUDES="-I/opt/local/include" \
       TCLTK_LIBS="-L/opt/local/lib -ltcl8.6 -ltk8.6"
2013-10-25 00:34:44 -07:00
Ned Deily 5ceae41083 Ensure setup.py looks for zlib.h in an OS X SDK. 2013-10-18 21:34:58 -07:00
Ned Deily 507c591e5b Ensure setup.py looks for zlib.h in an OS X SDK. 2013-10-18 21:32:00 -07:00
Ned Deily d819b931f3 Issue #1584: Provide options to override default search paths for Tcl and Tk
when building _tkinter.  configure has two new options; if used, both must
be specified:

  ./configure \
      --with-tcltk-includes="-I/opt/local/include" \
      --with-tcltk-libs="-L/opt/local/lib -ltcl8.5 -ltk8.5"

In addition, the options can be overridden with make:

   make \
       TCLTK_INCLUDES="-I/opt/local/include" \
       TCLTK_LIBS="-L/opt/local/lib -ltcl8.6 -ltk8.6"
2013-09-06 01:07:05 -07:00
Ned Deily b467d1542a Issue #18517: merge from 3.3 2013-08-01 23:53:24 -07:00
Ned Deily cd3d8fb825 Issue #18517: Move definition of "xxlimited" extension to detect_modules(). 2013-08-01 23:51:27 -07:00
Ronald Oussoren 0fedb37c47 Issue #18393: Remove use of deprecated API on OSX
The "Gestalt" function on OSX is deprecated (starting with OSX 10.8),
remove its usage from the stdlib. The patch removes a number of private
functions and a private module, but does not change the public API.

The removed code was effectively dead, the platform module has used
other code to fetch the OSX version for years and could only use
on the Gestalt-based code as a fallback. That fallback can only trigger
on broken OSX installs (that is, someone has removed parts of the system
install)
2013-07-15 18:32:09 +02:00
Brett Cannon ae95b4f7a5 Issue #17845: Clarify the message setup.py prints upon successfully
building Python but having some optional module which didn't build.

Patch by Yogesh Chaudhari.
2013-07-12 11:30:32 -04:00
Brett Cannon ca5ff3a069 Issue # 17177: Stop using imp in setup.py 2013-06-15 17:52:59 -04:00
Antoine Pitrou 2463e5fee4 Issue #16692: The ssl module now supports TLS 1.1 and TLS 1.2. Initial patch by Michele Orrù. 2013-03-28 22:24:43 +01:00
doko@ubuntu.com 6d3d0fe0b2 - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:39:52 -07:00
doko@ubuntu.com 1621d77fc8 - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:31:41 -07:00
doko@ubuntu.com d5537d071c - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:21:49 -07:00
Stefan Krah e8d4d51f59 Merge 3.3. 2013-03-07 01:23:01 +01:00
Stefan Krah 4f1974496a Issue #17361: Use cc from sysconfig for testing flags. 2013-03-07 01:12:03 +01:00
Petri Lehtinen d784e53d96 Issue #5033: Fix building of the sqlite3 extension module 2013-02-23 17:24:44 +01:00
Petri Lehtinen d2132144a4 Issue #5033: Fix building of the sqlite3 extension module 2013-02-23 17:24:00 +01:00
Petri Lehtinen ed909bcbdd Issue #5033: Fix building of the sqlite3 extension module 2013-02-23 17:16:20 +01:00
Christian Heimes 633a92ff20 add proper dependencies on expat headers and sources 2013-02-09 17:02:24 +01:00
Christian Heimes 7d01a1eb2b add proper dependencies on expat headers and sources 2013-02-09 17:02:16 +01:00
Christian Heimes d489c7a0a3 add proper dependencies on expat headers and sources 2013-02-09 17:02:06 +01:00
Stefan Krah 9f1b6018a9 Merge 3.3. 2013-01-17 12:52:42 +01:00
Stefan Krah 13fe6d1c46 Fix build with 3.x gcc versions. 2013-01-17 12:49:34 +01:00
Stefan Krah cc0589dbb9 Merge 3.3. 2013-01-16 14:49:15 +01:00
Stefan Krah ce55f089fb Increase warning level for _decimal.so and libmpdec build when using gcc. 2013-01-16 14:45:16 +01:00
Andrew Svetlov 6b2cbeba58 Issue #16421: allow to load multiple modules from the same shared object.
Patch by Václav Šmilauer.
2012-12-14 17:04:59 +02:00
Christian Heimes e6f228011e Just to be sure, initialize with a copy of the compiler's lib and inc dirs. 2012-12-12 12:57:03 +01:00
Christian Heimes d783261e99 Just to be sure, initialize with a copy of the compiler's lib and inc dirs. 2012-12-12 12:56:51 +01:00