Brett Cannon
1032af95ff
Issue #14585 : test_import now runs all tests under
...
importlib.test.import_ using builtins.__import__() instead of just the
relative import tests.
2012-04-20 15:52:17 -04:00
Brett Cannon
91900eaf96
Have importlib.test.regrtest clear sys.path_importer_cache to make
...
sure finders from importlib are used instead of _frozen_importlib.
2012-04-20 12:51:44 -04:00
Benjamin Peterson
d76bc7abac
rollback 005fd1fe31ab (see #14609 and #14582 )
...
Being able to overload a sys.module entry during import of a module was broken
by this changeset.
2012-04-18 10:55:43 -04:00
Brett Cannon
7bd329d800
Issue #12599 : Be more strict in accepting None vs. a false-like object
...
in importlib.
Thanks to PJE for pointing out the issue and Nick Coghlan for filing
the bug.
2012-04-17 21:41:35 -04:00
Brett Cannon
273323cf68
Issue #14592 : A relative import will raise a KeyError if __package__
...
or __name__ are not set in globals.
Thanks to Stefan Behnel for the bug report.
2012-04-17 19:05:11 -04:00
Brett Cannon
881535b726
Issue #14582 : Import returns the module returned by a loader instead
...
of sys.modules when possible.
This is being done for two reasons. One is to gain a little bit of
performance by skipping an unnecessary dict lookup in sys.modules. But
the other (and main) reason is to be a little bit more clear in how
things should work from the perspective of import's interactions with
loaders. Otherwise loaders can easily forget to return the module even
though PEP 302 explicitly states they are expected to return the module
they loaded.
2012-04-15 15:24:04 -04:00
Brett Cannon
49f8d8b016
Handle importing pkg.mod by executing
...
__import__('mod', {'__packaging__': 'pkg', level=1) w/o properly (and
thus not segfaulting).
2012-04-14 21:50:00 -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
Brett Cannon
bbb6680ee5
Have importlib take advantage of ImportError's new 'name' and 'path'
...
attributes.
2012-04-12 21:09:01 -04:00
Brett Cannon
d62cd5627f
Issue #14500 : Fix importlib.test.import_.test_packages to clean up
...
after itself properly.
2012-04-06 13:13:08 -04:00
Brett Cannon
927d87470a
If a module injects something into sys.modules as a side-effect of
...
importation, then respect that injection.
Discovered thanks to Lib/xml/parsers/expat.py injecting
xml.parsers.expat.errors and etree now importing that directly as a
module.
2012-04-02 20:33:56 -04:00
Brett Cannon
b46a1793a7
Update importlib.invalidate_caches() to be more general.
2012-02-27 18:15:42 -05:00
Brett Cannon
dfc32706a0
Make the benchmark recording more sensible for importlib.test.benchmark.
2012-02-23 19:34:35 -05:00
Brett Cannon
f500778f65
Improper type for __package__ should raise TypeError, not ValueError.
2012-02-23 18:29:12 -05:00
Antoine Pitrou
c541f8ef40
Issue #14043 : Speed up importlib's _FileFinder by at least 8x, and add a new importlib.invalidate_caches() function.
...
importlib is now often faster than imp.find_module() at finding modules.
2012-02-20 01:48:16 +01:00
Brett Cannon
082f177c67
Fix importlib.test.__main__ to only worry about command-line flags when directly executed.
2012-02-17 10:44:24 -05:00
Brett Cannon
1f14bebe3c
Have importlib.test use argparse instead of some hacked up solution.
2012-02-17 09:37:39 -05:00
Brett Cannon
f58d45c649
Tweak the handling of the empty string in sys.path for importlib.
...
It seems better to cache the finder for the cwd under its full path
insetad of '' in case the cwd changes. Otherwise FileFinder needs to
dynamically change itself based on whether it is given '' instead of
caching a finder for every change to the cwd.
2012-02-16 18:12:00 -05:00
Brett Cannon
3b1a06c1ea
importlib.__import__() now raises ValueError when level < 0.
...
This is to bring it more in line with what PEP 328 set out to do with
removing ambiguous absolute/relative import semantics.
2012-02-16 17:47:48 -05:00
Brett Cannon
b4e63b3177
Use the cwd when the empty string is found in sys.path. This leads to
...
__file__ being an absolute path when the module is found in the
current directory.
2012-02-08 18:52:56 -05:00
Brett Cannon
cae1068e82
Re-order importlib benchmarks to be consistent. Also print out what implementation of __import__ is used.
2012-02-07 09:40:33 -05:00
Brett Cannon
466e6a90f2
Have importlib.test.benchmark test with tabnanny as a medium-sized test.
2012-02-07 09:19:12 -05:00
Brett Cannon
5ea5b67a0b
Fix a minor output typo as found by Terry Reedy.
2012-01-31 17:02:10 -05:00
Brett Cannon
e3a9ae5ece
Let importlib.test.benchmark take a specific benchmark name to run.
2012-01-30 19:27:51 -05:00
Brett Cannon
190f33cd2b
Allow for the specification of a file to dump importlib benchmark
...
results to (and to compare against previous runs).
* * *
Move importlib.test.benchmark to argparse.
2012-01-30 19:12:29 -05:00
Brett Cannon
8a8945085f
Issue #13890 : Also fix for extension module tests for case-insensitivity.
2012-01-30 12:51:49 -05:00
Brett Cannon
01ad3251ae
Issue #13890 : Fix importlib case-sensitivity tests to not run on Windows.
...
Thanks to os.environ under Windows only updating the dict and not the
environment itself (as exposed by nt.environ), tests using
PYTHONCASEOK always fail. Now the tests are skipped when os.environ
does not do what is expected.
2012-01-30 12:48:16 -05:00
Brett Cannon
c264e3ee20
Move some code from importlib.__init__ to importlib._bootstrap that
...
does not need to be exposed from C code for bootstrapping reasons.
2012-01-25 18:58:03 -05:00
Antoine Pitrou
581616624d
Port import fixes from 2.7.
2012-01-25 18:06:07 +01:00
Antoine Pitrou
33d15f7c85
Port import fixes from 2.7.
2012-01-25 18:01:45 +01:00
Antoine Pitrou
157c1263a2
Port remaining test fixes, and fix test_importlib too.
2012-01-25 03:01:34 +01:00
Antoine Pitrou
dd21f68963
Port remaining test fixes, and fix test_importlib too.
2012-01-25 03:00:57 +01:00
Antoine Pitrou
abaf89b2be
Issue #11235 : Fix OverflowError when trying to import a source file whose modification time doesn't fit in a 32-bit timestamp.
2012-01-24 17:45:50 +01:00
Antoine Pitrou
2be60afb7e
Issue #11235 : Fix OverflowError when trying to import a source file whose modification time doesn't fit in a 32-bit timestamp.
2012-01-24 17:44:06 +01:00
Benjamin Peterson
6f5b6d7e8f
kill useless import added by 87331661042b
2012-01-15 22:43:10 -05:00
Antoine Pitrou
7c9907e565
Fix no-op tests in importlib.
2011-12-30 21:25:15 +01:00
Antoine Pitrou
5136ac0ca2
Issue #13645 : pyc files now contain the size of the corresponding source
...
code, to avoid timestamp collisions (especially on filesystems with a low
timestamp resolution) when checking for freshness of the bytecode.
2012-01-13 18:52:16 +01:00
Antoine Pitrou
5e8767c764
Fix no-op tests in importlib.
2011-12-30 21:26:08 +01:00
Meador Inge
96ff0840b6
Issue #13593 : updating the importlib utility decorators for __qualname__.
2011-12-14 22:53:13 -06:00
Meador Inge
d7afeeeb8d
Issue #13591 : import_module potentially imports a module twice.
2011-12-14 22:27:28 -06:00
Meador Inge
416f12ddb3
Issue #13591 : import_module potentially imports a module twice.
2011-12-14 22:23:46 -06:00
Florent Xicluna
67317750af
Issue #13248 : turn 3.2's PendingDeprecationWarning into 3.3's DeprecationWarning (cgi, importlib, nntplib, smtpd).
2011-12-10 11:07:42 +01:00
Vinay Sajip
65897a386e
Closes #12291 for 3.3 - merged fix from 3.2.
2011-07-02 17:16:02 +01:00
Vinay Sajip
5bdae3bb7c
Closes #12291 : Fixed bug which was found when doing multiple loads from one stream.
2011-07-02 16:42:47 +01:00
Éric Araujo
ef3062f7af
Kill dead code in importlib.test.__main__ ( #12019 , reviewed by Brett Cannon)
2011-06-07 17:58:50 +02:00
Victor Stinner
82f46144cc
(Merge 3.2) Issue #11614 : Fix importlib tests for the new __hello__ module
2011-05-16 17:00:41 +02:00
Victor Stinner
45323a890a
(Merge 3.1) Issue #11614 : Fix importlib tests for the new __hello__ module
2011-05-16 16:59:49 +02:00
Victor Stinner
272e24356e
Issue #11614 : Fix importlib tests for the new __hello__ module
2011-05-16 16:57:18 +02:00
Brett Cannon
5d43cff623
Remove a stale comment.
2011-03-23 18:12:24 -07:00
Ezio Melotti
19f2aeba67
Merged revisions 86596 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r86596 | ezio.melotti | 2010-11-20 21:04:17 +0200 (Sat, 20 Nov 2010) | 1 line
#9424 : Replace deprecated assert* methods in the Python test suite.
........
2010-11-21 01:30:29 +00:00