Victor Stinner
5422e3cfb7
bpo-36722: Debug build loads libraries built in release mode (GH-12952)
...
In debug build, import now also looks for C extensions compiled in
release mode and for C extensions compiled in the stable ABI.
2019-04-26 01:40:00 +02:00
Stefano Rivera
338d54f0a5
bpo-28401: prevent Py_DEBUG builds from trying to import limited ABI modules (GH-1766)
...
[Issue 28401](https://bugs.python.org/issue28401 ): Don't attempt to import the stable API extensions, they are not supported in PyDEBUG builds (which don't implement that ABI).
https://bugs.python.org/issue28401
2018-11-16 15:52:52 -08: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
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
caba55b3b7
bpo-34301: Add _PyInterpreterState_Get() helper function (GH-8592)
...
sys_setcheckinterval() now uses a local variable to parse arguments,
before writing into interp->check_interval.
2018-08-03 15:33:52 +02: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
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
Victor Stinner
e134a7fe36
Issue #23752 : _Py_fstat() is now responsible to raise the Python exception
...
Add _Py_fstat_noraise() function when a Python exception is not welcome.
2015-03-30 10:09:31 +02:00
Steve Dower
f2f373f593
Issue #23152 : Implement _Py_fstat() to support files larger than 2 GB on Windows.
...
fstat() may fail with EOVERFLOW on files larger than 2 GB because the file size type is an signed 32-bit integer.
2015-02-21 08:44:05 -08:00
Christian Heimes
af01f66817
Issue #16136 : Remove VMS support and VMS-related code
2013-12-21 16:19:10 +01:00
Benjamin Peterson
26421ab302
merge 3.3
2013-07-22 22:08:17 -07:00
Benjamin Peterson
7d28b6b379
return NULL here
2013-07-22 22:08:09 -07:00
Christian Heimes
7bc80fcf4e
Check return value of fstat() in _PyImport_GetDynLoadFunc()
...
CID 486250
2013-07-20 22:18:19 +02:00
Christian Heimes
27c4c3ec79
Check return value of fstat() in _PyImport_GetDynLoadFunc()
...
CID 486250
2013-07-20 22:17:55 +02:00
Jesus Cea
b48925a406
#16135 : Removal of OS/2 support (I)
2012-10-05 01:04:27 +02:00
Victor Stinner
3b635cd447
Close #15766 : Catch exceptions while raising the ImportError in imp.load_dynamic()
2012-10-02 00:55:07 +02:00
Victor Stinner
ad54c6d82e
Issue #15766 : Fix a crash in imp.load_dynamic() on PyUnicode_FromString() failure
2012-08-22 17:45:52 +02:00
Brett Cannon
2657df4744
Issue #13959 : Re-implement imp.get_suffixes() in Lib/imp.py.
...
This introduces a new function, imp.extension_suffixes(), which is
currently undocumented. That is forthcoming once issue #14657 is
resolved and how to expose file suffixes is decided.
2012-05-04 15:20:40 -04:00
Brett Cannon
f0434e647a
Issue #14599 : Generalize a test for ImportError.path and add support
...
in Python/dynload_shlibs.c.
This should fix the remaining importlib test failure on Windows.
Support in AIX and HP-UX will be in a separate checkin.
2012-04-20 15:22:50 -04:00
Brett Cannon
fd0741555b
Issue #2377 : Make importlib the implementation of __import__().
...
importlib._bootstrap is now frozen into Python/importlib.h and stored
as _frozen_importlib in sys.modules. Py_Initialize() loads the frozen
code along with sys and imp and then uses _frozen_importlib._install()
to set builtins.__import__() w/ _frozen_importlib.__import__().
2012-04-14 14:10:13 -04:00
Antoine Pitrou
c229e6e8ff
Issue #14040 : Remove rarely used file name suffixes for C extensions (under POSIX mainly).
...
This will improve import performance a bit (especially under importlib).
2012-02-20 19:41:11 +01:00
Victor Stinner
42040fb665
Issue #3080 : Remove unused argument of _PyImport_GetDynLoadFunc()
...
The first argument, fqname, was not used.
2011-02-22 23:16:19 +00:00
Martin v. Löwis
4d0d471a80
Merge branches/pep-0384.
2010-12-03 20:14:31 +00:00
Matthias Klose
f69af1e959
PEP 3149: Try to load the extension with the SOABI before trying
...
to load the one without the SOABI in the name.
2010-09-08 16:22:10 +00:00
Barry Warsaw
35f3a2cbeb
PEP 3149 is accepted.
...
http://mail.python.org/pipermail/python-dev/2010-September/103408.html
2010-09-03 18:30:30 +00:00
Antoine Pitrou
f95a1b3c53
Recorded merge of revisions 81029 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/trunk
........
r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines
Untabify C files. Will watch buildbots.
........
2010-05-09 15:52:27 +00:00
Martin v. Löwis
1a21451b1d
Implement PEP 3121: new module initialization and finalization API.
2008-06-11 05:26:20 +00:00
Hye-Shik Chang
23f391c6a1
Fix a warning from gcc by adding a missed const qualifier.
2006-01-04 01:30:17 +00:00
Neal Norwitz
67715f0420
- SF Bug #1350188 , "setdlopenflags" leads to crash upon "import"
...
It was possible dlerror() returns a NULL pointer, use a default error
message in this case.
2005-11-09 06:59:35 +00:00
Martin v. Löwis
507a485984
Print verbose messages to stderr. Fixes #1036752 .
2004-10-03 08:51:35 +00:00
Nicholas Bastin
2786d90617
A few more PyThreadState_Get to PyThreadState_GET conversions
2004-03-25 02:16:23 +00:00
Martin v. Löwis
c16f3bd8a3
Patch #708495 : Port more stuff to OpenVMS.
2003-05-03 09:14:54 +00:00
Andrew MacIntyre
d940054ad4
OS/2 EMX port changes (Python part of patch #450267 ):
...
Python/
dynload_shlib.c // EMX port emulates dlopen() etc. for DL extensions
import.c // changes to support 8.3 DLL name limit (VACPP+EMX)
// and case sensitive import semantics
importdl.h
thread_os2.h
2002-02-26 11:41:34 +00:00
Jeremy Hylton
518ab1c02a
Use PyOS_snprintf instead of sprintf.
2001-11-28 20:42:20 +00:00
Martin v. Löwis
8a57f00081
Move dlfcn.h block out of NetBSD block, assuming that NetBSD before
...
199712 didn't have dlfcn.h, or that it wouldn't conflict with the other
stuff defined.
2001-10-18 21:24:04 +00:00
Martin v. Löwis
0eb1ed556b
Patch to bug #472202 : Correctly recognize NetBSD before 199712.
2001-10-18 11:45:19 +00:00
Martin v. Löwis
36546db750
Patch #455231 : Support ELF properly on OpenBSD.
2001-09-05 14:24:43 +00:00
Martin v. Löwis
f0473d511b
Patch #412229 : Add functions sys.getdlopenflags and sys.setdlopenflags.
...
Add dlopenflags to PyInterpreterState, and use it in dlopen calls.
2001-07-18 16:17:16 +00:00
Guido van Rossum
fef124346e
Oops, one more part of the cygwin patch (SF patch #102409 by jlt63:
...
Cygwin Python DLL and Shared Extension Patch). Add module.dll as a
valid extension.
jlt63 writes: Note that his change essentially backs out the fix for
bug #115973 . Should ".pyd" be retained instead for posterity?
2001-01-10 21:17:27 +00:00
Guido van Rossum
c8fcdcba36
Patch 102114, Bug 11725. On OpenBSD (but apparently not on the other
...
BSDs) you need a leading underscore in the dlsym() lookup name.
2000-10-25 22:07:45 +00:00
Tim Peters
98dc065c1b
SF "bug" 115973: patches from Norman Vine so that shared libraries and
...
Tkinter work under Cygwin. Accepted on faith & reasonableness.
2000-10-05 19:24:26 +00:00
Guido van Rossum
8586991099
REMOVED all CWI, CNRI and BeOpen copyright markings.
...
This should match the situation in the 1.6b1 tree.
2000-09-01 23:29:29 +00:00
Guido van Rossum
ffcc3813d8
Change copyright notice - 2nd try.
2000-06-30 23:58:06 +00:00
Guido van Rossum
fd71b9e9d4
Change copyright notice.
2000-06-30 23:50:40 +00:00
Guido van Rossum
96a8fb7e99
Cleanup patches from Greg Stein:
...
* in import.c, #ifdef out references to dynamic loading based on
HAVE_DYNAMIC_LOADING
* clean out the platform-specific crud from importdl.c.
[ maybe fold this function into import.c and drop the importdl.c file? Greg.]
* change GetDynLoadFunc's "funcname" parameter to "shortname". change
"name" to "fqname" for clarification.
* each GetDynLoadFunc now creates its own funcname value.
WARNING: as I mentioned previously, we may run into an issue with a
missing "_" on some platforms. Testing will show this pretty quickly,
however.
* move pathname munging into dynload_shlib.c
1999-12-22 14:09:35 +00:00
Guido van Rossum
22a1d3671b
The old platform-specific contents of importdl.c, broken down into one
...
file per platform (really: per style of Dl API; e.g. all platforms
using dlopen() are grouped together in dynload_shlib.c.).
This is part of a set of patches by Greg Stein.
1999-12-20 21:18:49 +00:00