summaryrefslogtreecommitdiff
path: root/numpy
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2013-03-27 21:49:08 -0600
committerCharles Harris <charlesr.harris@gmail.com>2013-03-28 08:43:26 -0600
commitd4b88c1dbd6898fb6fcebc97f36b421999340f71 (patch)
tree61cc0282cf2509afe364c91e97b59dfb2ebcafd3 /numpy
parent40742184df68fc01f3392c9865f35d5402e74b01 (diff)
downloadnumpy-d4b88c1dbd6898fb6fcebc97f36b421999340f71.tar.gz
2to3: Use absolute imports.
The new import `absolute_import` is added the `from __future__ import` statement and The 2to3 `import` fixer is run to make the imports compatible. There are several things that need to be dealt with to make this work. 1) Files meant to be run as scripts run in a different environment than files imported as part of a package, and so changes to those files need to be skipped. The affected script files are: * all setup.py files * numpy/core/code_generators/generate_umath.py * numpy/core/code_generators/generate_numpy_api.py * numpy/core/code_generators/generate_ufunc_api.py 2) Some imported modules are not available as they are created during the build process and consequently 2to3 is unable to handle them correctly. Files that import those modules need a bit of extra work. The affected files are: * core/__init__.py, * core/numeric.py, * core/_internal.py, * core/arrayprint.py, * core/fromnumeric.py, * numpy/__init__.py, * lib/npyio.py, * lib/function_base.py, * fft/fftpack.py, * random/__init__.py Closes #3172
Diffstat (limited to 'numpy')
-rw-r--r--numpy/__init__.py40
-rw-r--r--numpy/_import_tools.py2
-rw-r--r--numpy/add_newdocs.py2
-rw-r--r--numpy/build_utils/__init__.py2
-rw-r--r--numpy/build_utils/common.py2
-rw-r--r--numpy/build_utils/waf.py4
-rw-r--r--numpy/compat/__init__.py10
-rw-r--r--numpy/compat/_inspect.py2
-rw-r--r--numpy/compat/py3k.py2
-rw-r--r--numpy/core/__init__.py52
-rw-r--r--numpy/core/_internal.py12
-rw-r--r--numpy/core/_methods.py2
-rw-r--r--numpy/core/arrayprint.py18
-rw-r--r--numpy/core/code_generators/__init__.py2
-rw-r--r--numpy/core/code_generators/cversions.py6
-rw-r--r--numpy/core/code_generators/genapi.py2
-rw-r--r--numpy/core/code_generators/numpy_api.py2
-rw-r--r--numpy/core/code_generators/ufunc_docstrings.py2
-rw-r--r--numpy/core/defchararray.py8
-rw-r--r--numpy/core/fromnumeric.py12
-rw-r--r--numpy/core/function_base.py6
-rw-r--r--numpy/core/getlimits.py10
-rw-r--r--numpy/core/info.py2
-rw-r--r--numpy/core/machar.py2
-rw-r--r--numpy/core/memmap.py4
-rw-r--r--numpy/core/numeric.py20
-rw-r--r--numpy/core/numerictypes.py2
-rw-r--r--numpy/core/records.py8
-rw-r--r--numpy/core/setup_common.py2
-rw-r--r--numpy/core/shape_base.py6
-rw-r--r--numpy/core/src/multiarray/testcalcs.py2
-rw-r--r--numpy/core/tests/test_api.py2
-rw-r--r--numpy/core/tests/test_arrayprint.py2
-rw-r--r--numpy/core/tests/test_blasdot.py2
-rw-r--r--numpy/core/tests/test_datetime.py2
-rw-r--r--numpy/core/tests/test_defchararray.py2
-rw-r--r--numpy/core/tests/test_deprecations.py2
-rw-r--r--numpy/core/tests/test_dtype.py2
-rw-r--r--numpy/core/tests/test_einsum.py2
-rw-r--r--numpy/core/tests/test_errstate.py2
-rw-r--r--numpy/core/tests/test_function_base.py2
-rw-r--r--numpy/core/tests/test_getlimits.py2
-rw-r--r--numpy/core/tests/test_half.py2
-rw-r--r--numpy/core/tests/test_indexerrors.py2
-rw-r--r--numpy/core/tests/test_indexing.py2
-rw-r--r--numpy/core/tests/test_item_selection.py2
-rw-r--r--numpy/core/tests/test_machar.py2
-rw-r--r--numpy/core/tests/test_memmap.py2
-rw-r--r--numpy/core/tests/test_multiarray.py2
-rw-r--r--numpy/core/tests/test_multiarray_assignment.py2
-rw-r--r--numpy/core/tests/test_nditer.py2
-rw-r--r--numpy/core/tests/test_numeric.py2
-rw-r--r--numpy/core/tests/test_numerictypes.py2
-rw-r--r--numpy/core/tests/test_print.py2
-rw-r--r--numpy/core/tests/test_records.py2
-rw-r--r--numpy/core/tests/test_regression.py2
-rw-r--r--numpy/core/tests/test_scalarmath.py2
-rw-r--r--numpy/core/tests/test_scalarprint.py2
-rw-r--r--numpy/core/tests/test_shape_base.py2
-rw-r--r--numpy/core/tests/test_ufunc.py2
-rw-r--r--numpy/core/tests/test_umath.py2
-rw-r--r--numpy/core/tests/test_umath_complex.py2
-rw-r--r--numpy/core/tests/test_unicode.py2
-rw-r--r--numpy/ctypeslib.py2
-rw-r--r--numpy/distutils/__init__.py12
-rw-r--r--numpy/distutils/__version__.py2
-rw-r--r--numpy/distutils/ccompiler.py4
-rw-r--r--numpy/distutils/command/__init__.py2
-rw-r--r--numpy/distutils/command/autodist.py2
-rw-r--r--numpy/distutils/command/bdist_rpm.py2
-rw-r--r--numpy/distutils/command/build.py2
-rw-r--r--numpy/distutils/command/build_clib.py2
-rw-r--r--numpy/distutils/command/build_ext.py2
-rw-r--r--numpy/distutils/command/build_py.py2
-rw-r--r--numpy/distutils/command/build_scripts.py2
-rw-r--r--numpy/distutils/command/build_src.py2
-rw-r--r--numpy/distutils/command/config.py2
-rw-r--r--numpy/distutils/command/config_compiler.py2
-rw-r--r--numpy/distutils/command/develop.py2
-rw-r--r--numpy/distutils/command/egg_info.py2
-rw-r--r--numpy/distutils/command/install.py2
-rw-r--r--numpy/distutils/command/install_clib.py2
-rw-r--r--numpy/distutils/command/install_data.py2
-rw-r--r--numpy/distutils/command/install_headers.py2
-rw-r--r--numpy/distutils/command/sdist.py2
-rw-r--r--numpy/distutils/compat.py2
-rw-r--r--numpy/distutils/conv_template.py2
-rw-r--r--numpy/distutils/core.py2
-rw-r--r--numpy/distutils/cpuinfo.py2
-rw-r--r--numpy/distutils/environment.py2
-rw-r--r--numpy/distutils/exec_command.py2
-rw-r--r--numpy/distutils/extension.py2
-rw-r--r--numpy/distutils/fcompiler/__init__.py2
-rw-r--r--numpy/distutils/fcompiler/absoft.py2
-rw-r--r--numpy/distutils/fcompiler/compaq.py2
-rw-r--r--numpy/distutils/fcompiler/g95.py2
-rw-r--r--numpy/distutils/fcompiler/gnu.py2
-rw-r--r--numpy/distutils/fcompiler/hpux.py2
-rw-r--r--numpy/distutils/fcompiler/ibm.py2
-rw-r--r--numpy/distutils/fcompiler/intel.py2
-rw-r--r--numpy/distutils/fcompiler/lahey.py2
-rw-r--r--numpy/distutils/fcompiler/mips.py2
-rw-r--r--numpy/distutils/fcompiler/nag.py2
-rw-r--r--numpy/distutils/fcompiler/none.py2
-rw-r--r--numpy/distutils/fcompiler/pathf95.py2
-rw-r--r--numpy/distutils/fcompiler/pg.py2
-rw-r--r--numpy/distutils/fcompiler/sun.py2
-rw-r--r--numpy/distutils/fcompiler/vast.py2
-rw-r--r--numpy/distutils/from_template.py2
-rw-r--r--numpy/distutils/info.py2
-rw-r--r--numpy/distutils/intelccompiler.py2
-rw-r--r--numpy/distutils/lib2def.py2
-rw-r--r--numpy/distutils/line_endings.py2
-rw-r--r--numpy/distutils/log.py4
-rw-r--r--numpy/distutils/mingw32ccompiler.py4
-rw-r--r--numpy/distutils/misc_util.py4
-rw-r--r--numpy/distutils/npy_pkg_config.py2
-rw-r--r--numpy/distutils/numpy_distribution.py2
-rw-r--r--numpy/distutils/pathccompiler.py2
-rw-r--r--numpy/distutils/system_info.py4
-rw-r--r--numpy/distutils/tests/f2py_ext/__init__.py2
-rw-r--r--numpy/distutils/tests/f2py_ext/tests/test_fib2.py2
-rw-r--r--numpy/distutils/tests/f2py_f90_ext/__init__.py2
-rw-r--r--numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py2
-rw-r--r--numpy/distutils/tests/gen_ext/__init__.py2
-rw-r--r--numpy/distutils/tests/gen_ext/tests/test_fib3.py2
-rw-r--r--numpy/distutils/tests/pyrex_ext/__init__.py2
-rw-r--r--numpy/distutils/tests/pyrex_ext/tests/test_primes.py2
-rw-r--r--numpy/distutils/tests/swig_ext/__init__.py2
-rw-r--r--numpy/distutils/tests/swig_ext/tests/test_example.py2
-rw-r--r--numpy/distutils/tests/swig_ext/tests/test_example2.py2
-rw-r--r--numpy/distutils/tests/test_fcompiler_gnu.py2
-rw-r--r--numpy/distutils/tests/test_fcompiler_intel.py2
-rw-r--r--numpy/distutils/tests/test_misc_util.py2
-rw-r--r--numpy/distutils/tests/test_npy_pkg_config.py2
-rw-r--r--numpy/distutils/unixccompiler.py4
-rw-r--r--numpy/doc/__init__.py2
-rw-r--r--numpy/doc/basics.py2
-rw-r--r--numpy/doc/broadcasting.py2
-rw-r--r--numpy/doc/byteswapping.py2
-rw-r--r--numpy/doc/constants.py2
-rw-r--r--numpy/doc/creation.py2
-rw-r--r--numpy/doc/glossary.py2
-rw-r--r--numpy/doc/howtofind.py2
-rw-r--r--numpy/doc/indexing.py2
-rw-r--r--numpy/doc/internals.py2
-rw-r--r--numpy/doc/io.py2
-rw-r--r--numpy/doc/jargon.py2
-rw-r--r--numpy/doc/methods_vs_functions.py2
-rw-r--r--numpy/doc/misc.py2
-rw-r--r--numpy/doc/performance.py2
-rw-r--r--numpy/doc/structured_arrays.py2
-rw-r--r--numpy/doc/subclassing.py2
-rw-r--r--numpy/doc/ufuncs.py2
-rw-r--r--numpy/dual.py2
-rw-r--r--numpy/f2py/__init__.py10
-rw-r--r--numpy/f2py/__version__.py2
-rw-r--r--numpy/f2py/auxfuncs.py8
-rw-r--r--numpy/f2py/capi_maps.py10
-rw-r--r--numpy/f2py/cb_rules.py10
-rw-r--r--numpy/f2py/cfuncs.py6
-rw-r--r--numpy/f2py/common_rules.py12
-rwxr-xr-xnumpy/f2py/crackfortran.py6
-rw-r--r--numpy/f2py/diagnose.py2
-rwxr-xr-xnumpy/f2py/doc/collectinput.py2
-rw-r--r--numpy/f2py/docs/pytest.py2
-rw-r--r--numpy/f2py/docs/usersguide/setup_example.py2
-rwxr-xr-xnumpy/f2py/f2py2e.py16
-rw-r--r--numpy/f2py/f2py_testing.py2
-rw-r--r--numpy/f2py/f90mod_rules.py12
-rw-r--r--numpy/f2py/func2subr.py4
-rw-r--r--numpy/f2py/info.py2
-rw-r--r--numpy/f2py/rules.py20
-rw-r--r--numpy/f2py/tests/test_array_from_pyobj.py2
-rw-r--r--numpy/f2py/tests/test_assumed_shape.py2
-rw-r--r--numpy/f2py/tests/test_callback.py2
-rw-r--r--numpy/f2py/tests/test_kind.py2
-rw-r--r--numpy/f2py/tests/test_mixed.py2
-rw-r--r--numpy/f2py/tests/test_return_character.py2
-rw-r--r--numpy/f2py/tests/test_return_complex.py2
-rw-r--r--numpy/f2py/tests/test_return_integer.py2
-rw-r--r--numpy/f2py/tests/test_return_logical.py2
-rw-r--r--numpy/f2py/tests/test_return_real.py2
-rw-r--r--numpy/f2py/tests/test_size.py2
-rw-r--r--numpy/f2py/tests/util.py2
-rw-r--r--numpy/f2py/use_rules.py4
-rw-r--r--numpy/fft/__init__.py8
-rw-r--r--numpy/fft/fftpack.py4
-rw-r--r--numpy/fft/helper.py2
-rw-r--r--numpy/fft/info.py2
-rw-r--r--numpy/fft/tests/test_fftpack.py2
-rw-r--r--numpy/fft/tests/test_helper.py2
-rw-r--r--numpy/lib/__init__.py34
-rw-r--r--numpy/lib/_datasource.py2
-rw-r--r--numpy/lib/_iotools.py2
-rw-r--r--numpy/lib/arraypad.py2
-rw-r--r--numpy/lib/arraysetops.py2
-rw-r--r--numpy/lib/arrayterator.py2
-rw-r--r--numpy/lib/financial.py2
-rw-r--r--numpy/lib/format.py2
-rw-r--r--numpy/lib/function_base.py12
-rw-r--r--numpy/lib/index_tricks.py6
-rw-r--r--numpy/lib/info.py2
-rw-r--r--numpy/lib/npyio.py10
-rw-r--r--numpy/lib/polynomial.py2
-rw-r--r--numpy/lib/recfunctions.py2
-rw-r--r--numpy/lib/scimath.py2
-rw-r--r--numpy/lib/shape_base.py2
-rw-r--r--numpy/lib/stride_tricks.py2
-rw-r--r--numpy/lib/tests/test__datasource.py2
-rw-r--r--numpy/lib/tests/test__iotools.py2
-rw-r--r--numpy/lib/tests/test_arraypad.py2
-rw-r--r--numpy/lib/tests/test_arraysetops.py2
-rw-r--r--numpy/lib/tests/test_arrayterator.py2
-rw-r--r--numpy/lib/tests/test_financial.py2
-rw-r--r--numpy/lib/tests/test_format.py2
-rw-r--r--numpy/lib/tests/test_function_base.py2
-rw-r--r--numpy/lib/tests/test_index_tricks.py2
-rw-r--r--numpy/lib/tests/test_io.py2
-rw-r--r--numpy/lib/tests/test_polynomial.py2
-rw-r--r--numpy/lib/tests/test_recfunctions.py2
-rw-r--r--numpy/lib/tests/test_regression.py2
-rw-r--r--numpy/lib/tests/test_shape_base.py2
-rw-r--r--numpy/lib/tests/test_stride_tricks.py2
-rw-r--r--numpy/lib/tests/test_twodim_base.py2
-rw-r--r--numpy/lib/tests/test_type_check.py2
-rw-r--r--numpy/lib/tests/test_ufunclike.py2
-rw-r--r--numpy/lib/tests/test_utils.py2
-rw-r--r--numpy/lib/twodim_base.py2
-rw-r--r--numpy/lib/type_check.py4
-rw-r--r--numpy/lib/ufunclike.py2
-rw-r--r--numpy/lib/user_array.py2
-rw-r--r--numpy/lib/utils.py2
-rw-r--r--numpy/linalg/__init__.py6
-rw-r--r--numpy/linalg/info.py2
-rw-r--r--numpy/linalg/lapack_lite/clapack_scrub.py2
-rw-r--r--numpy/linalg/lapack_lite/fortran.py2
-rwxr-xr-xnumpy/linalg/lapack_lite/make_lite.py2
-rw-r--r--numpy/linalg/linalg.py2
-rw-r--r--numpy/linalg/tests/test_build.py2
-rw-r--r--numpy/linalg/tests/test_linalg.py2
-rw-r--r--numpy/linalg/tests/test_regression.py2
-rw-r--r--numpy/ma/__init__.py10
-rw-r--r--numpy/ma/bench.py2
-rw-r--r--numpy/ma/core.py2
-rw-r--r--numpy/ma/extras.py6
-rw-r--r--numpy/ma/mrecords.py2
-rw-r--r--numpy/ma/tests/test_core.py2
-rw-r--r--numpy/ma/tests/test_extras.py2
-rw-r--r--numpy/ma/tests/test_mrecords.py2
-rw-r--r--numpy/ma/tests/test_old_ma.py2
-rw-r--r--numpy/ma/tests/test_regression.py2
-rw-r--r--numpy/ma/tests/test_subclassing.py2
-rw-r--r--numpy/ma/testutils.py4
-rw-r--r--numpy/ma/timer_comparison.py2
-rw-r--r--numpy/ma/version.py6
-rw-r--r--numpy/matlib.py2
-rw-r--r--numpy/matrixlib/__init__.py4
-rw-r--r--numpy/matrixlib/defmatrix.py2
-rw-r--r--numpy/matrixlib/tests/test_defmatrix.py2
-rw-r--r--numpy/matrixlib/tests/test_multiarray.py2
-rw-r--r--numpy/matrixlib/tests/test_numeric.py2
-rw-r--r--numpy/matrixlib/tests/test_regression.py2
-rw-r--r--numpy/numarray/__init__.py26
-rw-r--r--numpy/numarray/alter_code1.py2
-rw-r--r--numpy/numarray/alter_code2.py2
-rw-r--r--numpy/numarray/compat.py2
-rw-r--r--numpy/numarray/convolve.py2
-rw-r--r--numpy/numarray/fft.py2
-rw-r--r--numpy/numarray/functions.py4
-rw-r--r--numpy/numarray/image.py2
-rw-r--r--numpy/numarray/linear_algebra.py2
-rw-r--r--numpy/numarray/ma.py2
-rw-r--r--numpy/numarray/matrix.py2
-rw-r--r--numpy/numarray/mlab.py2
-rw-r--r--numpy/numarray/nd_image.py2
-rw-r--r--numpy/numarray/numerictypes.py2
-rw-r--r--numpy/numarray/random_array.py2
-rw-r--r--numpy/numarray/session.py2
-rw-r--r--numpy/numarray/ufuncs.py2
-rw-r--r--numpy/numarray/util.py2
-rw-r--r--numpy/oldnumeric/__init__.py24
-rw-r--r--numpy/oldnumeric/alter_code1.py2
-rw-r--r--numpy/oldnumeric/alter_code2.py2
-rw-r--r--numpy/oldnumeric/array_printer.py2
-rw-r--r--numpy/oldnumeric/arrayfns.py2
-rw-r--r--numpy/oldnumeric/compat.py6
-rw-r--r--numpy/oldnumeric/fft.py2
-rw-r--r--numpy/oldnumeric/fix_default_axis.py2
-rw-r--r--numpy/oldnumeric/functions.py4
-rw-r--r--numpy/oldnumeric/linear_algebra.py2
-rw-r--r--numpy/oldnumeric/ma.py2
-rw-r--r--numpy/oldnumeric/matrix.py4
-rw-r--r--numpy/oldnumeric/misc.py4
-rw-r--r--numpy/oldnumeric/mlab.py26
-rw-r--r--numpy/oldnumeric/precision.py4
-rw-r--r--numpy/oldnumeric/random_array.py2
-rw-r--r--numpy/oldnumeric/rng.py2
-rw-r--r--numpy/oldnumeric/rng_stats.py2
-rw-r--r--numpy/oldnumeric/tests/test_oldnumeric.py2
-rw-r--r--numpy/oldnumeric/tests/test_regression.py2
-rw-r--r--numpy/oldnumeric/typeconv.py2
-rw-r--r--numpy/oldnumeric/ufuncs.py2
-rw-r--r--numpy/oldnumeric/user_array.py2
-rw-r--r--numpy/polynomial/__init__.py14
-rw-r--r--numpy/polynomial/chebyshev.py8
-rw-r--r--numpy/polynomial/hermite.py8
-rw-r--r--numpy/polynomial/hermite_e.py8
-rw-r--r--numpy/polynomial/laguerre.py8
-rw-r--r--numpy/polynomial/legendre.py8
-rw-r--r--numpy/polynomial/polynomial.py6
-rw-r--r--numpy/polynomial/polytemplate.py13
-rw-r--r--numpy/polynomial/polyutils.py2
-rw-r--r--numpy/polynomial/tests/test_chebyshev.py2
-rw-r--r--numpy/polynomial/tests/test_classes.py2
-rw-r--r--numpy/polynomial/tests/test_hermite.py2
-rw-r--r--numpy/polynomial/tests/test_hermite_e.py2
-rw-r--r--numpy/polynomial/tests/test_laguerre.py2
-rw-r--r--numpy/polynomial/tests/test_legendre.py2
-rw-r--r--numpy/polynomial/tests/test_polynomial.py2
-rw-r--r--numpy/polynomial/tests/test_polyutils.py2
-rw-r--r--numpy/polynomial/tests/test_printing.py2
-rw-r--r--numpy/random/__init__.py6
-rw-r--r--numpy/random/info.py2
-rw-r--r--numpy/random/mtrand/generate_mtrand_c.py2
-rw-r--r--numpy/random/tests/test_random.py2
-rw-r--r--numpy/random/tests/test_regression.py2
-rw-r--r--numpy/testing/__init__.py12
-rw-r--r--numpy/testing/decorators.py6
-rw-r--r--numpy/testing/noseclasses.py4
-rw-r--r--numpy/testing/nosetester.py12
-rw-r--r--numpy/testing/nulltester.py2
-rw-r--r--numpy/testing/numpytest.py2
-rwxr-xr-xnumpy/testing/print_coercion_tables.py2
-rw-r--r--numpy/testing/tests/test_decorators.py2
-rw-r--r--numpy/testing/tests/test_doctesting.py2
-rw-r--r--numpy/testing/tests/test_utils.py2
-rw-r--r--numpy/testing/utils.py4
-rw-r--r--numpy/tests/test_ctypeslib.py2
-rw-r--r--numpy/tests/test_matlib.py2
340 files changed, 619 insertions, 624 deletions
diff --git a/numpy/__init__.py b/numpy/__init__.py
index 03e2afe6e..9cae9d388 100644
--- a/numpy/__init__.py
+++ b/numpy/__init__.py
@@ -104,7 +104,7 @@ available as array methods, i.e. ``x = np.array([1,2,3]); x.sort()``.
Exceptions to this rule are documented.
"""
-from __future__ import division
+from __future__ import division, absolute_import
# We first need to detect if we're being called as part of the numpy setup
# procedure itself in a reliable manner.
@@ -126,43 +126,43 @@ else:
its source directory; please exit the numpy source tree, and relaunch
your python intepreter from there."""
raise ImportError(msg)
- from version import git_revision as __git_revision__
- from version import version as __version__
+ from .version import git_revision as __git_revision__
+ from .version import version as __version__
- from _import_tools import PackageLoader
+ from ._import_tools import PackageLoader
def pkgload(*packages, **options):
loader = PackageLoader(infunc=True)
return loader(*packages, **options)
- import add_newdocs
+ from . import add_newdocs
__all__ = ['add_newdocs']
pkgload.__doc__ = PackageLoader.__call__.__doc__
- from testing import Tester
+ from .testing import Tester
test = Tester().test
bench = Tester().bench
- import core
- from core import *
- import compat
- import lib
- from lib import *
- import linalg
- import fft
- import polynomial
- import random
- import ctypeslib
- import ma
- import matrixlib as _mat
- from matrixlib import *
+ from . import core
+ from .core import *
+ from . import compat
+ from . import lib
+ from .lib import *
+ from . import linalg
+ from . import fft
+ from . import polynomial
+ from . import random
+ from . import ctypeslib
+ from . import ma
+ from . import matrixlib as _mat
+ from .matrixlib import *
# Make these accessible from numpy name-space
# but not imported in from numpy import *
from __builtin__ import bool, int, long, float, complex, \
object, unicode, str
- from core import round, abs, max, min
+ from .core import round, abs, max, min
__all__.extend(['__version__', 'pkgload', 'PackageLoader',
'show_config'])
diff --git a/numpy/_import_tools.py b/numpy/_import_tools.py
index ecf29975b..b5939cd0a 100644
--- a/numpy/_import_tools.py
+++ b/numpy/_import_tools.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/add_newdocs.py b/numpy/add_newdocs.py
index 9303fe77c..f2b7077c7 100644
--- a/numpy/add_newdocs.py
+++ b/numpy/add_newdocs.py
@@ -8,7 +8,7 @@ NOTE: Many of the methods of ndarray have corresponding functions.
core/fromnumeric.py, core/defmatrix.py up-to-date.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.lib import add_newdoc
diff --git a/numpy/build_utils/__init__.py b/numpy/build_utils/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/build_utils/__init__.py
+++ b/numpy/build_utils/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/build_utils/common.py b/numpy/build_utils/common.py
index 031a24583..301d1da7d 100644
--- a/numpy/build_utils/common.py
+++ b/numpy/build_utils/common.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import copy
diff --git a/numpy/build_utils/waf.py b/numpy/build_utils/waf.py
index ee28c0ee6..09f1943ea 100644
--- a/numpy/build_utils/waf.py
+++ b/numpy/build_utils/waf.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import re
@@ -7,7 +7,7 @@ import waflib.Configure
import waflib.Tools.c_config
from waflib import Logs, Utils
-from common \
+from .common \
import \
LONG_DOUBLE_REPRESENTATION_SRC, pyod, \
long_double_representation
diff --git a/numpy/compat/__init__.py b/numpy/compat/__init__.py
index 930be5a90..bb40fdbe9 100644
--- a/numpy/compat/__init__.py
+++ b/numpy/compat/__init__.py
@@ -8,12 +8,12 @@ extensions, which may be included for the following reasons:
* we may only need a small subset of the copied library/module
"""
-from __future__ import division
+from __future__ import division, absolute_import
-import _inspect
-import py3k
-from _inspect import getargspec, formatargspec
-from py3k import *
+from . import _inspect
+from . import py3k
+from ._inspect import getargspec, formatargspec
+from .py3k import *
__all__ = []
__all__.extend(_inspect.__all__)
diff --git a/numpy/compat/_inspect.py b/numpy/compat/_inspect.py
index cb9717ced..902d609a9 100644
--- a/numpy/compat/_inspect.py
+++ b/numpy/compat/_inspect.py
@@ -5,7 +5,7 @@ significanly contributes to numpy import times. Importing this copy has almost
no overhead.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import types
diff --git a/numpy/compat/py3k.py b/numpy/compat/py3k.py
index 594acc1e0..7d853d84b 100644
--- a/numpy/compat/py3k.py
+++ b/numpy/compat/py3k.py
@@ -2,7 +2,7 @@
Python 3 compatibility tools.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['bytes', 'asbytes', 'isfileobj', 'getexception', 'strchar',
'unicode', 'asunicode', 'asbytes_nested', 'asunicode_nested',
diff --git a/numpy/core/__init__.py b/numpy/core/__init__.py
index 011e356b2..f055d289e 100644
--- a/numpy/core/__init__.py
+++ b/numpy/core/__init__.py
@@ -1,36 +1,36 @@
-from __future__ import division
+from __future__ import division, absolute_import
-from info import __doc__
+from .info import __doc__
from numpy.version import version as __version__
-import multiarray
-import umath
-import _internal # for freeze programs
-import numerictypes as nt
+from . import multiarray
+from . import umath
+from . import _internal # for freeze programs
+from . import numerictypes as nt
multiarray.set_typeDict(nt.sctypeDict)
-import numeric
-from numeric import *
-import fromnumeric
-from fromnumeric import *
-import defchararray as char
-import records as rec
-from records import *
-from memmap import *
-from defchararray import chararray
-import scalarmath
-import function_base
-from function_base import *
-import machar
-from machar import *
-import getlimits
-from getlimits import *
-import shape_base
-from shape_base import *
+from . import numeric
+from .numeric import *
+from . import fromnumeric
+from .fromnumeric import *
+from . import defchararray as char
+from . import records as rec
+from .records import *
+from .memmap import *
+from .defchararray import chararray
+from . import scalarmath
+from . import function_base
+from .function_base import *
+from . import machar
+from .machar import *
+from . import getlimits
+from .getlimits import *
+from . import shape_base
+from .shape_base import *
del nt
-from fromnumeric import amax as max, amin as min, \
+from .fromnumeric import amax as max, amin as min, \
round_ as round
-from numeric import absolute as abs
+from .numeric import absolute as abs
__all__ = ['char','rec','memmap']
__all__ += numeric.__all__
diff --git a/numpy/core/_internal.py b/numpy/core/_internal.py
index 6b448528e..ae7a81ca8 100644
--- a/numpy/core/_internal.py
+++ b/numpy/core/_internal.py
@@ -4,7 +4,7 @@ A place for code to be called from core C-code.
Some things are more easily handled Python.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import re
import sys
@@ -18,7 +18,7 @@ else:
_nbo = asbytes('>')
def _makenames_list(adict, align):
- from multiarray import dtype
+ from .multiarray import dtype
allfields = []
fnames = adict.keys()
for fname in fnames:
@@ -52,7 +52,7 @@ def _makenames_list(adict, align):
# a dictionary without "names" and "formats"
# fields is used as a data-type descriptor.
def _usefields(adict, align):
- from multiarray import dtype
+ from .multiarray import dtype
try:
names = adict[-1]
except KeyError:
@@ -130,7 +130,7 @@ def _array_descr(descriptor):
# so don't remove the name here, or you'll
# break backward compatibilty.
def _reconstruct(subtype, shape, dtype):
- from multiarray import ndarray
+ from .multiarray import ndarray
return ndarray.__new__(subtype, shape, dtype)
@@ -194,7 +194,7 @@ def _commastring(astr):
return result
def _getintp_ctype():
- from multiarray import dtype
+ from .multiarray import dtype
val = _getintp_ctype.cache
if val is not None:
return val
@@ -290,7 +290,7 @@ def _newnames(datatype, order):
# Given an array with fields and a sequence of field names
# construct a new array with just those fields copied over
def _index_fields(ary, fields):
- from multiarray import empty, dtype, array
+ from .multiarray import empty, dtype, array
dt = ary.dtype
names = [name for name in fields if name in dt.names]
diff --git a/numpy/core/_methods.py b/numpy/core/_methods.py
index e0eaecb95..358d35ef1 100644
--- a/numpy/core/_methods.py
+++ b/numpy/core/_methods.py
@@ -3,7 +3,7 @@ Array methods which are called by the both the C-code for the method
and the Python code for the NumPy-namespace function
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.core import multiarray as mu
from numpy.core import umath as um
diff --git a/numpy/core/arrayprint.py b/numpy/core/arrayprint.py
index c665cec0e..2675b0ea1 100644
--- a/numpy/core/arrayprint.py
+++ b/numpy/core/arrayprint.py
@@ -3,7 +3,7 @@
$Id: arrayprint.py,v 1.9 2005/09/13 13:58:44 teoliphant Exp $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ["array2string", "set_printoptions", "get_printoptions"]
__docformat__ = 'restructuredtext'
@@ -16,10 +16,10 @@ __docformat__ = 'restructuredtext'
# and by Travis Oliphant 2005-8-22 for numpy
import sys
-import numerictypes as _nt
-from umath import maximum, minimum, absolute, not_equal, isnan, isinf
-from multiarray import format_longfloat, datetime_as_string, datetime_data
-from fromnumeric import ravel
+from . import numerictypes as _nt
+from .umath import maximum, minimum, absolute, not_equal, isnan, isinf
+from .multiarray import format_longfloat, datetime_as_string, datetime_data
+from .fromnumeric import ravel
def product(x, y): return x*y
@@ -197,7 +197,7 @@ def get_printoptions():
return d
def _leading_trailing(a):
- import numeric as _nc
+ from . import numeric as _nc
if a.ndim == 1:
if len(a) > 2*_summaryEdgeItems:
b = _nc.concatenate((a[:_summaryEdgeItems],
@@ -324,7 +324,7 @@ def _array2string(a, max_line_width, precision, suppress_small, separator=' ',
return lst
def _convert_arrays(obj):
- import numeric as _nc
+ from . import numeric as _nc
newtup = []
for k in obj:
if isinstance(k, _nc.ndarray):
@@ -539,7 +539,7 @@ class FloatFormat(object):
pass
def fillFormat(self, data):
- import numeric as _nc
+ from . import numeric as _nc
errstate = _nc.seterr(all='ignore')
try:
special = isnan(data) | isinf(data)
@@ -592,7 +592,7 @@ class FloatFormat(object):
self.format = format
def __call__(self, x, strip_zeros=True):
- import numeric as _nc
+ from . import numeric as _nc
err = _nc.seterr(invalid='ignore')
try:
if isnan(x):
diff --git a/numpy/core/code_generators/__init__.py b/numpy/core/code_generators/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/core/code_generators/__init__.py
+++ b/numpy/core/code_generators/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/core/code_generators/cversions.py b/numpy/core/code_generators/cversions.py
index 161dae8d9..9f8a8fb34 100644
--- a/numpy/core/code_generators/cversions.py
+++ b/numpy/core/code_generators/cversions.py
@@ -3,12 +3,12 @@
The API has is defined by numpy_api_order and ufunc_api_order.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from os.path import dirname
-from genapi import fullapi_hash
-import numpy_api
+from .genapi import fullapi_hash
+from . import numpy_api
if __name__ == '__main__':
diff --git a/numpy/core/code_generators/genapi.py b/numpy/core/code_generators/genapi.py
index a1fb9e641..3855d5a3d 100644
--- a/numpy/core/code_generators/genapi.py
+++ b/numpy/core/code_generators/genapi.py
@@ -6,7 +6,7 @@ See ``find_function`` for how functions should be formatted, and
specified.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys, os, re
try:
diff --git a/numpy/core/code_generators/numpy_api.py b/numpy/core/code_generators/numpy_api.py
index 4a9c747ea..35c8ab496 100644
--- a/numpy/core/code_generators/numpy_api.py
+++ b/numpy/core/code_generators/numpy_api.py
@@ -12,7 +12,7 @@ When adding a function, make sure to use the next integer not used as an index
exception, so it should hopefully not get unnoticed).
"""
-from __future__ import division
+from __future__ import division, absolute_import
multiarray_global_vars = {
'NPY_NUMUSERTYPES': 7,
diff --git a/numpy/core/code_generators/ufunc_docstrings.py b/numpy/core/code_generators/ufunc_docstrings.py
index 8e175160e..ff947acb8 100644
--- a/numpy/core/code_generators/ufunc_docstrings.py
+++ b/numpy/core/code_generators/ufunc_docstrings.py
@@ -9,7 +9,7 @@ for the ufuncs in numpy.core at the C level when the ufuncs are created
at compile time.
"""
-from __future__ import division
+from __future__ import division, absolute_import
docdict = {}
diff --git a/numpy/core/defchararray.py b/numpy/core/defchararray.py
index c85d95c49..3f0a730ad 100644
--- a/numpy/core/defchararray.py
+++ b/numpy/core/defchararray.py
@@ -15,12 +15,12 @@ available in your version of Python.
The preferred alias for `defchararray` is `numpy.char`.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
-from numerictypes import string_, unicode_, integer, object_, bool_, character
-from numeric import ndarray, compare_chararrays
-from numeric import array as narray
+from .numerictypes import string_, unicode_, integer, object_, bool_, character
+from .numeric import ndarray, compare_chararrays
+from .numeric import array as narray
from numpy.core.multiarray import _vec_string
from numpy.compat import asbytes
import numpy
diff --git a/numpy/core/fromnumeric.py b/numpy/core/fromnumeric.py
index 9ca56ce27..0080c38ce 100644
--- a/numpy/core/fromnumeric.py
+++ b/numpy/core/fromnumeric.py
@@ -1,7 +1,7 @@
"""Module containing non-deprecated functions borrowed from Numeric.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__docformat__ = "restructuredtext en"
@@ -16,11 +16,11 @@ __all__ = ['take', 'reshape', 'choose', 'repeat', 'put',
'amax', 'amin',
]
-import multiarray as mu
-import umath as um
-import numerictypes as nt
-from numeric import asarray, array, asanyarray, concatenate
-import _methods
+from . import multiarray as mu
+from . import umath as um
+from . import numerictypes as nt
+from .numeric import asarray, array, asanyarray, concatenate
+from . import _methods
_dt_ = nt.sctype2char
import types
diff --git a/numpy/core/function_base.py b/numpy/core/function_base.py
index fa6732077..4a757b931 100644
--- a/numpy/core/function_base.py
+++ b/numpy/core/function_base.py
@@ -1,9 +1,9 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['logspace', 'linspace']
-import numeric as _nx
-from numeric import array
+from . import numeric as _nx
+from .numeric import array
def linspace(start, stop, num=50, endpoint=True, retstep=False):
"""
diff --git a/numpy/core/getlimits.py b/numpy/core/getlimits.py
index 7b94346c7..606038677 100644
--- a/numpy/core/getlimits.py
+++ b/numpy/core/getlimits.py
@@ -1,14 +1,14 @@
"""Machine limits for Float32 and Float64 and (long double) if available...
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['finfo','iinfo']
-from machar import MachAr
-import numeric
-import numerictypes as ntypes
-from numeric import array
+from .machar import MachAr
+from . import numeric
+from . import numerictypes as ntypes
+from .numeric import array
def _frz(a):
"""fix rank-0 --> rank-1"""
diff --git a/numpy/core/info.py b/numpy/core/info.py
index f56b2d395..7152e4aca 100644
--- a/numpy/core/info.py
+++ b/numpy/core/info.py
@@ -81,7 +81,7 @@ More Functions:
arccosh arcsinh arctanh
"""
-from __future__ import division
+from __future__ import division, absolute_import
depends = ['testing']
global_symbols = ['*']
diff --git a/numpy/core/machar.py b/numpy/core/machar.py
index d44d17499..1053570f8 100644
--- a/numpy/core/machar.py
+++ b/numpy/core/machar.py
@@ -5,7 +5,7 @@ floating-point arithmetic system
Author: Pearu Peterson, September 2003
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['MachAr']
diff --git a/numpy/core/memmap.py b/numpy/core/memmap.py
index 5107e9b28..528951537 100644
--- a/numpy/core/memmap.py
+++ b/numpy/core/memmap.py
@@ -1,9 +1,9 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['memmap']
import warnings
-from numeric import uint8, ndarray, dtype
+from .numeric import uint8, ndarray, dtype
import sys
import numpy as np
diff --git a/numpy/core/numeric.py b/numpy/core/numeric.py
index 57e366efb..5c5d1a0da 100644
--- a/numpy/core/numeric.py
+++ b/numpy/core/numeric.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['newaxis', 'ndarray', 'flatiter', 'nditer', 'nested_iters', 'ufunc',
'arange', 'array', 'zeros', 'count_nonzero',
@@ -26,11 +26,11 @@ __all__ = ['newaxis', 'ndarray', 'flatiter', 'nditer', 'nested_iters', 'ufunc',
import sys
import warnings
-import multiarray
-import umath
-from umath import *
-import numerictypes
-from numerictypes import *
+from . import multiarray
+from . import umath
+from .umath import *
+from . import numerictypes
+from .numerictypes import *
import collections
@@ -911,7 +911,7 @@ def outer(a,b):
try:
# importing this changes the dot function for basic 4 types
# to blas-optimized versions.
- from _dotblas import dot, vdot, inner, alterdot, restoredot
+ from ._dotblas import dot, vdot, inner, alterdot, restoredot
except ImportError:
# docstrings are in add_newdocs.py
inner = multiarray.inner
@@ -1364,7 +1364,7 @@ def cross(a, b, axisa=-1, axisb=-1, axisc=-1, axis=None):
#Use numarray's printing function
-from arrayprint import array2string, get_printoptions, set_printoptions
+from .arrayprint import array2string, get_printoptions, set_printoptions
_typelessdata = [int_, float_, complex_]
if issubclass(intc, int):
@@ -2591,6 +2591,6 @@ nan = NaN = NAN
False_ = bool_(False)
True_ = bool_(True)
-import fromnumeric
-from fromnumeric import *
+from . import fromnumeric
+from .fromnumeric import *
extend_all(fromnumeric)
diff --git a/numpy/core/numerictypes.py b/numpy/core/numerictypes.py
index f89fa994d..a1af9d80d 100644
--- a/numpy/core/numerictypes.py
+++ b/numpy/core/numerictypes.py
@@ -80,7 +80,7 @@ Exported symbols include:
\\-> object_ (not used much) (kind=O)
"""
-from __future__ import division
+from __future__ import division, absolute_import
# we add more at the bottom
__all__ = ['sctypeDict', 'sctypeNA', 'typeDict', 'typeNA', 'sctypes',
diff --git a/numpy/core/records.py b/numpy/core/records.py
index 761b1015a..385f9866d 100644
--- a/numpy/core/records.py
+++ b/numpy/core/records.py
@@ -34,14 +34,14 @@ Record arrays allow us to access fields as properties::
array([ 2., 2.])
"""
-from __future__ import division
+from __future__ import division, absolute_import
# All of the functions allow formats to be a dtype
__all__ = ['record', 'recarray', 'format_parser']
-import numeric as sb
-from defchararray import chararray
-import numerictypes as nt
+from . import numeric as sb
+from .defchararray import chararray
+from . import numerictypes as nt
import types
import os
import sys
diff --git a/numpy/core/setup_common.py b/numpy/core/setup_common.py
index 1afc71085..056cf9ec0 100644
--- a/numpy/core/setup_common.py
+++ b/numpy/core/setup_common.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
# Code common to build tools
import sys
diff --git a/numpy/core/shape_base.py b/numpy/core/shape_base.py
index 4d5439249..d7e86f64e 100644
--- a/numpy/core/shape_base.py
+++ b/numpy/core/shape_base.py
@@ -1,9 +1,9 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['atleast_1d','atleast_2d','atleast_3d','vstack','hstack']
-import numeric as _nx
-from numeric import array, asanyarray, newaxis
+from . import numeric as _nx
+from .numeric import array, asanyarray, newaxis
def atleast_1d(*arys):
"""
diff --git a/numpy/core/src/multiarray/testcalcs.py b/numpy/core/src/multiarray/testcalcs.py
index 78a875406..d4b39cb4a 100644
--- a/numpy/core/src/multiarray/testcalcs.py
+++ b/numpy/core/src/multiarray/testcalcs.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from scipy import weave
diff --git a/numpy/core/tests/test_api.py b/numpy/core/tests/test_api.py
index 484b6afbd..92e7d936c 100644
--- a/numpy/core/tests/test_api.py
+++ b/numpy/core/tests/test_api.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/core/tests/test_arrayprint.py b/numpy/core/tests/test_arrayprint.py
index a61aa5161..e286aea07 100644
--- a/numpy/core/tests/test_arrayprint.py
+++ b/numpy/core/tests/test_arrayprint.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import numpy as np
diff --git a/numpy/core/tests/test_blasdot.py b/numpy/core/tests/test_blasdot.py
index d6abacfc1..1dd56fddd 100644
--- a/numpy/core/tests/test_blasdot.py
+++ b/numpy/core/tests/test_blasdot.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import sys
diff --git a/numpy/core/tests/test_datetime.py b/numpy/core/tests/test_datetime.py
index 03ee20b09..eecbfe75b 100644
--- a/numpy/core/tests/test_datetime.py
+++ b/numpy/core/tests/test_datetime.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os, pickle
import numpy
diff --git a/numpy/core/tests/test_defchararray.py b/numpy/core/tests/test_defchararray.py
index ed928bce1..d75955075 100644
--- a/numpy/core/tests/test_defchararray.py
+++ b/numpy/core/tests/test_defchararray.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.core import *
diff --git a/numpy/core/tests/test_deprecations.py b/numpy/core/tests/test_deprecations.py
index c7cc9d413..6a248b5cf 100644
--- a/numpy/core/tests/test_deprecations.py
+++ b/numpy/core/tests/test_deprecations.py
@@ -3,7 +3,7 @@ Tests related to deprecation warnings. Also a convenient place
to document how deprecations should eventually be turned into errors.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import warnings
diff --git a/numpy/core/tests/test_dtype.py b/numpy/core/tests/test_dtype.py
index a08cf4851..804c1cf2c 100644
--- a/numpy/core/tests/test_dtype.py
+++ b/numpy/core/tests/test_dtype.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import numpy as np
diff --git a/numpy/core/tests/test_einsum.py b/numpy/core/tests/test_einsum.py
index 4fba533db..ed7d455dc 100644
--- a/numpy/core/tests/test_einsum.py
+++ b/numpy/core/tests/test_einsum.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from decimal import Decimal
diff --git a/numpy/core/tests/test_errstate.py b/numpy/core/tests/test_errstate.py
index c7c5a13ce..04acafbc9 100644
--- a/numpy/core/tests/test_errstate.py
+++ b/numpy/core/tests/test_errstate.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import platform
diff --git a/numpy/core/tests/test_function_base.py b/numpy/core/tests/test_function_base.py
index 914ffbb14..345e326c2 100644
--- a/numpy/core/tests/test_function_base.py
+++ b/numpy/core/tests/test_function_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import logspace, linspace
diff --git a/numpy/core/tests/test_getlimits.py b/numpy/core/tests/test_getlimits.py
index 5d5d9bc44..794d9d0b7 100644
--- a/numpy/core/tests/test_getlimits.py
+++ b/numpy/core/tests/test_getlimits.py
@@ -1,7 +1,7 @@
""" Test functions for limits module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/core/tests/test_half.py b/numpy/core/tests/test_half.py
index ed1b3e5dd..a6a3cd05c 100644
--- a/numpy/core/tests/test_half.py
+++ b/numpy/core/tests/test_half.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import platform
diff --git a/numpy/core/tests/test_indexerrors.py b/numpy/core/tests/test_indexerrors.py
index 2d74d2ef3..5ab9b5aef 100644
--- a/numpy/core/tests/test_indexerrors.py
+++ b/numpy/core/tests/test_indexerrors.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import TestCase, run_module_suite, assert_raises, assert_equal, assert_
diff --git a/numpy/core/tests/test_indexing.py b/numpy/core/tests/test_indexing.py
index 6b8b7b8a8..530fd5583 100644
--- a/numpy/core/tests/test_indexing.py
+++ b/numpy/core/tests/test_indexing.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.compat import asbytes
diff --git a/numpy/core/tests/test_item_selection.py b/numpy/core/tests/test_item_selection.py
index ab10b476c..d2282e52a 100644
--- a/numpy/core/tests/test_item_selection.py
+++ b/numpy/core/tests/test_item_selection.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import *
diff --git a/numpy/core/tests/test_machar.py b/numpy/core/tests/test_machar.py
index 1d2c42110..659902d84 100644
--- a/numpy/core/tests/test_machar.py
+++ b/numpy/core/tests/test_machar.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/core/tests/test_memmap.py b/numpy/core/tests/test_memmap.py
index 5daeaa279..01c804933 100644
--- a/numpy/core/tests/test_memmap.py
+++ b/numpy/core/tests/test_memmap.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from tempfile import NamedTemporaryFile, mktemp
diff --git a/numpy/core/tests/test_multiarray.py b/numpy/core/tests/test_multiarray.py
index a9a79d38c..f4f51b414 100644
--- a/numpy/core/tests/test_multiarray.py
+++ b/numpy/core/tests/test_multiarray.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import tempfile
import sys
diff --git a/numpy/core/tests/test_multiarray_assignment.py b/numpy/core/tests/test_multiarray_assignment.py
index d5e506249..c47979b4d 100644
--- a/numpy/core/tests/test_multiarray_assignment.py
+++ b/numpy/core/tests/test_multiarray_assignment.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import TestCase
diff --git a/numpy/core/tests/test_nditer.py b/numpy/core/tests/test_nditer.py
index 219629191..ebbe25fd3 100644
--- a/numpy/core/tests/test_nditer.py
+++ b/numpy/core/tests/test_nditer.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy import array, arange, nditer, all
diff --git a/numpy/core/tests/test_numeric.py b/numpy/core/tests/test_numeric.py
index 6d3cbe923..047070cce 100644
--- a/numpy/core/tests/test_numeric.py
+++ b/numpy/core/tests/test_numeric.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import platform
diff --git a/numpy/core/tests/test_numerictypes.py b/numpy/core/tests/test_numerictypes.py
index f00aee453..77fe2daf2 100644
--- a/numpy/core/tests/test_numerictypes.py
+++ b/numpy/core/tests/test_numerictypes.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/core/tests/test_print.py b/numpy/core/tests/test_print.py
index 3b9025d10..67021c20e 100644
--- a/numpy/core/tests/test_print.py
+++ b/numpy/core/tests/test_print.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import *
diff --git a/numpy/core/tests/test_records.py b/numpy/core/tests/test_records.py
index 57d128b11..fa5877538 100644
--- a/numpy/core/tests/test_records.py
+++ b/numpy/core/tests/test_records.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from os import path
import numpy as np
diff --git a/numpy/core/tests/test_regression.py b/numpy/core/tests/test_regression.py
index 69138647e..19c15b32f 100644
--- a/numpy/core/tests/test_regression.py
+++ b/numpy/core/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import pickle
import sys
diff --git a/numpy/core/tests/test_scalarmath.py b/numpy/core/tests/test_scalarmath.py
index 03b90af79..3078c583b 100644
--- a/numpy/core/tests/test_scalarmath.py
+++ b/numpy/core/tests/test_scalarmath.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/core/tests/test_scalarprint.py b/numpy/core/tests/test_scalarprint.py
index 3f791e12d..80f5ab622 100644
--- a/numpy/core/tests/test_scalarprint.py
+++ b/numpy/core/tests/test_scalarprint.py
@@ -2,7 +2,7 @@
""" Test printing of scalar types.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import TestCase, assert_, run_module_suite
diff --git a/numpy/core/tests/test_shape_base.py b/numpy/core/tests/test_shape_base.py
index e0c8197de..cc2ff9d17 100644
--- a/numpy/core/tests/test_shape_base.py
+++ b/numpy/core/tests/test_shape_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import warnings
import numpy as np
diff --git a/numpy/core/tests/test_ufunc.py b/numpy/core/tests/test_ufunc.py
index 963b2aae7..16ae9f50c 100644
--- a/numpy/core/tests/test_ufunc.py
+++ b/numpy/core/tests/test_ufunc.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/core/tests/test_umath.py b/numpy/core/tests/test_umath.py
index 244ba59a5..cbad84bfc 100644
--- a/numpy/core/tests/test_umath.py
+++ b/numpy/core/tests/test_umath.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import platform
diff --git a/numpy/core/tests/test_umath_complex.py b/numpy/core/tests/test_umath_complex.py
index 34977e683..a1368bccd 100644
--- a/numpy/core/tests/test_umath_complex.py
+++ b/numpy/core/tests/test_umath_complex.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import platform
diff --git a/numpy/core/tests/test_unicode.py b/numpy/core/tests/test_unicode.py
index 8941f8e82..17a3c386b 100644
--- a/numpy/core/tests/test_unicode.py
+++ b/numpy/core/tests/test_unicode.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/ctypeslib.py b/numpy/ctypeslib.py
index e111fdb83..f2c5be523 100644
--- a/numpy/ctypeslib.py
+++ b/numpy/ctypeslib.py
@@ -49,7 +49,7 @@ Then, we're ready to call ``foo_func``:
>>> _lib.foo_func(out, len(out)) #doctest: +SKIP
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['load_library', 'ndpointer', 'test', 'ctypes_load_library',
'c_intp', 'as_ctypes', 'as_array']
diff --git a/numpy/distutils/__init__.py b/numpy/distutils/__init__.py
index 5b68de74f..2a99ef8ad 100644
--- a/numpy/distutils/__init__.py
+++ b/numpy/distutils/__init__.py
@@ -1,16 +1,16 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
if sys.version_info[0] < 3:
- from __version__ import version as __version__
+ from .__version__ import version as __version__
# Must import local ccompiler ASAP in order to get
# customized CCompiler.spawn effective.
- import ccompiler
- import unixccompiler
+ from . import ccompiler
+ from . import unixccompiler
- from info import __doc__
- from npy_pkg_config import *
+ from .info import __doc__
+ from .npy_pkg_config import *
try:
import __config__
diff --git a/numpy/distutils/__version__.py b/numpy/distutils/__version__.py
index c9af8cdb1..e1bc8d30f 100644
--- a/numpy/distutils/__version__.py
+++ b/numpy/distutils/__version__.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
major = 0
minor = 4
diff --git a/numpy/distutils/ccompiler.py b/numpy/distutils/ccompiler.py
index 4478154f8..247eead42 100644
--- a/numpy/distutils/ccompiler.py
+++ b/numpy/distutils/ccompiler.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import re
import os
@@ -165,7 +165,7 @@ def CCompiler_compile(self, sources, output_dir=None, macros=None,
return []
# FIXME:RELATIVE_IMPORT
if sys.version_info[0] < 3:
- from fcompiler import FCompiler
+ from .fcompiler import FCompiler
else:
from numpy.distutils.fcompiler import FCompiler
if isinstance(self, FCompiler):
diff --git a/numpy/distutils/command/__init__.py b/numpy/distutils/command/__init__.py
index 09fe78d22..4c4ddbf1f 100644
--- a/numpy/distutils/command/__init__.py
+++ b/numpy/distutils/command/__init__.py
@@ -4,7 +4,7 @@ Package containing implementation of all the standard Distutils
commands.
"""
-from __future__ import division
+from __future__ import division, absolute_import
def test_na_writable_attributes_deletion():
a = np.NA(2)
diff --git a/numpy/distutils/command/autodist.py b/numpy/distutils/command/autodist.py
index 2e31fe22a..3d71bb68e 100644
--- a/numpy/distutils/command/autodist.py
+++ b/numpy/distutils/command/autodist.py
@@ -1,7 +1,7 @@
"""This module implements additional tests ala autoconf which can be useful.
"""
-from __future__ import division
+from __future__ import division, absolute_import
# We put them here since they could be easily reused outside numpy.distutils
diff --git a/numpy/distutils/command/bdist_rpm.py b/numpy/distutils/command/bdist_rpm.py
index 302c6fdd2..004f67b9d 100644
--- a/numpy/distutils/command/bdist_rpm.py
+++ b/numpy/distutils/command/bdist_rpm.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/distutils/command/build.py b/numpy/distutils/command/build.py
index 239cafe1e..f0755373b 100644
--- a/numpy/distutils/command/build.py
+++ b/numpy/distutils/command/build.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/distutils/command/build_clib.py b/numpy/distutils/command/build_clib.py
index 99144d7b5..87005e05f 100644
--- a/numpy/distutils/command/build_clib.py
+++ b/numpy/distutils/command/build_clib.py
@@ -1,6 +1,6 @@
""" Modified version of build_clib that handles fortran source files.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
from glob import glob
diff --git a/numpy/distutils/command/build_ext.py b/numpy/distutils/command/build_ext.py
index 2245661a5..d1092a85b 100644
--- a/numpy/distutils/command/build_ext.py
+++ b/numpy/distutils/command/build_ext.py
@@ -1,7 +1,7 @@
""" Modified version of build_ext that handles fortran source files.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/distutils/command/build_py.py b/numpy/distutils/command/build_py.py
index e8c7b8f83..655e56b87 100644
--- a/numpy/distutils/command/build_py.py
+++ b/numpy/distutils/command/build_py.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.command.build_py import build_py as old_build_py
from numpy.distutils.misc_util import is_string
diff --git a/numpy/distutils/command/build_scripts.py b/numpy/distutils/command/build_scripts.py
index 1a3d26d58..17cc6aaed 100644
--- a/numpy/distutils/command/build_scripts.py
+++ b/numpy/distutils/command/build_scripts.py
@@ -1,7 +1,7 @@
""" Modified version of build_scripts that handles building scripts from functions.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.command.build_scripts import build_scripts as old_build_scripts
from numpy.distutils import log
diff --git a/numpy/distutils/command/build_src.py b/numpy/distutils/command/build_src.py
index cacfc472b..d9a9023b0 100644
--- a/numpy/distutils/command/build_src.py
+++ b/numpy/distutils/command/build_src.py
@@ -1,6 +1,6 @@
""" Build swig, f2py, pyrex sources.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import re
diff --git a/numpy/distutils/command/config.py b/numpy/distutils/command/config.py
index 3417fac44..055fd26a9 100644
--- a/numpy/distutils/command/config.py
+++ b/numpy/distutils/command/config.py
@@ -2,7 +2,7 @@
# try_compile call. try_run works but is untested for most of Fortran
# compilers (they must define linker_exe first).
# Pearu Peterson
-from __future__ import division
+from __future__ import division, absolute_import
import os, signal
import warnings
diff --git a/numpy/distutils/command/config_compiler.py b/numpy/distutils/command/config_compiler.py
index 6894b4552..3303d3469 100644
--- a/numpy/distutils/command/config_compiler.py
+++ b/numpy/distutils/command/config_compiler.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.core import Command
from numpy.distutils import log
diff --git a/numpy/distutils/command/develop.py b/numpy/distutils/command/develop.py
index 8328effcf..17661e0bd 100644
--- a/numpy/distutils/command/develop.py
+++ b/numpy/distutils/command/develop.py
@@ -3,7 +3,7 @@ generated files (from build_src or build_scripts) are properly converted to real
files with filenames.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from setuptools.command.develop import develop as old_develop
diff --git a/numpy/distutils/command/egg_info.py b/numpy/distutils/command/egg_info.py
index 33c64b0e4..3a908f602 100644
--- a/numpy/distutils/command/egg_info.py
+++ b/numpy/distutils/command/egg_info.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from setuptools.command.egg_info import egg_info as _egg_info
diff --git a/numpy/distutils/command/install.py b/numpy/distutils/command/install.py
index d9b84fc08..37523c8e4 100644
--- a/numpy/distutils/command/install.py
+++ b/numpy/distutils/command/install.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
if 'setuptools' in sys.modules:
diff --git a/numpy/distutils/command/install_clib.py b/numpy/distutils/command/install_clib.py
index 8845cedab..7753020e5 100644
--- a/numpy/distutils/command/install_clib.py
+++ b/numpy/distutils/command/install_clib.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
from distutils.core import Command
diff --git a/numpy/distutils/command/install_data.py b/numpy/distutils/command/install_data.py
index d99d656db..afdc98013 100644
--- a/numpy/distutils/command/install_data.py
+++ b/numpy/distutils/command/install_data.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
have_setuptools = ('setuptools' in sys.modules)
diff --git a/numpy/distutils/command/install_headers.py b/numpy/distutils/command/install_headers.py
index 548c3c643..c6c01e35b 100644
--- a/numpy/distutils/command/install_headers.py
+++ b/numpy/distutils/command/install_headers.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
from distutils.command.install_headers import install_headers as old_install_headers
diff --git a/numpy/distutils/command/sdist.py b/numpy/distutils/command/sdist.py
index 3e07f7a01..a4e2158ce 100644
--- a/numpy/distutils/command/sdist.py
+++ b/numpy/distutils/command/sdist.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
if 'setuptools' in sys.modules:
diff --git a/numpy/distutils/compat.py b/numpy/distutils/compat.py
index 55b9627d5..bd4184dcd 100644
--- a/numpy/distutils/compat.py
+++ b/numpy/distutils/compat.py
@@ -2,7 +2,7 @@
numpy.distutils
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/distutils/conv_template.py b/numpy/distutils/conv_template.py
index 6b969cef3..77e2eb5e1 100644
--- a/numpy/distutils/conv_template.py
+++ b/numpy/distutils/conv_template.py
@@ -78,7 +78,7 @@ Example:
3, 3, jim
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['process_str', 'process_file']
diff --git a/numpy/distutils/core.py b/numpy/distutils/core.py
index f450b1564..711d5a223 100644
--- a/numpy/distutils/core.py
+++ b/numpy/distutils/core.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from distutils.core import *
diff --git a/numpy/distutils/cpuinfo.py b/numpy/distutils/cpuinfo.py
index 86a18993a..1e2d9379c 100644
--- a/numpy/distutils/cpuinfo.py
+++ b/numpy/distutils/cpuinfo.py
@@ -12,7 +12,7 @@ NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['cpu']
diff --git a/numpy/distutils/environment.py b/numpy/distutils/environment.py
index 015815cbe..1360d82fe 100644
--- a/numpy/distutils/environment.py
+++ b/numpy/distutils/environment.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
from distutils.dist import Distribution
diff --git a/numpy/distutils/exec_command.py b/numpy/distutils/exec_command.py
index a469fc5e0..923486158 100644
--- a/numpy/distutils/exec_command.py
+++ b/numpy/distutils/exec_command.py
@@ -44,7 +44,7 @@ Known bugs:
- Tests, that send messages to stderr, fail when executed from MSYS prompt
because the messages are lost at some point.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['exec_command','find_executable']
diff --git a/numpy/distutils/extension.py b/numpy/distutils/extension.py
index 95213644f..f58b27780 100644
--- a/numpy/distutils/extension.py
+++ b/numpy/distutils/extension.py
@@ -6,7 +6,7 @@ modules in setup scripts.
Overridden to support f2py.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__revision__ = "$Id: extension.py,v 1.1 2005/04/09 19:29:34 pearu Exp $"
diff --git a/numpy/distutils/fcompiler/__init__.py b/numpy/distutils/fcompiler/__init__.py
index 510a38a58..c0b587fed 100644
--- a/numpy/distutils/fcompiler/__init__.py
+++ b/numpy/distutils/fcompiler/__init__.py
@@ -13,7 +13,7 @@ should be a list.
But note that FCompiler.executables is actually a dictionary of commands.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['FCompiler','new_fcompiler','show_fcompilers',
'dummy_fortran_file']
diff --git a/numpy/distutils/fcompiler/absoft.py b/numpy/distutils/fcompiler/absoft.py
index 7c06d70a3..2fb579e35 100644
--- a/numpy/distutils/fcompiler/absoft.py
+++ b/numpy/distutils/fcompiler/absoft.py
@@ -5,7 +5,7 @@
# Notes:
# - when using -g77 then use -DUNDERSCORE_G77 to compile f2py
# generated extension modules (works for f2py v2.45.241_1936 and up)
-from __future__ import division
+from __future__ import division, absolute_import
import os
diff --git a/numpy/distutils/fcompiler/compaq.py b/numpy/distutils/fcompiler/compaq.py
index d67c1f24e..16f3a0e54 100644
--- a/numpy/distutils/fcompiler/compaq.py
+++ b/numpy/distutils/fcompiler/compaq.py
@@ -1,6 +1,6 @@
#http://www.compaq.com/fortran/docs/
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/distutils/fcompiler/g95.py b/numpy/distutils/fcompiler/g95.py
index 478f48f3e..41b781010 100644
--- a/numpy/distutils/fcompiler/g95.py
+++ b/numpy/distutils/fcompiler/g95.py
@@ -1,5 +1,5 @@
# http://g95.sourceforge.net/
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/gnu.py b/numpy/distutils/fcompiler/gnu.py
index c26e81fcd..80dbf48c6 100644
--- a/numpy/distutils/fcompiler/gnu.py
+++ b/numpy/distutils/fcompiler/gnu.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import re
import os
diff --git a/numpy/distutils/fcompiler/hpux.py b/numpy/distutils/fcompiler/hpux.py
index 44bfbe1c2..250159107 100644
--- a/numpy/distutils/fcompiler/hpux.py
+++ b/numpy/distutils/fcompiler/hpux.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/ibm.py b/numpy/distutils/fcompiler/ibm.py
index b3126b558..09001c500 100644
--- a/numpy/distutils/fcompiler/ibm.py
+++ b/numpy/distutils/fcompiler/ibm.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import re
diff --git a/numpy/distutils/fcompiler/intel.py b/numpy/distutils/fcompiler/intel.py
index 53ea7af05..b975d1f1b 100644
--- a/numpy/distutils/fcompiler/intel.py
+++ b/numpy/distutils/fcompiler/intel.py
@@ -1,5 +1,5 @@
# http://developer.intel.com/software/products/compilers/flin/
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/distutils/fcompiler/lahey.py b/numpy/distutils/fcompiler/lahey.py
index 06c4c6f56..208f09a27 100644
--- a/numpy/distutils/fcompiler/lahey.py
+++ b/numpy/distutils/fcompiler/lahey.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
diff --git a/numpy/distutils/fcompiler/mips.py b/numpy/distutils/fcompiler/mips.py
index 6cd2fdfac..433f053e3 100644
--- a/numpy/distutils/fcompiler/mips.py
+++ b/numpy/distutils/fcompiler/mips.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.cpuinfo import cpu
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/nag.py b/numpy/distutils/fcompiler/nag.py
index 11253c4be..8cbd15f60 100644
--- a/numpy/distutils/fcompiler/nag.py
+++ b/numpy/distutils/fcompiler/nag.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/none.py b/numpy/distutils/fcompiler/none.py
index e99c2ab35..ee7e6dee9 100644
--- a/numpy/distutils/fcompiler/none.py
+++ b/numpy/distutils/fcompiler/none.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/pathf95.py b/numpy/distutils/fcompiler/pathf95.py
index c9bd58c62..3b3c31e00 100644
--- a/numpy/distutils/fcompiler/pathf95.py
+++ b/numpy/distutils/fcompiler/pathf95.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/pg.py b/numpy/distutils/fcompiler/pg.py
index e0f5e0d44..959f86d68 100644
--- a/numpy/distutils/fcompiler/pg.py
+++ b/numpy/distutils/fcompiler/pg.py
@@ -1,5 +1,5 @@
# http://www.pgroup.com
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.fcompiler import FCompiler
from sys import platform
diff --git a/numpy/distutils/fcompiler/sun.py b/numpy/distutils/fcompiler/sun.py
index 7deeac29a..bff37a543 100644
--- a/numpy/distutils/fcompiler/sun.py
+++ b/numpy/distutils/fcompiler/sun.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.distutils.ccompiler import simple_version_match
from numpy.distutils.fcompiler import FCompiler
diff --git a/numpy/distutils/fcompiler/vast.py b/numpy/distutils/fcompiler/vast.py
index bddc1be91..2d6d164a1 100644
--- a/numpy/distutils/fcompiler/vast.py
+++ b/numpy/distutils/fcompiler/vast.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
diff --git a/numpy/distutils/from_template.py b/numpy/distutils/from_template.py
index 99f36e371..dc933dd6a 100644
--- a/numpy/distutils/from_template.py
+++ b/numpy/distutils/from_template.py
@@ -45,7 +45,7 @@ process_file(filename)
<ctypereal=float,double,\\0,\\1>
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['process_str','process_file']
diff --git a/numpy/distutils/info.py b/numpy/distutils/info.py
index 4d8b847bd..de3dc4f48 100644
--- a/numpy/distutils/info.py
+++ b/numpy/distutils/info.py
@@ -1,6 +1,6 @@
"""
Enhanced distutils with Fortran compilers support and more.
"""
-from __future__ import division
+from __future__ import division, absolute_import
postpone_import = True
diff --git a/numpy/distutils/intelccompiler.py b/numpy/distutils/intelccompiler.py
index 8c3af0957..58208647d 100644
--- a/numpy/distutils/intelccompiler.py
+++ b/numpy/distutils/intelccompiler.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.unixccompiler import UnixCCompiler
from numpy.distutils.exec_command import find_executable
diff --git a/numpy/distutils/lib2def.py b/numpy/distutils/lib2def.py
index 0e98e17ef..b2c4f1f28 100644
--- a/numpy/distutils/lib2def.py
+++ b/numpy/distutils/lib2def.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import re
import sys
diff --git a/numpy/distutils/line_endings.py b/numpy/distutils/line_endings.py
index f18850716..93f5421c0 100644
--- a/numpy/distutils/line_endings.py
+++ b/numpy/distutils/line_endings.py
@@ -1,7 +1,7 @@
""" Functions for converting from DOS to UNIX line endings
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys, re, os
diff --git a/numpy/distutils/log.py b/numpy/distutils/log.py
index a3f4cb9ff..41c9a56da 100644
--- a/numpy/distutils/log.py
+++ b/numpy/distutils/log.py
@@ -1,5 +1,5 @@
# Colored log, requires Python 2.3 or up.
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from distutils.log import *
@@ -7,7 +7,7 @@ from distutils.log import Log as old_Log
from distutils.log import _global_log
if sys.version_info[0] < 3:
- from misc_util import red_text, default_text, cyan_text, green_text, is_sequence, is_string
+ from .misc_util import red_text, default_text, cyan_text, green_text, is_sequence, is_string
else:
from numpy.distutils.misc_util import red_text, default_text, cyan_text, green_text, is_sequence, is_string
diff --git a/numpy/distutils/mingw32ccompiler.py b/numpy/distutils/mingw32ccompiler.py
index 10e3608ef..0505309fa 100644
--- a/numpy/distutils/mingw32ccompiler.py
+++ b/numpy/distutils/mingw32ccompiler.py
@@ -7,7 +7,7 @@ Support code for building Python extensions on Windows.
# 3. Force windows to use g77
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import subprocess
@@ -19,7 +19,7 @@ import re
import numpy.distutils.ccompiler
if sys.version_info[0] < 3:
- import log
+ from . import log
else:
from numpy.distutils import log
# NT stuff
diff --git a/numpy/distutils/misc_util.py b/numpy/distutils/misc_util.py
index 20cacb759..f526557d6 100644
--- a/numpy/distutils/misc_util.py
+++ b/numpy/distutils/misc_util.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import re
@@ -1990,7 +1990,7 @@ class Configuration(object):
Return information (from system_info.get_info) for all of the names in
the argument list in a single dictionary.
"""
- from system_info import get_info, dict_append
+ from .system_info import get_info, dict_append
info_dict = {}
for a in names:
dict_append(info_dict,**get_info(a))
diff --git a/numpy/distutils/npy_pkg_config.py b/numpy/distutils/npy_pkg_config.py
index 6f3072885..2dacbbc70 100644
--- a/numpy/distutils/npy_pkg_config.py
+++ b/numpy/distutils/npy_pkg_config.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
if sys.version_info[0] < 3:
diff --git a/numpy/distutils/numpy_distribution.py b/numpy/distutils/numpy_distribution.py
index 276f81398..353e18a51 100644
--- a/numpy/distutils/numpy_distribution.py
+++ b/numpy/distutils/numpy_distribution.py
@@ -1,5 +1,5 @@
# XXX: Handle setuptools ?
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.core import Distribution
diff --git a/numpy/distutils/pathccompiler.py b/numpy/distutils/pathccompiler.py
index 2e5b76a53..e847e7d0a 100644
--- a/numpy/distutils/pathccompiler.py
+++ b/numpy/distutils/pathccompiler.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from distutils.unixccompiler import UnixCCompiler
diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
index 869bd6bd1..68ad926e3 100644
--- a/numpy/distutils/system_info.py
+++ b/numpy/distutils/system_info.py
@@ -110,7 +110,7 @@ this distribution for specifics.
NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import os
@@ -929,7 +929,7 @@ class mkl_info(system_info):
if mklroot is None:
system_info.__init__(self)
else:
- from cpuinfo import cpu
+ from .cpuinfo import cpu
l = 'mkl' # use shared library
if cpu.is_Itanium():
plt = '64'
diff --git a/numpy/distutils/tests/f2py_ext/__init__.py b/numpy/distutils/tests/f2py_ext/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/distutils/tests/f2py_ext/__init__.py
+++ b/numpy/distutils/tests/f2py_ext/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/distutils/tests/f2py_ext/tests/test_fib2.py b/numpy/distutils/tests/f2py_ext/tests/test_fib2.py
index 696ee41d8..149256d72 100644
--- a/numpy/distutils/tests/f2py_ext/tests/test_fib2.py
+++ b/numpy/distutils/tests/f2py_ext/tests/test_fib2.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/f2py_f90_ext/__init__.py b/numpy/distutils/tests/f2py_f90_ext/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/distutils/tests/f2py_f90_ext/__init__.py
+++ b/numpy/distutils/tests/f2py_f90_ext/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py b/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py
index 3fa7b3730..d68981c04 100644
--- a/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py
+++ b/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/gen_ext/__init__.py b/numpy/distutils/tests/gen_ext/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/distutils/tests/gen_ext/__init__.py
+++ b/numpy/distutils/tests/gen_ext/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/distutils/tests/gen_ext/tests/test_fib3.py b/numpy/distutils/tests/gen_ext/tests/test_fib3.py
index 3fa72036e..0f194255d 100644
--- a/numpy/distutils/tests/gen_ext/tests/test_fib3.py
+++ b/numpy/distutils/tests/gen_ext/tests/test_fib3.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/pyrex_ext/__init__.py b/numpy/distutils/tests/pyrex_ext/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/distutils/tests/pyrex_ext/__init__.py
+++ b/numpy/distutils/tests/pyrex_ext/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/distutils/tests/pyrex_ext/tests/test_primes.py b/numpy/distutils/tests/pyrex_ext/tests/test_primes.py
index 96f73c426..a2bb091ea 100644
--- a/numpy/distutils/tests/pyrex_ext/tests/test_primes.py
+++ b/numpy/distutils/tests/pyrex_ext/tests/test_primes.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/swig_ext/__init__.py b/numpy/distutils/tests/swig_ext/__init__.py
index b06eaf1a4..52119d5cd 100644
--- a/numpy/distutils/tests/swig_ext/__init__.py
+++ b/numpy/distutils/tests/swig_ext/__init__.py
@@ -1 +1 @@
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/distutils/tests/swig_ext/tests/test_example.py b/numpy/distutils/tests/swig_ext/tests/test_example.py
index 5a4765fa7..419ca53d8 100644
--- a/numpy/distutils/tests/swig_ext/tests/test_example.py
+++ b/numpy/distutils/tests/swig_ext/tests/test_example.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/swig_ext/tests/test_example2.py b/numpy/distutils/tests/swig_ext/tests/test_example2.py
index c3c4727c0..f876bad16 100644
--- a/numpy/distutils/tests/swig_ext/tests/test_example2.py
+++ b/numpy/distutils/tests/swig_ext/tests/test_example2.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
from numpy.testing import *
diff --git a/numpy/distutils/tests/test_fcompiler_gnu.py b/numpy/distutils/tests/test_fcompiler_gnu.py
index d3b38db23..09a7275f8 100644
--- a/numpy/distutils/tests/test_fcompiler_gnu.py
+++ b/numpy/distutils/tests/test_fcompiler_gnu.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/distutils/tests/test_fcompiler_intel.py b/numpy/distutils/tests/test_fcompiler_intel.py
index 4ebf1a0c0..8e3ba5fd3 100644
--- a/numpy/distutils/tests/test_fcompiler_intel.py
+++ b/numpy/distutils/tests/test_fcompiler_intel.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/distutils/tests/test_misc_util.py b/numpy/distutils/tests/test_misc_util.py
index 57fde8899..b19c09f81 100644
--- a/numpy/distutils/tests/test_misc_util.py
+++ b/numpy/distutils/tests/test_misc_util.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.distutils.misc_util import appendpath, minrelpath, gpaths, rel_path
diff --git a/numpy/distutils/tests/test_npy_pkg_config.py b/numpy/distutils/tests/test_npy_pkg_config.py
index d3568eb6b..e25f47d76 100644
--- a/numpy/distutils/tests/test_npy_pkg_config.py
+++ b/numpy/distutils/tests/test_npy_pkg_config.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
from tempfile import mkstemp
diff --git a/numpy/distutils/unixccompiler.py b/numpy/distutils/unixccompiler.py
index 837ce5092..2825a899b 100644
--- a/numpy/distutils/unixccompiler.py
+++ b/numpy/distutils/unixccompiler.py
@@ -2,7 +2,7 @@
unixccompiler - can handle very long argument lists for ar.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
@@ -12,7 +12,7 @@ from numpy.distutils.ccompiler import replace_method
from numpy.distutils.compat import get_exception
if sys.version_info[0] < 3:
- import log
+ from . import log
else:
from numpy.distutils import log
diff --git a/numpy/doc/__init__.py b/numpy/doc/__init__.py
index 19b3d87db..028d0c343 100644
--- a/numpy/doc/__init__.py
+++ b/numpy/doc/__init__.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
diff --git a/numpy/doc/basics.py b/numpy/doc/basics.py
index d50388282..b56d61380 100644
--- a/numpy/doc/basics.py
+++ b/numpy/doc/basics.py
@@ -136,5 +136,5 @@ value is inside an array or not. NumPy scalars also have many of the same
methods arrays do.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/broadcasting.py b/numpy/doc/broadcasting.py
index be6cde0bd..bbbd5bdcc 100644
--- a/numpy/doc/broadcasting.py
+++ b/numpy/doc/broadcasting.py
@@ -175,5 +175,5 @@ See `this article <http://www.scipy.org/EricsBroadcastingDoc>`_
for illustrations of broadcasting concepts.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/byteswapping.py b/numpy/doc/byteswapping.py
index 395c858ed..df767f1bc 100644
--- a/numpy/doc/byteswapping.py
+++ b/numpy/doc/byteswapping.py
@@ -135,5 +135,5 @@ the previous operations:
False
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/constants.py b/numpy/doc/constants.py
index 10f41a7ba..5fe93fa2b 100644
--- a/numpy/doc/constants.py
+++ b/numpy/doc/constants.py
@@ -10,7 +10,7 @@ Numpy includes several constants:
#
# Note: the docstring is autogenerated.
#
-from __future__ import division
+from __future__ import division, absolute_import
import textwrap, re
diff --git a/numpy/doc/creation.py b/numpy/doc/creation.py
index f14b163e6..045b476e3 100644
--- a/numpy/doc/creation.py
+++ b/numpy/doc/creation.py
@@ -141,5 +141,5 @@ random values, and some utility functions to generate special matrices (e.g.
diagonal).
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/glossary.py b/numpy/doc/glossary.py
index 35adfc820..02b291b64 100644
--- a/numpy/doc/glossary.py
+++ b/numpy/doc/glossary.py
@@ -415,5 +415,5 @@ Glossary
and f2py (which wraps Fortran).
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/howtofind.py b/numpy/doc/howtofind.py
index 8e6793c48..e456a7422 100644
--- a/numpy/doc/howtofind.py
+++ b/numpy/doc/howtofind.py
@@ -7,5 +7,5 @@ How to Find Stuff
How to find things in NumPy.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/indexing.py b/numpy/doc/indexing.py
index 84f300dcd..821240efd 100644
--- a/numpy/doc/indexing.py
+++ b/numpy/doc/indexing.py
@@ -405,5 +405,5 @@ converted to an array as a list would be. As an example: ::
40
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/internals.py b/numpy/doc/internals.py
index d7b6d3c93..ed2991a32 100644
--- a/numpy/doc/internals.py
+++ b/numpy/doc/internals.py
@@ -160,5 +160,5 @@ when accessing elements of an array. Granted, it goes against the grain, but
it is more in line with Python semantics and the natural order of the data.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/io.py b/numpy/doc/io.py
index 4ee4c7c2f..a212b9697 100644
--- a/numpy/doc/io.py
+++ b/numpy/doc/io.py
@@ -7,5 +7,5 @@ Array I/O
Placeholder for array I/O documentation.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/jargon.py b/numpy/doc/jargon.py
index 3bf4d5070..684674816 100644
--- a/numpy/doc/jargon.py
+++ b/numpy/doc/jargon.py
@@ -7,5 +7,5 @@ Jargon
Placeholder for computer science, engineering and other jargon.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/methods_vs_functions.py b/numpy/doc/methods_vs_functions.py
index 902ec54d0..7090190c0 100644
--- a/numpy/doc/methods_vs_functions.py
+++ b/numpy/doc/methods_vs_functions.py
@@ -7,5 +7,5 @@ Methods vs. Functions
Placeholder for Methods vs. Functions documentation.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/misc.py b/numpy/doc/misc.py
index 9195ebb5a..a16698a20 100644
--- a/numpy/doc/misc.py
+++ b/numpy/doc/misc.py
@@ -226,5 +226,5 @@ Interfacing to C++:
5) SIP (used mainly in PyQT)
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/performance.py b/numpy/doc/performance.py
index 711dd3153..e2ca2c53e 100644
--- a/numpy/doc/performance.py
+++ b/numpy/doc/performance.py
@@ -7,5 +7,5 @@ Performance
Placeholder for Improving Performance documentation.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/structured_arrays.py b/numpy/doc/structured_arrays.py
index eeb8a949f..cd308c1cf 100644
--- a/numpy/doc/structured_arrays.py
+++ b/numpy/doc/structured_arrays.py
@@ -221,5 +221,5 @@ You can find some more information on recarrays and structured arrays
<http://www.scipy.org/Cookbook/Recarray>`_.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/subclassing.py b/numpy/doc/subclassing.py
index 19bdd425f..8734a0567 100644
--- a/numpy/doc/subclassing.py
+++ b/numpy/doc/subclassing.py
@@ -557,5 +557,5 @@ how this can work, have a look at the ``memmap`` class in
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/doc/ufuncs.py b/numpy/doc/ufuncs.py
index d566ee98a..a1de5681f 100644
--- a/numpy/doc/ufuncs.py
+++ b/numpy/doc/ufuncs.py
@@ -135,5 +135,5 @@ results in an error. There are two alternatives:
a convenient way to apply these operators.
"""
-from __future__ import division
+from __future__ import division, absolute_import
diff --git a/numpy/dual.py b/numpy/dual.py
index 15b175b92..481e42d0c 100644
--- a/numpy/dual.py
+++ b/numpy/dual.py
@@ -10,7 +10,7 @@ Numpy.
.. _Scipy : http://www.scipy.org
"""
-from __future__ import division
+from __future__ import division, absolute_import
# This module should be used for functions both in numpy and scipy if
# you want to use the numpy version if available but the scipy version
diff --git a/numpy/f2py/__init__.py b/numpy/f2py/__init__.py
index 12add2153..951544588 100644
--- a/numpy/f2py/__init__.py
+++ b/numpy/f2py/__init__.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['run_main','compile','f2py_testing']
@@ -7,11 +7,11 @@ import os
import sys
import commands
-import f2py2e
-import f2py_testing
-import diagnose
+from . import f2py2e
+from . import f2py_testing
+from . import diagnose
-from info import __doc__
+from .info import __doc__
run_main = f2py2e.run_main
main = f2py2e.main
diff --git a/numpy/f2py/__version__.py b/numpy/f2py/__version__.py
index 2f842c89d..44791aa37 100644
--- a/numpy/f2py/__version__.py
+++ b/numpy/f2py/__version__.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
major = 2
diff --git a/numpy/f2py/auxfuncs.py b/numpy/f2py/auxfuncs.py
index 0f68953ad..5b13747f1 100644
--- a/numpy/f2py/auxfuncs.py
+++ b/numpy/f2py/auxfuncs.py
@@ -14,17 +14,17 @@ $Date: 2005/07/24 19:01:55 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.65 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
import pprint
import sys
import types
-import cfuncs
+from . import cfuncs
errmess=sys.stderr.write
@@ -522,7 +522,7 @@ def getcallprotoargument(rout,cb_map={}):
if hascallstatement(rout):
outmess('warning: callstatement is defined without callprotoargument\n')
return
- from capi_maps import getctype
+ from .capi_maps import getctype
arg_types,arg_types2 = [],[]
if l_and(isstringfunction,l_not(isfunction_wrap))(rout):
arg_types.extend(['char*','size_t'])
diff --git a/numpy/f2py/capi_maps.py b/numpy/f2py/capi_maps.py
index d82b2c3f5..117ea2233 100644
--- a/numpy/f2py/capi_maps.py
+++ b/numpy/f2py/capi_maps.py
@@ -11,20 +11,20 @@ $Date: 2005/05/06 10:57:33 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.60 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
import copy
import re
import os
import sys
-from auxfuncs import *
-from crackfortran import markoutercomma
-import cb_rules
+from .auxfuncs import *
+from .crackfortran import markoutercomma
+from . import cb_rules
# Numarray and Numeric users should set this False
using_newcore = True
diff --git a/numpy/f2py/cb_rules.py b/numpy/f2py/cb_rules.py
index 05404add2..bc565a904 100644
--- a/numpy/f2py/cb_rules.py
+++ b/numpy/f2py/cb_rules.py
@@ -13,11 +13,11 @@ $Date: 2005/07/20 11:27:58 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.53 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
@@ -28,8 +28,8 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
-import cfuncs
+from .auxfuncs import *
+from . import cfuncs
################## Rules for callback function ##############
@@ -416,7 +416,7 @@ def buildcallbacks(m):
def buildcallback(rout,um):
global cb_map
- import capi_maps
+ from . import capi_maps
outmess('\tConstructing call-back function "cb_%s_in_%s"\n'%(rout['name'],um))
args,depargs=getargs(rout)
diff --git a/numpy/f2py/cfuncs.py b/numpy/f2py/cfuncs.py
index ccadd94e3..a0110c530 100644
--- a/numpy/f2py/cfuncs.py
+++ b/numpy/f2py/cfuncs.py
@@ -14,11 +14,11 @@ $Date: 2005/05/06 11:42:34 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.75 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
import types
@@ -1117,7 +1117,7 @@ capi_fail:
"""
def buildcfuncs():
- from capi_maps import c2capi_map
+ from .capi_maps import c2capi_map
for k in c2capi_map.keys():
m='pyarr_from_p_%s1'%k
cppmacros[m]='#define %s(v) (PyArray_SimpleNewFromData(0,NULL,%s,(char *)v))'%(m,c2capi_map[k])
diff --git a/numpy/f2py/common_rules.py b/numpy/f2py/common_rules.py
index db7a6ee6d..aec0ef1b1 100644
--- a/numpy/f2py/common_rules.py
+++ b/numpy/f2py/common_rules.py
@@ -13,11 +13,11 @@ $Date: 2005/05/06 10:57:33 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.19 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
import pprint
@@ -26,10 +26,10 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
-import capi_maps
-import func2subr
-from crackfortran import rmbadname
+from .auxfuncs import *
+from . import capi_maps
+from . import func2subr
+from .crackfortran import rmbadname
##############
def findcommonblocks(block,top=1):
diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py
index 95ebcaee4..2a7f137d2 100755
--- a/numpy/f2py/crackfortran.py
+++ b/numpy/f2py/crackfortran.py
@@ -138,11 +138,11 @@ TODO:
The above may be solved by creating appropriate preprocessor program, for example.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.177 $"[10:-1]
import platform
-import __version__
+from . import __version__
f2py_version = __version__.version
#
@@ -153,7 +153,7 @@ import re
import pprint
import os
import copy
-from auxfuncs import *
+from .auxfuncs import *
# Global flags:
strictf77=1 # Ignore `!' comments unless line[0]=='!'
diff --git a/numpy/f2py/diagnose.py b/numpy/f2py/diagnose.py
index e7759b6dd..59ef5205b 100644
--- a/numpy/f2py/diagnose.py
+++ b/numpy/f2py/diagnose.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/f2py/doc/collectinput.py b/numpy/f2py/doc/collectinput.py
index 5e98c8350..078da8eeb 100755
--- a/numpy/f2py/doc/collectinput.py
+++ b/numpy/f2py/doc/collectinput.py
@@ -19,7 +19,7 @@ Usage:
collectinput # in and out are stdin and stdout
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "0.0"
diff --git a/numpy/f2py/docs/pytest.py b/numpy/f2py/docs/pytest.py
index b49dc764a..40d6b0c5e 100644
--- a/numpy/f2py/docs/pytest.py
+++ b/numpy/f2py/docs/pytest.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
#File: pytest.py
import Numeric
diff --git a/numpy/f2py/docs/usersguide/setup_example.py b/numpy/f2py/docs/usersguide/setup_example.py
index 911dc3324..e80bc493b 100644
--- a/numpy/f2py/docs/usersguide/setup_example.py
+++ b/numpy/f2py/docs/usersguide/setup_example.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
# File: setup_example.py
diff --git a/numpy/f2py/f2py2e.py b/numpy/f2py/f2py2e.py
index 235fcb75a..aee8afba0 100755
--- a/numpy/f2py/f2py2e.py
+++ b/numpy/f2py/f2py2e.py
@@ -14,9 +14,9 @@ $Date: 2005/05/06 08:31:19 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
-import __version__
+from . import __version__
f2py_version = __version__.version
import sys
@@ -28,12 +28,12 @@ errmess=sys.stderr.write
#outmess=sys.stdout.write
show=pprint.pprint
-import crackfortran
-import rules
-import cb_rules
-import auxfuncs
-import cfuncs
-import f90mod_rules
+from . import crackfortran
+from . import rules
+from . import cb_rules
+from . import auxfuncs
+from . import cfuncs
+from . import f90mod_rules
outmess = auxfuncs.outmess
diff --git a/numpy/f2py/f2py_testing.py b/numpy/f2py/f2py_testing.py
index 73eb2caed..b0f396ad4 100644
--- a/numpy/f2py/f2py_testing.py
+++ b/numpy/f2py/f2py_testing.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import re
diff --git a/numpy/f2py/f90mod_rules.py b/numpy/f2py/f90mod_rules.py
index 3a80eb8f4..bc571371b 100644
--- a/numpy/f2py/f90mod_rules.py
+++ b/numpy/f2py/f90mod_rules.py
@@ -13,7 +13,7 @@ $Date: 2005/02/03 19:30:23 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.27 $"[10:-1]
@@ -25,11 +25,11 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
+from .auxfuncs import *
import numpy as np
-import capi_maps
-import func2subr
-from crackfortran import undo_rmbadname, undo_rmbadname1
+from . import capi_maps
+from . import func2subr
+from .crackfortran import undo_rmbadname, undo_rmbadname1
options={}
@@ -84,7 +84,7 @@ fgetdims2_sa="""\
def buildhooks(pymod):
global fgetdims1,fgetdims2
- import rules
+ from . import rules
ret = {'f90modhooks':[],'initf90modhooks':[],'body':[],
'need':['F_FUNC','arrayobject.h'],
'separatorsfor':{'includes0':'\n','includes':'\n'},
diff --git a/numpy/f2py/func2subr.py b/numpy/f2py/func2subr.py
index eb72c76c9..7597e43ae 100644
--- a/numpy/f2py/func2subr.py
+++ b/numpy/f2py/func2subr.py
@@ -13,7 +13,7 @@ $Date: 2004/11/26 11:13:06 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.16 $"[10:-1]
@@ -26,7 +26,7 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
+from .auxfuncs import *
def var2fixfortran(vars,a,fa=None,f90mode=None):
if fa is None:
fa = a
diff --git a/numpy/f2py/info.py b/numpy/f2py/info.py
index b976fb2ea..07a750588 100644
--- a/numpy/f2py/info.py
+++ b/numpy/f2py/info.py
@@ -1,6 +1,6 @@
"""Fortran to Python Interface Generator.
"""
-from __future__ import division
+from __future__ import division, absolute_import
postpone_import = True
diff --git a/numpy/f2py/rules.py b/numpy/f2py/rules.py
index b04f54e16..38c43b4ae 100644
--- a/numpy/f2py/rules.py
+++ b/numpy/f2py/rules.py
@@ -50,11 +50,11 @@ $Date: 2005/08/30 08:58:42 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.129 $"[10:-1]
-import __version__
+from . import __version__
f2py_version = __version__.version
import pprint
@@ -66,14 +66,14 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
-import capi_maps
-from capi_maps import *
-import cfuncs
-import common_rules
-import use_rules
-import f90mod_rules
-import func2subr
+from .auxfuncs import *
+from . import capi_maps
+from .capi_maps import *
+from . import cfuncs
+from . import common_rules
+from . import use_rules
+from . import f90mod_rules
+from . import func2subr
options={}
sepdict={}
diff --git a/numpy/f2py/tests/test_array_from_pyobj.py b/numpy/f2py/tests/test_array_from_pyobj.py
index ff8c16cd1..586833e68 100644
--- a/numpy/f2py/tests/test_array_from_pyobj.py
+++ b/numpy/f2py/tests/test_array_from_pyobj.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import unittest
import os
diff --git a/numpy/f2py/tests/test_assumed_shape.py b/numpy/f2py/tests/test_assumed_shape.py
index 728c034ec..19a557530 100644
--- a/numpy/f2py/tests/test_assumed_shape.py
+++ b/numpy/f2py/tests/test_assumed_shape.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import math
diff --git a/numpy/f2py/tests/test_callback.py b/numpy/f2py/tests/test_callback.py
index f903fbcb4..51b1bb1b4 100644
--- a/numpy/f2py/tests/test_callback.py
+++ b/numpy/f2py/tests/test_callback.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_kind.py b/numpy/f2py/tests/test_kind.py
index 56a747096..d24099b05 100644
--- a/numpy/f2py/tests/test_kind.py
+++ b/numpy/f2py/tests/test_kind.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import math
diff --git a/numpy/f2py/tests/test_mixed.py b/numpy/f2py/tests/test_mixed.py
index dc29d2b5d..d62098ab4 100644
--- a/numpy/f2py/tests/test_mixed.py
+++ b/numpy/f2py/tests/test_mixed.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import math
diff --git a/numpy/f2py/tests/test_return_character.py b/numpy/f2py/tests/test_return_character.py
index fd8355ac3..5a68bec72 100644
--- a/numpy/f2py/tests/test_return_character.py
+++ b/numpy/f2py/tests/test_return_character.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_return_complex.py b/numpy/f2py/tests/test_return_complex.py
index 4cdc03993..00ba1cfe6 100644
--- a/numpy/f2py/tests/test_return_complex.py
+++ b/numpy/f2py/tests/test_return_complex.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_return_integer.py b/numpy/f2py/tests/test_return_integer.py
index a1af6b932..6c55cc1b9 100644
--- a/numpy/f2py/tests/test_return_integer.py
+++ b/numpy/f2py/tests/test_return_integer.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_return_logical.py b/numpy/f2py/tests/test_return_logical.py
index 1c8dce532..af35c50d1 100644
--- a/numpy/f2py/tests/test_return_logical.py
+++ b/numpy/f2py/tests/test_return_logical.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_return_real.py b/numpy/f2py/tests/test_return_real.py
index 943a4972d..0ea4373fb 100644
--- a/numpy/f2py/tests/test_return_real.py
+++ b/numpy/f2py/tests/test_return_real.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy import array
diff --git a/numpy/f2py/tests/test_size.py b/numpy/f2py/tests/test_size.py
index 72443b4f6..1a41ce972 100644
--- a/numpy/f2py/tests/test_size.py
+++ b/numpy/f2py/tests/test_size.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import math
diff --git a/numpy/f2py/tests/util.py b/numpy/f2py/tests/util.py
index 215df9553..0da4bc310 100644
--- a/numpy/f2py/tests/util.py
+++ b/numpy/f2py/tests/util.py
@@ -5,7 +5,7 @@ Utility functions for
- detecting if compilers are present
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/f2py/use_rules.py b/numpy/f2py/use_rules.py
index e47dfc6e5..c027baef8 100644
--- a/numpy/f2py/use_rules.py
+++ b/numpy/f2py/use_rules.py
@@ -15,7 +15,7 @@ $Date: 2000/09/10 12:35:43 $
Pearu Peterson
"""
-from __future__ import division
+from __future__ import division, absolute_import
__version__ = "$Revision: 1.3 $"[10:-1]
@@ -27,7 +27,7 @@ errmess=sys.stderr.write
outmess=sys.stdout.write
show=pprint.pprint
-from auxfuncs import *
+from .auxfuncs import *
##############
usemodule_rules={
diff --git a/numpy/fft/__init__.py b/numpy/fft/__init__.py
index 6cfa535fb..001ac59b0 100644
--- a/numpy/fft/__init__.py
+++ b/numpy/fft/__init__.py
@@ -1,10 +1,10 @@
-from __future__ import division
+from __future__ import division, absolute_import
# To get sub-modules
-from info import __doc__
+from .info import __doc__
-from fftpack import *
-from helper import *
+from .fftpack import *
+from .helper import *
from numpy.testing import Tester
test = Tester().test
diff --git a/numpy/fft/fftpack.py b/numpy/fft/fftpack.py
index d229f0702..59ab5d9db 100644
--- a/numpy/fft/fftpack.py
+++ b/numpy/fft/fftpack.py
@@ -30,14 +30,14 @@ The underlying code for these functions is an f2c-translated and modified
version of the FFTPACK routines.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['fft','ifft', 'rfft', 'irfft', 'hfft', 'ihfft', 'rfftn',
'irfftn', 'rfft2', 'irfft2', 'fft2', 'ifft2', 'fftn', 'ifftn']
from numpy.core import asarray, zeros, swapaxes, shape, conjugate, \
take
-import fftpack_lite as fftpack
+from . import fftpack_lite as fftpack
_fft_cache = {}
_real_fft_cache = {}
diff --git a/numpy/fft/helper.py b/numpy/fft/helper.py
index c22c92d76..910ccc9a2 100644
--- a/numpy/fft/helper.py
+++ b/numpy/fft/helper.py
@@ -2,7 +2,7 @@
Discrete Fourier Transforms - helper.py
"""
-from __future__ import division
+from __future__ import division, absolute_import
# Created by Pearu Peterson, September 2002
diff --git a/numpy/fft/info.py b/numpy/fft/info.py
index 9fb98eda6..6b5a1db79 100644
--- a/numpy/fft/info.py
+++ b/numpy/fft/info.py
@@ -174,6 +174,6 @@ Examples
For examples, see the various functions.
"""
-from __future__ import division
+from __future__ import division, absolute_import
depends = ['core']
diff --git a/numpy/fft/tests/test_fftpack.py b/numpy/fft/tests/test_fftpack.py
index dceb3bd89..b592d788d 100644
--- a/numpy/fft/tests/test_fftpack.py
+++ b/numpy/fft/tests/test_fftpack.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import TestCase, run_module_suite, assert_array_almost_equal
diff --git a/numpy/fft/tests/test_helper.py b/numpy/fft/tests/test_helper.py
index b20e6ddc3..a57cbd81a 100644
--- a/numpy/fft/tests/test_helper.py
+++ b/numpy/fft/tests/test_helper.py
@@ -4,7 +4,7 @@
Copied from fftpack.helper by Pearu Peterson, October 2005
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import TestCase, run_module_suite, assert_array_almost_equal
diff --git a/numpy/lib/__init__.py b/numpy/lib/__init__.py
index 5679a2dc8..37c06c014 100644
--- a/numpy/lib/__init__.py
+++ b/numpy/lib/__init__.py
@@ -1,26 +1,26 @@
-from __future__ import division
+from __future__ import division, absolute_import
-from info import __doc__
+from .info import __doc__
from numpy.version import version as __version__
-from type_check import *
-from index_tricks import *
-from function_base import *
-from shape_base import *
-from stride_tricks import *
-from twodim_base import *
-from ufunclike import *
+from .type_check import *
+from .index_tricks import *
+from .function_base import *
+from .shape_base import *
+from .stride_tricks import *
+from .twodim_base import *
+from .ufunclike import *
-import scimath as emath
-from polynomial import *
+from . import scimath as emath
+from .polynomial import *
#import convertcode
-from utils import *
-from arraysetops import *
-from npyio import *
-from financial import *
+from .utils import *
+from .arraysetops import *
+from .npyio import *
+from .financial import *
import math
-from arrayterator import *
-from arraypad import *
+from .arrayterator import *
+from .arraypad import *
__all__ = ['emath','math']
__all__ += type_check.__all__
diff --git a/numpy/lib/_datasource.py b/numpy/lib/_datasource.py
index d5424e8d3..db97c5507 100644
--- a/numpy/lib/_datasource.py
+++ b/numpy/lib/_datasource.py
@@ -31,7 +31,7 @@ Example::
>>> fp.close()
"""
-from __future__ import division
+from __future__ import division, absolute_import
__docformat__ = "restructuredtext en"
diff --git a/numpy/lib/_iotools.py b/numpy/lib/_iotools.py
index aa3744204..87ce9b01d 100644
--- a/numpy/lib/_iotools.py
+++ b/numpy/lib/_iotools.py
@@ -1,7 +1,7 @@
"""A collection of functions designed to help I/O with ascii files.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__docformat__ = "restructuredtext en"
diff --git a/numpy/lib/arraypad.py b/numpy/lib/arraypad.py
index bfb96fc24..fbf65904a 100644
--- a/numpy/lib/arraypad.py
+++ b/numpy/lib/arraypad.py
@@ -3,7 +3,7 @@ The arraypad module contains a group of functions to pad values onto the edges
of an n-dimensional array.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
diff --git a/numpy/lib/arraysetops.py b/numpy/lib/arraysetops.py
index 61bb81721..e3a39342f 100644
--- a/numpy/lib/arraysetops.py
+++ b/numpy/lib/arraysetops.py
@@ -24,7 +24,7 @@ To do: Optionally return indices analogously to unique for all functions.
:Author: Robert Cimrman
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['ediff1d', 'intersect1d', 'setxor1d', 'union1d', 'setdiff1d',
'unique', 'in1d']
diff --git a/numpy/lib/arrayterator.py b/numpy/lib/arrayterator.py
index 6f6953a22..b71e9a123 100644
--- a/numpy/lib/arrayterator.py
+++ b/numpy/lib/arrayterator.py
@@ -7,7 +7,7 @@ an array object, and when iterated it will return sub-arrays with at most
a user-specified number of elements.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from operator import mul
diff --git a/numpy/lib/financial.py b/numpy/lib/financial.py
index 5887a9224..2a3295bfe 100644
--- a/numpy/lib/financial.py
+++ b/numpy/lib/financial.py
@@ -8,7 +8,7 @@ broadcasting and being able to be called with scalars
or arrays (or other sequences).
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
diff --git a/numpy/lib/format.py b/numpy/lib/format.py
index 9a558f40c..21b0607e7 100644
--- a/numpy/lib/format.py
+++ b/numpy/lib/format.py
@@ -134,7 +134,7 @@ The ``.npy`` format, including reasons for creating it and a comparison of
alternatives, is described fully in the "npy-format" NEP.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import cPickle
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index 540092d45..9ca72bf41 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__docformat__ = "restructuredtext en"
__all__ = ['select', 'piecewise', 'trim_zeros', 'copy', 'iterable',
@@ -26,11 +26,11 @@ from numpy.core.fromnumeric import ravel, nonzero, choose, sort, mean
from numpy.core.numerictypes import typecodes, number
from numpy.core import atleast_1d, atleast_2d
from numpy.lib.twodim_base import diag
-from _compiled_base import _insert, add_docstring
-from _compiled_base import digitize, bincount, interp as compiled_interp
-from arraysetops import setdiff1d
-from utils import deprecate
-from _compiled_base import add_newdoc_ufunc
+from ._compiled_base import _insert, add_docstring
+from ._compiled_base import digitize, bincount, interp as compiled_interp
+from .arraysetops import setdiff1d
+from .utils import deprecate
+from ._compiled_base import add_newdoc_ufunc
import numpy as np
import collections
diff --git a/numpy/lib/index_tricks.py b/numpy/lib/index_tricks.py
index 07e7c1e39..ad9af9840 100644
--- a/numpy/lib/index_tricks.py
+++ b/numpy/lib/index_tricks.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['ravel_multi_index',
'unravel_index',
@@ -16,9 +16,9 @@ from numpy.core.numeric import ( asarray, ScalarType, array, alltrue, cumprod,
from numpy.core.numerictypes import find_common_type
import math
-import function_base
+from . import function_base
import numpy.matrixlib as matrix
-from function_base import diff
+from .function_base import diff
from numpy.lib._compiled_base import ravel_multi_index, unravel_index
from numpy.lib.stride_tricks import as_strided
makemat = matrix.matrix
diff --git a/numpy/lib/info.py b/numpy/lib/info.py
index 1a2154951..de94f0a19 100644
--- a/numpy/lib/info.py
+++ b/numpy/lib/info.py
@@ -145,7 +145,7 @@ setdiff1d Set difference of 1D arrays with unique elements.
================ ===================
"""
-from __future__ import division
+from __future__ import division, absolute_import
depends = ['core','testing']
global_symbols = ['*']
diff --git a/numpy/lib/npyio.py b/numpy/lib/npyio.py
index bd96a17f6..065a3ba46 100644
--- a/numpy/lib/npyio.py
+++ b/numpy/lib/npyio.py
@@ -1,11 +1,11 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['savetxt', 'loadtxt', 'genfromtxt', 'ndfromtxt', 'mafromtxt',
'recfromtxt', 'recfromcsv', 'load', 'loads', 'save', 'savez',
'savez_compressed', 'packbits', 'unpackbits', 'fromregex', 'DataSource']
import numpy as np
-import format
+from . import format
import sys
import os
import re
@@ -16,10 +16,10 @@ import weakref
from operator import itemgetter
from cPickle import load as _cload, loads
-from _datasource import DataSource
-from _compiled_base import packbits, unpackbits
+from ._datasource import DataSource
+from ._compiled_base import packbits, unpackbits
-from _iotools import LineSplitter, NameValidator, StringConverter, \
+from ._iotools import LineSplitter, NameValidator, StringConverter, \
ConverterError, ConverterLockError, ConversionWarning, \
_is_string_like, has_nested_fields, flatten_dtype, \
easy_dtype, _bytes_to_name
diff --git a/numpy/lib/polynomial.py b/numpy/lib/polynomial.py
index de83016e9..2d455e33a 100644
--- a/numpy/lib/polynomial.py
+++ b/numpy/lib/polynomial.py
@@ -2,7 +2,7 @@
Functions to operate on polynomials.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['poly', 'roots', 'polyint', 'polyder', 'polyadd',
'polysub', 'polymul', 'polydiv', 'polyval', 'poly1d',
diff --git a/numpy/lib/recfunctions.py b/numpy/lib/recfunctions.py
index c72cf2059..9f0beff59 100644
--- a/numpy/lib/recfunctions.py
+++ b/numpy/lib/recfunctions.py
@@ -5,7 +5,7 @@ Most of these functions were initially implemented by John Hunter for matplotlib
They have been rewritten and extended for convenience.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import itertools
diff --git a/numpy/lib/scimath.py b/numpy/lib/scimath.py
index 00fc4bccd..0457e120c 100644
--- a/numpy/lib/scimath.py
+++ b/numpy/lib/scimath.py
@@ -15,7 +15,7 @@ Similarly, `sqrt`, other base logarithms, `power` and trig functions are
correctly handled. See their respective docstrings for specific examples.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['sqrt', 'log', 'log2', 'logn','log10', 'power', 'arccos',
'arcsin', 'arctanh']
diff --git a/numpy/lib/shape_base.py b/numpy/lib/shape_base.py
index 1aa8f686c..909f6faa8 100644
--- a/numpy/lib/shape_base.py
+++ b/numpy/lib/shape_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['column_stack','row_stack', 'dstack','array_split','split','hsplit',
'vsplit','dsplit','apply_over_axes','expand_dims',
diff --git a/numpy/lib/stride_tricks.py b/numpy/lib/stride_tricks.py
index b82537024..70457c19f 100644
--- a/numpy/lib/stride_tricks.py
+++ b/numpy/lib/stride_tricks.py
@@ -5,7 +5,7 @@ An explanation of strides can be found in the "ndarray.rst" file in the
NumPy reference guide.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
diff --git a/numpy/lib/tests/test__datasource.py b/numpy/lib/tests/test__datasource.py
index f025b947e..e784e4296 100644
--- a/numpy/lib/tests/test__datasource.py
+++ b/numpy/lib/tests/test__datasource.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
from tempfile import mkdtemp, mkstemp, NamedTemporaryFile
diff --git a/numpy/lib/tests/test__iotools.py b/numpy/lib/tests/test__iotools.py
index 6416b6d7a..ebb01ad3a 100644
--- a/numpy/lib/tests/test__iotools.py
+++ b/numpy/lib/tests/test__iotools.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/lib/tests/test_arraypad.py b/numpy/lib/tests/test_arraypad.py
index e70c06aeb..0a87acb36 100644
--- a/numpy/lib/tests/test_arraypad.py
+++ b/numpy/lib/tests/test_arraypad.py
@@ -1,7 +1,7 @@
"""Tests for the pad functions.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import TestCase, run_module_suite, assert_array_equal
from numpy.testing import assert_raises, assert_array_almost_equal
diff --git a/numpy/lib/tests/test_arraysetops.py b/numpy/lib/tests/test_arraysetops.py
index cab7a86b1..b0a2e429d 100644
--- a/numpy/lib/tests/test_arraysetops.py
+++ b/numpy/lib/tests/test_arraysetops.py
@@ -1,7 +1,7 @@
"""Test functions for 1D array set operations.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy as np
diff --git a/numpy/lib/tests/test_arrayterator.py b/numpy/lib/tests/test_arrayterator.py
index 5064ab496..28feb4824 100644
--- a/numpy/lib/tests/test_arrayterator.py
+++ b/numpy/lib/tests/test_arrayterator.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from operator import mul
diff --git a/numpy/lib/tests/test_financial.py b/numpy/lib/tests/test_financial.py
index d11195f0d..56681dbb4 100644
--- a/numpy/lib/tests/test_financial.py
+++ b/numpy/lib/tests/test_financial.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy as np
diff --git a/numpy/lib/tests/test_format.py b/numpy/lib/tests/test_format.py
index 320cef3d2..5c07da1c3 100644
--- a/numpy/lib/tests/test_format.py
+++ b/numpy/lib/tests/test_format.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
r''' Test the .npy file format.
diff --git a/numpy/lib/tests/test_function_base.py b/numpy/lib/tests/test_function_base.py
index 73af90386..406bad40b 100644
--- a/numpy/lib/tests/test_function_base.py
+++ b/numpy/lib/tests/test_function_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import warnings
import numpy as np
diff --git a/numpy/lib/tests/test_index_tricks.py b/numpy/lib/tests/test_index_tricks.py
index 2b42fdc2c..02516cab7 100644
--- a/numpy/lib/tests/test_index_tricks.py
+++ b/numpy/lib/tests/test_index_tricks.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy as np
diff --git a/numpy/lib/tests/test_io.py b/numpy/lib/tests/test_io.py
index ba28cf73a..ab990976e 100644
--- a/numpy/lib/tests/test_io.py
+++ b/numpy/lib/tests/test_io.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import gzip
diff --git a/numpy/lib/tests/test_polynomial.py b/numpy/lib/tests/test_polynomial.py
index fc2b49c81..4a110d58e 100644
--- a/numpy/lib/tests/test_polynomial.py
+++ b/numpy/lib/tests/test_polynomial.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
'''
>>> p = np.poly1d([1.,2,3])
diff --git a/numpy/lib/tests/test_recfunctions.py b/numpy/lib/tests/test_recfunctions.py
index 6a0ad1609..f38a6914c 100644
--- a/numpy/lib/tests/test_recfunctions.py
+++ b/numpy/lib/tests/test_recfunctions.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/lib/tests/test_regression.py b/numpy/lib/tests/test_regression.py
index e0a3a424d..9e303d2b1 100644
--- a/numpy/lib/tests/test_regression.py
+++ b/numpy/lib/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.testing.utils import _assert_valid_refcount
diff --git a/numpy/lib/tests/test_shape_base.py b/numpy/lib/tests/test_shape_base.py
index 70c4d33ac..9aaf3d086 100644
--- a/numpy/lib/tests/test_shape_base.py
+++ b/numpy/lib/tests/test_shape_base.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.lib import *
diff --git a/numpy/lib/tests/test_stride_tricks.py b/numpy/lib/tests/test_stride_tricks.py
index 0ac1c279b..b6408fe19 100644
--- a/numpy/lib/tests/test_stride_tricks.py
+++ b/numpy/lib/tests/test_stride_tricks.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import *
diff --git a/numpy/lib/tests/test_twodim_base.py b/numpy/lib/tests/test_twodim_base.py
index f6b4ba4c3..e2d24464a 100644
--- a/numpy/lib/tests/test_twodim_base.py
+++ b/numpy/lib/tests/test_twodim_base.py
@@ -1,7 +1,7 @@
"""Test functions for matrix module
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/lib/tests/test_type_check.py b/numpy/lib/tests/test_type_check.py
index c4f4a6299..c1204cec4 100644
--- a/numpy/lib/tests/test_type_check.py
+++ b/numpy/lib/tests/test_type_check.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.lib import *
diff --git a/numpy/lib/tests/test_ufunclike.py b/numpy/lib/tests/test_ufunclike.py
index 0f688b021..d4505266c 100644
--- a/numpy/lib/tests/test_ufunclike.py
+++ b/numpy/lib/tests/test_ufunclike.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy.core as nx
diff --git a/numpy/lib/tests/test_utils.py b/numpy/lib/tests/test_utils.py
index 534806ff2..4b386e0b1 100644
--- a/numpy/lib/tests/test_utils.py
+++ b/numpy/lib/tests/test_utils.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy.lib.utils as utils
diff --git a/numpy/lib/twodim_base.py b/numpy/lib/twodim_base.py
index 92df5306d..b2e74e07a 100644
--- a/numpy/lib/twodim_base.py
+++ b/numpy/lib/twodim_base.py
@@ -1,7 +1,7 @@
""" Basic functions for manipulating 2d arrays
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['diag','diagflat','eye','fliplr','flipud','rot90','tri','triu',
'tril','vander','histogram2d','mask_indices',
diff --git a/numpy/lib/type_check.py b/numpy/lib/type_check.py
index 895c4d406..b59cf13aa 100644
--- a/numpy/lib/type_check.py
+++ b/numpy/lib/type_check.py
@@ -1,7 +1,7 @@
"""Automatically adapted for numpy Sep 19, 2005 by convertcode.py
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['iscomplexobj','isrealobj','imag','iscomplex',
'isreal','nan_to_num','real','real_if_close',
@@ -11,7 +11,7 @@ __all__ = ['iscomplexobj','isrealobj','imag','iscomplex',
import numpy.core.numeric as _nx
from numpy.core.numeric import asarray, asanyarray, array, isnan, \
obj2sctype, zeros
-from ufunclike import isneginf, isposinf
+from .ufunclike import isneginf, isposinf
_typecodes_by_elsize = 'GDFgdfQqLlIiHhBb?'
diff --git a/numpy/lib/ufunclike.py b/numpy/lib/ufunclike.py
index 8b85ef770..a71dab0d0 100644
--- a/numpy/lib/ufunclike.py
+++ b/numpy/lib/ufunclike.py
@@ -3,7 +3,7 @@ Module of functions that are like ufuncs in acting on arrays and optionally
storing results in an output array.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['fix', 'isneginf', 'isposinf']
diff --git a/numpy/lib/user_array.py b/numpy/lib/user_array.py
index 51ab10520..e6871f489 100644
--- a/numpy/lib/user_array.py
+++ b/numpy/lib/user_array.py
@@ -4,7 +4,7 @@ Try to inherit from the ndarray instead of using this class as this is not
complete.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.core import array, asarray, absolute, add, subtract, multiply, \
divide, remainder, power, left_shift, right_shift, bitwise_and, \
diff --git a/numpy/lib/utils.py b/numpy/lib/utils.py
index 2e70bfd15..9a8776098 100644
--- a/numpy/lib/utils.py
+++ b/numpy/lib/utils.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/linalg/__init__.py b/numpy/linalg/__init__.py
index ed281abee..d0a5de983 100644
--- a/numpy/linalg/__init__.py
+++ b/numpy/linalg/__init__.py
@@ -42,12 +42,12 @@ LinAlgError Indicates a failed linear algebra operation
=============== ==========================================================
"""
-from __future__ import division
+from __future__ import division, absolute_import
# To get sub-modules
-from info import __doc__
+from .info import __doc__
-from linalg import *
+from .linalg import *
from numpy.testing import Tester
test = Tester().test
diff --git a/numpy/linalg/info.py b/numpy/linalg/info.py
index 45b91db18..14d9ab1f7 100644
--- a/numpy/linalg/info.py
+++ b/numpy/linalg/info.py
@@ -32,6 +32,6 @@ Exceptions:
- LinAlgError Indicates a failed linear algebra operation
"""
-from __future__ import division
+from __future__ import division, absolute_import
depends = ['core']
diff --git a/numpy/linalg/lapack_lite/clapack_scrub.py b/numpy/linalg/lapack_lite/clapack_scrub.py
index 10ee543b9..22f818e91 100644
--- a/numpy/linalg/lapack_lite/clapack_scrub.py
+++ b/numpy/linalg/lapack_lite/clapack_scrub.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python2.4
-from __future__ import division
+from __future__ import division, absolute_import
import sys, os
from cStringIO import StringIO
diff --git a/numpy/linalg/lapack_lite/fortran.py b/numpy/linalg/lapack_lite/fortran.py
index 6fff72312..6aad0ba8c 100644
--- a/numpy/linalg/lapack_lite/fortran.py
+++ b/numpy/linalg/lapack_lite/fortran.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import re
import itertools
diff --git a/numpy/linalg/lapack_lite/make_lite.py b/numpy/linalg/lapack_lite/make_lite.py
index 1fea7c049..7e48a5a37 100755
--- a/numpy/linalg/lapack_lite/make_lite.py
+++ b/numpy/linalg/lapack_lite/make_lite.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
import sys, os
import fortran
diff --git a/numpy/linalg/linalg.py b/numpy/linalg/linalg.py
index 7e7833c26..c66ab8c3a 100644
--- a/numpy/linalg/linalg.py
+++ b/numpy/linalg/linalg.py
@@ -8,7 +8,7 @@ version only accesses the following LAPACK functions: dgesv, zgesv,
dgeev, zgeev, dgesdd, zgesdd, dgelsd, zgelsd, dsyevd, zheevd, dgetrf,
zgetrf, dpotrf, zpotrf, dgeqrf, zgeqrf, zungqr, dorgqr.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['matrix_power', 'solve', 'tensorsolve', 'tensorinv', 'inv',
diff --git a/numpy/linalg/tests/test_build.py b/numpy/linalg/tests/test_build.py
index 4a151d3f4..0e7dc3629 100644
--- a/numpy/linalg/tests/test_build.py
+++ b/numpy/linalg/tests/test_build.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from subprocess import call, PIPE, Popen
import sys
diff --git a/numpy/linalg/tests/test_linalg.py b/numpy/linalg/tests/test_linalg.py
index fb8f89fe9..6750f059d 100644
--- a/numpy/linalg/tests/test_linalg.py
+++ b/numpy/linalg/tests/test_linalg.py
@@ -1,6 +1,6 @@
""" Test functions for linalg module
"""
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/linalg/tests/test_regression.py b/numpy/linalg/tests/test_regression.py
index 9ca56e9ff..c3e01c383 100644
--- a/numpy/linalg/tests/test_regression.py
+++ b/numpy/linalg/tests/test_regression.py
@@ -1,6 +1,6 @@
""" Test functions for linalg module
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/ma/__init__.py b/numpy/ma/__init__.py
index 7388a7ce3..3113e538c 100644
--- a/numpy/ma/__init__.py
+++ b/numpy/ma/__init__.py
@@ -36,18 +36,18 @@ may now proceed to calculate the mean of the other values:
invalid operation.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__version__ = '1.0'
__revision__ = "$Revision: 3473 $"
__date__ = '$Date: 2007-10-29 17:18:13 +0200 (Mon, 29 Oct 2007) $'
-import core
-from core import *
+from . import core
+from .core import *
-import extras
-from extras import *
+from . import extras
+from .extras import *
__all__ = ['core', 'extras']
__all__ += core.__all__
diff --git a/numpy/ma/bench.py b/numpy/ma/bench.py
index df6933eb9..7500245c3 100644
--- a/numpy/ma/bench.py
+++ b/numpy/ma/bench.py
@@ -1,6 +1,6 @@
#! python
# encoding: utf-8
-from __future__ import division
+from __future__ import division, absolute_import
import timeit
#import IPython.ipapi
diff --git a/numpy/ma/core.py b/numpy/ma/core.py
index 371d5f302..3299262d1 100644
--- a/numpy/ma/core.py
+++ b/numpy/ma/core.py
@@ -20,7 +20,7 @@ Released for unlimited redistribution.
"""
# pylint: disable-msg=E1002
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant"
diff --git a/numpy/ma/extras.py b/numpy/ma/extras.py
index 77d2dbb36..795e75402 100644
--- a/numpy/ma/extras.py
+++ b/numpy/ma/extras.py
@@ -8,7 +8,7 @@ A collection of utilities for `numpy.ma`.
:version: $Id: extras.py 3473 2007-10-29 15:18:13Z jarrod.millman $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__version__ = '1.0'
@@ -38,8 +38,8 @@ __all__ = ['apply_along_axis', 'apply_over_axes', 'atleast_1d', 'atleast_2d',
import itertools
import warnings
-import core as ma
-from core import MaskedArray, MAError, add, array, asarray, concatenate, count, \
+from . import core as ma
+from .core import MaskedArray, MAError, add, array, asarray, concatenate, count, \
filled, getmask, getmaskarray, make_mask_descr, masked, masked_array, \
mask_or, nomask, ones, sort, zeros
#from core import *
diff --git a/numpy/ma/mrecords.py b/numpy/ma/mrecords.py
index 084859d07..ae31986bc 100644
--- a/numpy/ma/mrecords.py
+++ b/numpy/ma/mrecords.py
@@ -8,7 +8,7 @@ and the masking of individual fields.
:author: Pierre Gerard-Marchant
"""
-from __future__ import division
+from __future__ import division, absolute_import
#!!!: * We should make sure that no field is called '_mask','mask','_fieldmask',
#!!!: or whatever restricted keywords.
diff --git a/numpy/ma/tests/test_core.py b/numpy/ma/tests/test_core.py
index a11bf6943..383e4a907 100644
--- a/numpy/ma/tests/test_core.py
+++ b/numpy/ma/tests/test_core.py
@@ -4,7 +4,7 @@
:author: Pierre Gerard-Marchant
:contact: pierregm_at_uga_dot_edu
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant"
diff --git a/numpy/ma/tests/test_extras.py b/numpy/ma/tests/test_extras.py
index 3f25ac21c..c32e689c3 100644
--- a/numpy/ma/tests/test_extras.py
+++ b/numpy/ma/tests/test_extras.py
@@ -7,7 +7,7 @@ Adapted from the original test_ma by Pierre Gerard-Marchant
:version: $Id: test_extras.py 3473 2007-10-29 15:18:13Z jarrod.millman $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__version__ = '1.0'
diff --git a/numpy/ma/tests/test_mrecords.py b/numpy/ma/tests/test_mrecords.py
index 4e59b8e41..d6f8d9765 100644
--- a/numpy/ma/tests/test_mrecords.py
+++ b/numpy/ma/tests/test_mrecords.py
@@ -5,7 +5,7 @@
:contact: pierregm_at_uga_dot_edu
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__revision__ = "$Revision: 3473 $"
diff --git a/numpy/ma/tests/test_old_ma.py b/numpy/ma/tests/test_old_ma.py
index b04e8ab37..41f7779d9 100644
--- a/numpy/ma/tests/test_old_ma.py
+++ b/numpy/ma/tests/test_old_ma.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy
import types
diff --git a/numpy/ma/tests/test_regression.py b/numpy/ma/tests/test_regression.py
index 85c290160..e5fea0c52 100644
--- a/numpy/ma/tests/test_regression.py
+++ b/numpy/ma/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy as np
diff --git a/numpy/ma/tests/test_subclassing.py b/numpy/ma/tests/test_subclassing.py
index ce3d8c889..6b8ff0769 100644
--- a/numpy/ma/tests/test_subclassing.py
+++ b/numpy/ma/tests/test_subclassing.py
@@ -6,7 +6,7 @@
:version: $Id: test_subclassing.py 3473 2007-10-29 15:18:13Z jarrod.millman $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__version__ = '1.0'
diff --git a/numpy/ma/testutils.py b/numpy/ma/testutils.py
index 3707dcc16..882db2b89 100644
--- a/numpy/ma/testutils.py
+++ b/numpy/ma/testutils.py
@@ -5,7 +5,7 @@
:version: $Id: testutils.py 3529 2007-11-13 08:01:14Z jarrod.millman $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__author__ = "Pierre GF Gerard-Marchant ($Author: jarrod.millman $)"
__version__ = "1.0"
@@ -21,7 +21,7 @@ import numpy.core.umath as umath
from numpy.testing import *
import numpy.testing.utils as utils
-from core import mask_or, getmask, masked_array, nomask, masked, filled, \
+from .core import mask_or, getmask, masked_array, nomask, masked, filled, \
equal, less
#------------------------------------------------------------------------------
diff --git a/numpy/ma/timer_comparison.py b/numpy/ma/timer_comparison.py
index adc1fa22b..549448689 100644
--- a/numpy/ma/timer_comparison.py
+++ b/numpy/ma/timer_comparison.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import timeit
diff --git a/numpy/ma/version.py b/numpy/ma/version.py
index 73281311d..cf9a95572 100644
--- a/numpy/ma/version.py
+++ b/numpy/ma/version.py
@@ -1,14 +1,14 @@
"""Version number
"""
-from __future__ import division
+from __future__ import division, absolute_import
version = '1.00'
release = False
if not release:
- import core
- import extras
+ from . import core
+ from . import extras
revision = [core.__revision__.split(':')[-1][:-1].strip(),
extras.__revision__.split(':')[-1][:-1].strip(),]
version += '.dev%04i' % max([int(rev) for rev in revision])
diff --git a/numpy/matlib.py b/numpy/matlib.py
index ae053373b..df683573f 100644
--- a/numpy/matlib.py
+++ b/numpy/matlib.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.matrixlib.defmatrix import matrix, asmatrix
diff --git a/numpy/matrixlib/__init__.py b/numpy/matrixlib/__init__.py
index dc9a6bca9..bb826cd39 100644
--- a/numpy/matrixlib/__init__.py
+++ b/numpy/matrixlib/__init__.py
@@ -1,9 +1,9 @@
"""Sub-package containing the matrix class and related functions.
"""
-from __future__ import division
+from __future__ import division, absolute_import
-from defmatrix import *
+from .defmatrix import *
__all__ = defmatrix.__all__
diff --git a/numpy/matrixlib/defmatrix.py b/numpy/matrixlib/defmatrix.py
index f0299ee88..cf47fadf8 100644
--- a/numpy/matrixlib/defmatrix.py
+++ b/numpy/matrixlib/defmatrix.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['matrix', 'bmat', 'mat', 'asmatrix']
diff --git a/numpy/matrixlib/tests/test_defmatrix.py b/numpy/matrixlib/tests/test_defmatrix.py
index 28b563977..c67b447b8 100644
--- a/numpy/matrixlib/tests/test_defmatrix.py
+++ b/numpy/matrixlib/tests/test_defmatrix.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
from numpy.core import *
diff --git a/numpy/matrixlib/tests/test_multiarray.py b/numpy/matrixlib/tests/test_multiarray.py
index 6247a1c48..d58adb3a2 100644
--- a/numpy/matrixlib/tests/test_multiarray.py
+++ b/numpy/matrixlib/tests/test_multiarray.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import *
diff --git a/numpy/matrixlib/tests/test_numeric.py b/numpy/matrixlib/tests/test_numeric.py
index 5539dac0d..7b690fbef 100644
--- a/numpy/matrixlib/tests/test_numeric.py
+++ b/numpy/matrixlib/tests/test_numeric.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import assert_equal, TestCase
from numpy.core import ones
diff --git a/numpy/matrixlib/tests/test_regression.py b/numpy/matrixlib/tests/test_regression.py
index ae352f09c..da5131bc6 100644
--- a/numpy/matrixlib/tests/test_regression.py
+++ b/numpy/matrixlib/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
import numpy as np
diff --git a/numpy/numarray/__init__.py b/numpy/numarray/__init__.py
index 964ee2baa..f7a487cdf 100644
--- a/numpy/numarray/__init__.py
+++ b/numpy/numarray/__init__.py
@@ -1,18 +1,18 @@
-from __future__ import division
+from __future__ import division, absolute_import
-from util import *
-from numerictypes import *
-from functions import *
-from ufuncs import *
-from compat import *
-from session import *
+from .util import *
+from .numerictypes import *
+from .functions import *
+from .ufuncs import *
+from .compat import *
+from .session import *
-import util
-import numerictypes
-import functions
-import ufuncs
-import compat
-import session
+from . import util
+from . import numerictypes
+from . import functions
+from . import ufuncs
+from . import compat
+from . import session
__all__ = ['session', 'numerictypes']
__all__ += util.__all__
diff --git a/numpy/numarray/alter_code1.py b/numpy/numarray/alter_code1.py
index 2393aff5a..09370549d 100644
--- a/numpy/numarray/alter_code1.py
+++ b/numpy/numarray/alter_code1.py
@@ -52,7 +52,7 @@ Makes the following changes:
- .setimaginary() --> .imag
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['convertfile', 'convertall', 'converttree', 'convertsrc']
diff --git a/numpy/numarray/alter_code2.py b/numpy/numarray/alter_code2.py
index 4d76222da..df248a924 100644
--- a/numpy/numarray/alter_code2.py
+++ b/numpy/numarray/alter_code2.py
@@ -5,7 +5,7 @@ with numpy
FIXME: finish this.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = []
diff --git a/numpy/numarray/compat.py b/numpy/numarray/compat.py
index 794a2d591..24e20be17 100644
--- a/numpy/numarray/compat.py
+++ b/numpy/numarray/compat.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['NewAxis', 'ArrayType']
diff --git a/numpy/numarray/convolve.py b/numpy/numarray/convolve.py
index 14c16f008..af7330fc7 100644
--- a/numpy/numarray/convolve.py
+++ b/numpy/numarray/convolve.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
try:
from stsci.convolve import *
diff --git a/numpy/numarray/fft.py b/numpy/numarray/fft.py
index 158c8807e..4adf1d3bb 100644
--- a/numpy/numarray/fft.py
+++ b/numpy/numarray/fft.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.oldnumeric.fft import *
import numpy.oldnumeric.fft as nof
diff --git a/numpy/numarray/functions.py b/numpy/numarray/functions.py
index 2e12a4149..2492d5f3f 100644
--- a/numpy/numarray/functions.py
+++ b/numpy/numarray/functions.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
# missing Numarray defined names (in from numarray import *)
@@ -40,7 +40,7 @@ from numpy import dot as matrixmultiply, dot, vdot, ravel, concatenate, all,\
resize, searchsorted, shape, size, sort, swapaxes, trace, transpose
import numpy as np
-from numerictypes import typefrom
+from .numerictypes import typefrom
if sys.version_info[0] >= 3:
import copyreg as copy_reg
diff --git a/numpy/numarray/image.py b/numpy/numarray/image.py
index 112fdac9e..bcfa09afd 100644
--- a/numpy/numarray/image.py
+++ b/numpy/numarray/image.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
try:
from stsci.image import *
diff --git a/numpy/numarray/linear_algebra.py b/numpy/numarray/linear_algebra.py
index 1c716e05b..3b92d09d1 100644
--- a/numpy/numarray/linear_algebra.py
+++ b/numpy/numarray/linear_algebra.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.oldnumeric.linear_algebra import *
diff --git a/numpy/numarray/ma.py b/numpy/numarray/ma.py
index 2b820a98d..f220362ae 100644
--- a/numpy/numarray/ma.py
+++ b/numpy/numarray/ma.py
@@ -1,3 +1,3 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.oldnumeric.ma import *
diff --git a/numpy/numarray/matrix.py b/numpy/numarray/matrix.py
index 723613c63..bd10f8278 100644
--- a/numpy/numarray/matrix.py
+++ b/numpy/numarray/matrix.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['Matrix']
diff --git a/numpy/numarray/mlab.py b/numpy/numarray/mlab.py
index 70ccf077a..d530c8a05 100644
--- a/numpy/numarray/mlab.py
+++ b/numpy/numarray/mlab.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.oldnumeric.mlab import *
import numpy.oldnumeric.mlab as nom
diff --git a/numpy/numarray/nd_image.py b/numpy/numarray/nd_image.py
index a9a7ee1f4..d73788ed3 100644
--- a/numpy/numarray/nd_image.py
+++ b/numpy/numarray/nd_image.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
try:
from ndimage import *
diff --git a/numpy/numarray/numerictypes.py b/numpy/numarray/numerictypes.py
index ef1ccb2a3..b51706ec3 100644
--- a/numpy/numarray/numerictypes.py
+++ b/numpy/numarray/numerictypes.py
@@ -27,7 +27,7 @@ Exported symbols include:
$Id: numerictypes.py,v 1.55 2005/12/01 16:22:03 jaytmiller Exp $
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['NumericType','HasUInt64','typeDict','IsType',
diff --git a/numpy/numarray/random_array.py b/numpy/numarray/random_array.py
index 654f58346..6f56e9cf9 100644
--- a/numpy/numarray/random_array.py
+++ b/numpy/numarray/random_array.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['ArgumentError', 'F', 'beta', 'binomial', 'chi_square',
'exponential', 'gamma', 'get_seed', 'multinomial',
diff --git a/numpy/numarray/session.py b/numpy/numarray/session.py
index fab80a1e2..32a28cca0 100644
--- a/numpy/numarray/session.py
+++ b/numpy/numarray/session.py
@@ -72,7 +72,7 @@ Saved modules are re-imported at load time but any "state" in the module
which is not restored by a simple import is lost.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['load', 'save']
diff --git a/numpy/numarray/ufuncs.py b/numpy/numarray/ufuncs.py
index 357972c79..a5b72c3fb 100644
--- a/numpy/numarray/ufuncs.py
+++ b/numpy/numarray/ufuncs.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['abs', 'absolute', 'add', 'arccos', 'arccosh', 'arcsin', 'arcsinh',
'arctan', 'arctan2', 'arctanh', 'bitwise_and', 'bitwise_not',
diff --git a/numpy/numarray/util.py b/numpy/numarray/util.py
index 819987cbf..acdb18fc8 100644
--- a/numpy/numarray/util.py
+++ b/numpy/numarray/util.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import numpy as np
diff --git a/numpy/oldnumeric/__init__.py b/numpy/oldnumeric/__init__.py
index 68bd39e45..ff8c00885 100644
--- a/numpy/oldnumeric/__init__.py
+++ b/numpy/oldnumeric/__init__.py
@@ -1,7 +1,7 @@
"""Don't add these to the __all__ variable though
"""
-from __future__ import division
+from __future__ import division, absolute_import
from numpy import *
@@ -15,17 +15,17 @@ def _move_axis_to_0(a, axis):
return transpose(a, axes)
# Add these
-from compat import *
-from functions import *
-from precision import *
-from ufuncs import *
-from misc import *
-
-import compat
-import precision
-import functions
-import misc
-import ufuncs
+from .compat import *
+from .functions import *
+from .precision import *
+from .ufuncs import *
+from .misc import *
+
+from . import compat
+from . import precision
+from . import functions
+from . import misc
+from . import ufuncs
import numpy
__version__ = numpy.__version__
diff --git a/numpy/oldnumeric/alter_code1.py b/numpy/oldnumeric/alter_code1.py
index 5eb1c99f2..f970994e4 100644
--- a/numpy/oldnumeric/alter_code1.py
+++ b/numpy/oldnumeric/alter_code1.py
@@ -29,7 +29,7 @@ Makes the following changes:
isinstance(..., <type>)
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['convertfile', 'convertall', 'converttree', 'convertsrc']
diff --git a/numpy/oldnumeric/alter_code2.py b/numpy/oldnumeric/alter_code2.py
index 61f285f63..6d33efd60 100644
--- a/numpy/oldnumeric/alter_code2.py
+++ b/numpy/oldnumeric/alter_code2.py
@@ -19,7 +19,7 @@ Makes the following changes:
oldnumeric.random_array, and oldnumeric.fft
"""
-from __future__ import division
+from __future__ import division, absolute_import
#__all__ = ['convertfile', 'convertall', 'converttree']
__all__ = []
diff --git a/numpy/oldnumeric/array_printer.py b/numpy/oldnumeric/array_printer.py
index 7c0428c14..f14872821 100644
--- a/numpy/oldnumeric/array_printer.py
+++ b/numpy/oldnumeric/array_printer.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['array2string']
diff --git a/numpy/oldnumeric/arrayfns.py b/numpy/oldnumeric/arrayfns.py
index 1db219d4a..03f816db8 100644
--- a/numpy/oldnumeric/arrayfns.py
+++ b/numpy/oldnumeric/arrayfns.py
@@ -1,7 +1,7 @@
"""Backward compatible with arrayfns from Numeric.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['array_set', 'construct3', 'digitize', 'error', 'find_mask',
'histogram', 'index_sort', 'interp', 'nz', 'reverse', 'span',
diff --git a/numpy/oldnumeric/compat.py b/numpy/oldnumeric/compat.py
index 0c18917d0..46c3c727f 100644
--- a/numpy/oldnumeric/compat.py
+++ b/numpy/oldnumeric/compat.py
@@ -1,7 +1,7 @@
"""Compatibility module containing deprecated names.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['NewAxis',
'UFuncType', 'UfuncType', 'ArrayType', 'arraytype',
@@ -16,7 +16,7 @@ __all__ = ['NewAxis',
import numpy.core.multiarray as multiarray
import numpy.core.umath as um
from numpy.core.numeric import array
-import functions
+from . import functions
import sys
from cPickle import dump, dumps
@@ -78,7 +78,7 @@ def load(fp):
return loads(fp.read())
def _LoadArray(fp):
- import typeconv
+ from . import typeconv
ln = fp.readline().split()
if ln[0][0] == 'A': ln[0] = ln[0][1:]
typecode = ln[0][0]
diff --git a/numpy/oldnumeric/fft.py b/numpy/oldnumeric/fft.py
index ace7d27d9..7ea554e4a 100644
--- a/numpy/oldnumeric/fft.py
+++ b/numpy/oldnumeric/fft.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['fft', 'fft2d', 'fftnd', 'hermite_fft', 'inverse_fft',
'inverse_fft2d', 'inverse_fftnd',
diff --git a/numpy/oldnumeric/fix_default_axis.py b/numpy/oldnumeric/fix_default_axis.py
index 262f82859..cefa67239 100644
--- a/numpy/oldnumeric/fix_default_axis.py
+++ b/numpy/oldnumeric/fix_default_axis.py
@@ -34,7 +34,7 @@ std
mean
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['convertfile', 'convertall', 'converttree']
diff --git a/numpy/oldnumeric/functions.py b/numpy/oldnumeric/functions.py
index 1e4daef5d..50c11e32c 100644
--- a/numpy/oldnumeric/functions.py
+++ b/numpy/oldnumeric/functions.py
@@ -1,12 +1,12 @@
"""Functions that should behave the same as Numeric and need changing
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.core.multiarray as mu
import numpy.core.numeric as nn
-from typeconv import convtypecode, convtypecode2
+from .typeconv import convtypecode, convtypecode2
__all__ = ['take', 'repeat', 'sum', 'product', 'sometrue', 'alltrue',
'cumsum', 'cumproduct', 'compress', 'fromfunction',
diff --git a/numpy/oldnumeric/linear_algebra.py b/numpy/oldnumeric/linear_algebra.py
index a8600c77d..e850cd792 100644
--- a/numpy/oldnumeric/linear_algebra.py
+++ b/numpy/oldnumeric/linear_algebra.py
@@ -6,7 +6,7 @@ only accesses the following LAPACK functions: dgesv, zgesv, dgeev,
zgeev, dgesdd, zgesdd, dgelsd, zgelsd, dsyevd, zheevd, dgetrf, dpotrf.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['LinAlgError', 'solve_linear_equations',
'inverse', 'cholesky_decomposition', 'eigenvalues',
diff --git a/numpy/oldnumeric/ma.py b/numpy/oldnumeric/ma.py
index 46af041ba..b449d619c 100644
--- a/numpy/oldnumeric/ma.py
+++ b/numpy/oldnumeric/ma.py
@@ -9,7 +9,7 @@ Adapted for numpy_core 2005 by Travis Oliphant and
(mainly) Paul Dubois.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import types, sys
diff --git a/numpy/oldnumeric/matrix.py b/numpy/oldnumeric/matrix.py
index 9be08e93c..e76f8935f 100644
--- a/numpy/oldnumeric/matrix.py
+++ b/numpy/oldnumeric/matrix.py
@@ -1,12 +1,12 @@
"""This module is for compatibility only.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['UserArray', 'squeeze', 'Matrix', 'asarray', 'dot', 'k', 'Numeric', 'LinearAlgebra', 'identity', 'multiply', 'types', 'string']
import types
-from user_array import UserArray, asarray
+from .user_array import UserArray, asarray
import numpy.oldnumeric as Numeric
from numpy.oldnumeric import dot, identity, multiply
import numpy.oldnumeric.linear_algebra as LinearAlgebra
diff --git a/numpy/oldnumeric/misc.py b/numpy/oldnumeric/misc.py
index 3871d8251..8f1e1ae96 100644
--- a/numpy/oldnumeric/misc.py
+++ b/numpy/oldnumeric/misc.py
@@ -1,7 +1,7 @@
"""Functions that already have the correct syntax or miscellaneous functions
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['sort', 'copy_reg', 'clip', 'rank',
'sign', 'shape', 'types', 'allclose', 'size',
@@ -35,4 +35,4 @@ from numpy import sort, clip, rank, sign, shape, putmask, allclose, size,\
correlate as cross_correlate, \
place as insert
-from array_printer import array2string
+from .array_printer import array2string
diff --git a/numpy/oldnumeric/mlab.py b/numpy/oldnumeric/mlab.py
index e2ea78c02..d4063f65e 100644
--- a/numpy/oldnumeric/mlab.py
+++ b/numpy/oldnumeric/mlab.py
@@ -1,7 +1,7 @@
"""This module is for compatibility only. All functions are defined elsewhere.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['rand', 'tril', 'trapz', 'hanning', 'rot90', 'triu', 'diff', 'angle',
'roots', 'ptp', 'kaiser', 'randn', 'cumprod', 'diag', 'msort',
@@ -21,7 +21,7 @@ from numpy.linalg import eig, svd
from numpy.random import rand, randn
import numpy as np
-from typeconv import convtypecode
+from .typeconv import convtypecode
def eye(N, M=None, k=0, typecode=None, dtype=None):
""" eye returns a N-by-M 2-d array where the k-th diagonal is all ones,
@@ -98,17 +98,17 @@ def corrcoef(x, y=None):
d = diag(c)
return c/sqrt(multiply.outer(d,d))
-from compat import *
-from functions import *
-from precision import *
-from ufuncs import *
-from misc import *
-
-import compat
-import precision
-import functions
-import misc
-import ufuncs
+from .compat import *
+from .functions import *
+from .precision import *
+from .ufuncs import *
+from .misc import *
+
+from . import compat
+from . import precision
+from . import functions
+from . import misc
+from . import ufuncs
import numpy
__version__ = numpy.__version__
diff --git a/numpy/oldnumeric/precision.py b/numpy/oldnumeric/precision.py
index c6579f302..7c85f21fc 100644
--- a/numpy/oldnumeric/precision.py
+++ b/numpy/oldnumeric/precision.py
@@ -6,13 +6,13 @@ The character strings are still for "new" NumPy
which is the only Incompatibility with Numeric
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['Character', 'Complex', 'Float',
'PrecisionError', 'PyObject', 'Int', 'UInt',
'UnsignedInt', 'UnsignedInteger', 'string', 'typecodes', 'zeros']
-from functions import zeros
+from .functions import zeros
import string # for backwards compatibility
typecodes = {'Character':'c', 'Integer':'bhil', 'UnsignedInteger':'BHIL', 'Float':'fd', 'Complex':'FD'}
diff --git a/numpy/oldnumeric/random_array.py b/numpy/oldnumeric/random_array.py
index a7f6c4112..4dcddda12 100644
--- a/numpy/oldnumeric/random_array.py
+++ b/numpy/oldnumeric/random_array.py
@@ -1,7 +1,7 @@
"""Backward compatible module for RandomArray
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['ArgumentError','F','beta','binomial','chi_square', 'exponential',
'gamma', 'get_seed', 'mean_var_test', 'multinomial',
diff --git a/numpy/oldnumeric/rng.py b/numpy/oldnumeric/rng.py
index 28fb9d591..3ad0b4190 100644
--- a/numpy/oldnumeric/rng.py
+++ b/numpy/oldnumeric/rng.py
@@ -4,7 +4,7 @@ Replace import RNG with import numpy.oldnumeric.rng as RNG.
It is for backwards compatibility only.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['CreateGenerator','ExponentialDistribution','LogNormalDistribution',
'NormalDistribution', 'UniformDistribution', 'error', 'ranf',
diff --git a/numpy/oldnumeric/rng_stats.py b/numpy/oldnumeric/rng_stats.py
index 96e50f9a4..43d763046 100644
--- a/numpy/oldnumeric/rng_stats.py
+++ b/numpy/oldnumeric/rng_stats.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['average', 'histogram', 'standardDeviation', 'variance']
diff --git a/numpy/oldnumeric/tests/test_oldnumeric.py b/numpy/oldnumeric/tests/test_oldnumeric.py
index 58ccc710a..488b2b471 100644
--- a/numpy/oldnumeric/tests/test_oldnumeric.py
+++ b/numpy/oldnumeric/tests/test_oldnumeric.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import unittest
diff --git a/numpy/oldnumeric/tests/test_regression.py b/numpy/oldnumeric/tests/test_regression.py
index dd221699d..d169d6f3f 100644
--- a/numpy/oldnumeric/tests/test_regression.py
+++ b/numpy/oldnumeric/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import *
diff --git a/numpy/oldnumeric/typeconv.py b/numpy/oldnumeric/typeconv.py
index 014477950..c3a27f5a3 100644
--- a/numpy/oldnumeric/typeconv.py
+++ b/numpy/oldnumeric/typeconv.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['oldtype2dtype', 'convtypecode', 'convtypecode2', 'oldtypecodes']
diff --git a/numpy/oldnumeric/ufuncs.py b/numpy/oldnumeric/ufuncs.py
index 9ace30a91..7da0b5a93 100644
--- a/numpy/oldnumeric/ufuncs.py
+++ b/numpy/oldnumeric/ufuncs.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['less', 'cosh', 'arcsinh', 'add', 'ceil', 'arctan2', 'floor_divide',
'fmod', 'hypot', 'logical_and', 'power', 'sinh', 'remainder', 'cos',
diff --git a/numpy/oldnumeric/user_array.py b/numpy/oldnumeric/user_array.py
index 08be8135b..8d2421f4a 100644
--- a/numpy/oldnumeric/user_array.py
+++ b/numpy/oldnumeric/user_array.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.oldnumeric import *
from numpy.lib.user_array import container as UserArray
diff --git a/numpy/polynomial/__init__.py b/numpy/polynomial/__init__.py
index 684720828..1e9919614 100644
--- a/numpy/polynomial/__init__.py
+++ b/numpy/polynomial/__init__.py
@@ -13,16 +13,16 @@ implemented as operations on the coefficients. Additional (module-specific)
information can be found in the docstring for the module of interest.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import warnings
-from polynomial import Polynomial
-from chebyshev import Chebyshev
-from legendre import Legendre
-from hermite import Hermite
-from hermite_e import HermiteE
-from laguerre import Laguerre
+from .polynomial import Polynomial
+from .chebyshev import Chebyshev
+from .legendre import Legendre
+from .hermite import Hermite
+from .hermite_e import HermiteE
+from .laguerre import Laguerre
from numpy.testing import Tester
test = Tester().test
diff --git a/numpy/polynomial/chebyshev.py b/numpy/polynomial/chebyshev.py
index 9576a4697..dde4966e7 100644
--- a/numpy/polynomial/chebyshev.py
+++ b/numpy/polynomial/chebyshev.py
@@ -85,13 +85,13 @@ References
(preprint: http://www.math.hmc.edu/~benjamin/papers/CombTrig.pdf, pg. 4)
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
__all__ = ['chebzero', 'chebone', 'chebx', 'chebdomain', 'chebline',
'chebadd', 'chebsub', 'chebmulx', 'chebmul', 'chebdiv', 'chebpow',
@@ -416,7 +416,7 @@ def cheb2poly(c) :
array([ -2., -8., 4., 12.])
"""
- from polynomial import polyadd, polysub, polymulx
+ from .polynomial import polyadd, polysub, polymulx
[c] = pu.as_series([c])
n = len(c)
diff --git a/numpy/polynomial/hermite.py b/numpy/polynomial/hermite.py
index b410902ea..51a0f2fe0 100644
--- a/numpy/polynomial/hermite.py
+++ b/numpy/polynomial/hermite.py
@@ -57,13 +57,13 @@ See also
`numpy.polynomial`
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
__all__ = ['hermzero', 'hermone', 'hermx', 'hermdomain', 'hermline',
'hermadd', 'hermsub', 'hermmulx', 'hermmul', 'hermdiv', 'hermpow',
@@ -160,7 +160,7 @@ def herm2poly(c) :
array([ 0., 1., 2., 3.])
"""
- from polynomial import polyadd, polysub, polymulx
+ from .polynomial import polyadd, polysub, polymulx
[c] = pu.as_series([c])
n = len(c)
diff --git a/numpy/polynomial/hermite_e.py b/numpy/polynomial/hermite_e.py
index 4d3bcd338..9ae3c7067 100644
--- a/numpy/polynomial/hermite_e.py
+++ b/numpy/polynomial/hermite_e.py
@@ -57,13 +57,13 @@ See also
`numpy.polynomial`
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
__all__ = ['hermezero', 'hermeone', 'hermex', 'hermedomain', 'hermeline',
'hermeadd', 'hermesub', 'hermemulx', 'hermemul', 'hermediv', 'hermpow',
@@ -160,7 +160,7 @@ def herme2poly(c) :
array([ 0., 1., 2., 3.])
"""
- from polynomial import polyadd, polysub, polymulx
+ from .polynomial import polyadd, polysub, polymulx
[c] = pu.as_series([c])
n = len(c)
diff --git a/numpy/polynomial/laguerre.py b/numpy/polynomial/laguerre.py
index 7b77ea819..874088b2c 100644
--- a/numpy/polynomial/laguerre.py
+++ b/numpy/polynomial/laguerre.py
@@ -57,13 +57,13 @@ See also
`numpy.polynomial`
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
__all__ = ['lagzero', 'lagone', 'lagx', 'lagdomain', 'lagline',
'lagadd', 'lagsub', 'lagmulx', 'lagmul', 'lagdiv', 'lagpow',
@@ -159,7 +159,7 @@ def lag2poly(c) :
array([ 0., 1., 2., 3.])
"""
- from polynomial import polyadd, polysub, polymulx
+ from .polynomial import polyadd, polysub, polymulx
[c] = pu.as_series([c])
n = len(c)
diff --git a/numpy/polynomial/legendre.py b/numpy/polynomial/legendre.py
index 5b88b6287..ba49cbc57 100644
--- a/numpy/polynomial/legendre.py
+++ b/numpy/polynomial/legendre.py
@@ -81,13 +81,13 @@ numpy.polynomial.hermite
numpy.polynomial.hermite_e
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
__all__ = ['legzero', 'legone', 'legx', 'legdomain', 'legline',
'legadd', 'legsub', 'legmulx', 'legmul', 'legdiv', 'legpow', 'legval',
@@ -191,7 +191,7 @@ def leg2poly(c) :
"""
- from polynomial import polyadd, polysub, polymulx
+ from .polynomial import polyadd, polysub, polymulx
[c] = pu.as_series([c])
n = len(c)
diff --git a/numpy/polynomial/polynomial.py b/numpy/polynomial/polynomial.py
index e174fdd96..b9a14972e 100644
--- a/numpy/polynomial/polynomial.py
+++ b/numpy/polynomial/polynomial.py
@@ -52,7 +52,7 @@ See also
`numpy.polynomial`
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['polyzero', 'polyone', 'polyx', 'polydomain', 'polyline',
'polyadd', 'polysub', 'polymulx', 'polymul', 'polydiv', 'polypow',
@@ -62,9 +62,9 @@ __all__ = ['polyzero', 'polyone', 'polyx', 'polydomain', 'polyline',
import numpy as np
import numpy.linalg as la
-import polyutils as pu
+from . import polyutils as pu
import warnings
-from polytemplate import polytemplate
+from .polytemplate import polytemplate
polytrim = pu.trimcoef
diff --git a/numpy/polynomial/polytemplate.py b/numpy/polynomial/polytemplate.py
index 7d67c914c..adf32170f 100644
--- a/numpy/polynomial/polytemplate.py
+++ b/numpy/polynomial/polytemplate.py
@@ -9,21 +9,16 @@ creating additional specific polynomial classes (e.g., Legendre, Jacobi,
etc.) in the future, such that all these classes will have a common API.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import string
import sys
-if sys.version_info[0] >= 3:
- rel_import = "from . import"
-else:
- rel_import = "import"
-
polytemplate = string.Template('''
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import warnings
-REL_IMPORT polyutils as pu
+from . import polyutils as pu
class $name(pu.PolyBase) :
"""A $name series class.
@@ -918,4 +913,4 @@ class $name(pu.PolyBase) :
"""
return series.convert(domain, $name, window)
-'''.replace('REL_IMPORT', rel_import))
+''')
diff --git a/numpy/polynomial/polyutils.py b/numpy/polynomial/polyutils.py
index 8861328c4..0d3343b04 100644
--- a/numpy/polynomial/polyutils.py
+++ b/numpy/polynomial/polyutils.py
@@ -31,7 +31,7 @@ Functions
- `mapparms` -- parameters of the linear map between domains.
"""
-from __future__ import division
+from __future__ import division, absolute_import
__all__ = ['RankWarning', 'PolyError', 'PolyDomainError', 'PolyBase',
'as_series', 'trimseq', 'trimcoef', 'getdomain', 'mapdomain',
diff --git a/numpy/polynomial/tests/test_chebyshev.py b/numpy/polynomial/tests/test_chebyshev.py
index b5f1d5672..2bf73d02b 100644
--- a/numpy/polynomial/tests/test_chebyshev.py
+++ b/numpy/polynomial/tests/test_chebyshev.py
@@ -1,7 +1,7 @@
"""Tests for chebyshev module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.chebyshev as cheb
diff --git a/numpy/polynomial/tests/test_classes.py b/numpy/polynomial/tests/test_classes.py
index fb0d359e0..2439fc8ad 100644
--- a/numpy/polynomial/tests/test_classes.py
+++ b/numpy/polynomial/tests/test_classes.py
@@ -3,7 +3,7 @@
This tests the convert and cast methods of all the polynomial classes.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.polynomial import (
diff --git a/numpy/polynomial/tests/test_hermite.py b/numpy/polynomial/tests/test_hermite.py
index 36fa6f0e4..f9b936bbf 100644
--- a/numpy/polynomial/tests/test_hermite.py
+++ b/numpy/polynomial/tests/test_hermite.py
@@ -1,7 +1,7 @@
"""Tests for hermite module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.hermite as herm
diff --git a/numpy/polynomial/tests/test_hermite_e.py b/numpy/polynomial/tests/test_hermite_e.py
index 2fcef55da..f7871fe99 100644
--- a/numpy/polynomial/tests/test_hermite_e.py
+++ b/numpy/polynomial/tests/test_hermite_e.py
@@ -1,7 +1,7 @@
"""Tests for hermite_e module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.hermite_e as herme
diff --git a/numpy/polynomial/tests/test_laguerre.py b/numpy/polynomial/tests/test_laguerre.py
index 915234b93..2aabda114 100644
--- a/numpy/polynomial/tests/test_laguerre.py
+++ b/numpy/polynomial/tests/test_laguerre.py
@@ -1,7 +1,7 @@
"""Tests for laguerre module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.laguerre as lag
diff --git a/numpy/polynomial/tests/test_legendre.py b/numpy/polynomial/tests/test_legendre.py
index 500269484..cd3db4e35 100644
--- a/numpy/polynomial/tests/test_legendre.py
+++ b/numpy/polynomial/tests/test_legendre.py
@@ -1,7 +1,7 @@
"""Tests for legendre module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.legendre as leg
diff --git a/numpy/polynomial/tests/test_polynomial.py b/numpy/polynomial/tests/test_polynomial.py
index e8268d25f..c93421c7d 100644
--- a/numpy/polynomial/tests/test_polynomial.py
+++ b/numpy/polynomial/tests/test_polynomial.py
@@ -1,7 +1,7 @@
"""Tests for polynomial module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.polynomial as poly
diff --git a/numpy/polynomial/tests/test_polyutils.py b/numpy/polynomial/tests/test_polyutils.py
index 14bf8bb78..95a8f39bb 100644
--- a/numpy/polynomial/tests/test_polyutils.py
+++ b/numpy/polynomial/tests/test_polyutils.py
@@ -1,7 +1,7 @@
"""Tests for polyutils module.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.polynomial.polyutils as pu
diff --git a/numpy/polynomial/tests/test_printing.py b/numpy/polynomial/tests/test_printing.py
index 889966051..3974620a7 100644
--- a/numpy/polynomial/tests/test_printing.py
+++ b/numpy/polynomial/tests/test_printing.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy.polynomial as poly
from numpy.testing import TestCase, run_module_suite, assert_
diff --git a/numpy/random/__init__.py b/numpy/random/__init__.py
index f005bc15a..fd401a32c 100644
--- a/numpy/random/__init__.py
+++ b/numpy/random/__init__.py
@@ -86,10 +86,10 @@ set_state Set state of generator.
==================== =========================================================
"""
-from __future__ import division
+from __future__ import division, absolute_import
# To get sub-modules
-from info import __doc__, __all__
+from .info import __doc__, __all__
import warnings
from numpy.testing.utils import WarningManager
@@ -98,7 +98,7 @@ warn_ctx = WarningManager()
warn_ctx.__enter__()
try:
warnings.filterwarnings("ignore", message="numpy.ndarray size changed")
- from mtrand import *
+ from .mtrand import *
finally:
warn_ctx.__exit__()
diff --git a/numpy/random/info.py b/numpy/random/info.py
index c886c565e..981c55046 100644
--- a/numpy/random/info.py
+++ b/numpy/random/info.py
@@ -82,7 +82,7 @@ set_state Set state of generator.
==================== =========================================================
"""
-from __future__ import division
+from __future__ import division, absolute_import
depends = ['core']
diff --git a/numpy/random/mtrand/generate_mtrand_c.py b/numpy/random/mtrand/generate_mtrand_c.py
index d6527e695..7bfda22eb 100644
--- a/numpy/random/mtrand/generate_mtrand_c.py
+++ b/numpy/random/mtrand/generate_mtrand_c.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-from __future__ import division
+from __future__ import division, absolute_import
import sys
import re
diff --git a/numpy/random/tests/test_random.py b/numpy/random/tests/test_random.py
index 410456ef4..27e7a3755 100644
--- a/numpy/random/tests/test_random.py
+++ b/numpy/random/tests/test_random.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import TestCase, run_module_suite, assert_,\
assert_raises
diff --git a/numpy/random/tests/test_regression.py b/numpy/random/tests/test_regression.py
index a19974c47..530c45228 100644
--- a/numpy/random/tests/test_regression.py
+++ b/numpy/random/tests/test_regression.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
from numpy.testing import TestCase, run_module_suite, assert_,\
assert_array_equal
diff --git a/numpy/testing/__init__.py b/numpy/testing/__init__.py
index 19b0d2052..cee2d6944 100644
--- a/numpy/testing/__init__.py
+++ b/numpy/testing/__init__.py
@@ -5,13 +5,13 @@ in a single location, so that test scripts can just import it and work right
away.
"""
-from __future__ import division
+from __future__ import division, absolute_import
from unittest import TestCase
-import decorators as dec
-from utils import *
-from numpytest import *
-from nosetester import NoseTester as Tester
-from nosetester import run_module_suite
+from . import decorators as dec
+from .utils import *
+from .numpytest import *
+from .nosetester import NoseTester as Tester
+from .nosetester import run_module_suite
test = Tester().test
diff --git a/numpy/testing/decorators.py b/numpy/testing/decorators.py
index eae9d93b0..6d3da95ed 100644
--- a/numpy/testing/decorators.py
+++ b/numpy/testing/decorators.py
@@ -13,7 +13,7 @@ function name, setup and teardown functions and so on - see
``nose.tools`` for more information.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import warnings
import sys
@@ -210,7 +210,7 @@ def knownfailureif(fail_condition, msg=None):
# Local import to avoid a hard nose dependency and only incur the
# import time overhead at actual test-time.
import nose
- from noseclasses import KnownFailureTest
+ from .noseclasses import KnownFailureTest
def knownfailer(*args, **kwargs):
if fail_val():
raise KnownFailureTest(msg)
@@ -249,7 +249,7 @@ def deprecated(conditional=True):
# Local import to avoid a hard nose dependency and only incur the
# import time overhead at actual test-time.
import nose
- from noseclasses import KnownFailureTest
+ from .noseclasses import KnownFailureTest
def _deprecated_imp(*args, **kwargs):
# Poor man's replacement for the with statement
diff --git a/numpy/testing/noseclasses.py b/numpy/testing/noseclasses.py
index 96c779c2e..f3c15b39d 100644
--- a/numpy/testing/noseclasses.py
+++ b/numpy/testing/noseclasses.py
@@ -4,7 +4,7 @@
# Because this module imports nose directly, it should not
# be used except by nosetester.py to avoid a general NumPy
# dependency on nose.
-from __future__ import division
+from __future__ import division, absolute_import
import os
import doctest
@@ -15,7 +15,7 @@ from nose.plugins.errorclass import ErrorClass, ErrorClassPlugin
from nose.plugins.base import Plugin
from nose.util import src
import numpy
-from nosetester import get_package_name
+from .nosetester import get_package_name
import inspect
# Some of the classes in this module begin with 'Numpy' to clearly distinguish
diff --git a/numpy/testing/nosetester.py b/numpy/testing/nosetester.py
index 7f1292cd8..326c36cac 100644
--- a/numpy/testing/nosetester.py
+++ b/numpy/testing/nosetester.py
@@ -4,7 +4,7 @@ Nose test running.
This module implements ``test()`` and ``bench()`` functions for NumPy modules.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
@@ -216,7 +216,7 @@ class NoseTester(object):
A return value of None means use the nose builtin doctest plugin
"""
- from noseclasses import NumpyDoctest
+ from .noseclasses import NumpyDoctest
return NumpyDoctest()
def prepare_test_args(self, label='fast', verbose=1, extra_argv=None,
@@ -245,7 +245,7 @@ class NoseTester(object):
'--cover-tests', '--cover-erase']
# construct list of plugins
import nose.plugins.builtin
- from noseclasses import KnownFailure, Unplugger
+ from .noseclasses import KnownFailure, Unplugger
plugins = [KnownFailure()]
plugins += [p() for p in nose.plugins.builtin.plugins]
# add doctesting if required
@@ -331,7 +331,7 @@ class NoseTester(object):
# cap verbosity at 3 because nose becomes *very* verbose beyond that
verbose = min(verbose, 3)
- import utils
+ from . import utils
utils.verbose = verbose
if doctests:
@@ -371,7 +371,7 @@ class NoseTester(object):
warnings.filterwarnings("ignore", message="numpy.ufunc size changed")
try:
- from noseclasses import NumpyTestProgram
+ from .noseclasses import NumpyTestProgram
argv, plugins = self.prepare_test_args(label,
verbose, extra_argv, doctests, coverage)
@@ -447,7 +447,7 @@ class NoseTester(object):
nose = import_nose()
# get plugin to disable doctests
- from noseclasses import Unplugger
+ from .noseclasses import Unplugger
add_plugins = [Unplugger('doctest')]
return nose.run(argv=argv, addplugins=add_plugins)
diff --git a/numpy/testing/nulltester.py b/numpy/testing/nulltester.py
index e0c7531b3..0419f9436 100644
--- a/numpy/testing/nulltester.py
+++ b/numpy/testing/nulltester.py
@@ -6,7 +6,7 @@ below requirements.
See pkgtester, nosetester modules
"""
-from __future__ import division
+from __future__ import division, absolute_import
class NullTester(object):
diff --git a/numpy/testing/numpytest.py b/numpy/testing/numpytest.py
index 5259ba773..4e2409e8d 100644
--- a/numpy/testing/numpytest.py
+++ b/numpy/testing/numpytest.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
diff --git a/numpy/testing/print_coercion_tables.py b/numpy/testing/print_coercion_tables.py
index 4982f5602..829ba0a16 100755
--- a/numpy/testing/print_coercion_tables.py
+++ b/numpy/testing/print_coercion_tables.py
@@ -2,7 +2,7 @@
"""Prints type-coercion tables for the built-in NumPy types
"""
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
diff --git a/numpy/testing/tests/test_decorators.py b/numpy/testing/tests/test_decorators.py
index 22d39e9a6..0acf5a11a 100644
--- a/numpy/testing/tests/test_decorators.py
+++ b/numpy/testing/tests/test_decorators.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
from numpy.testing import *
diff --git a/numpy/testing/tests/test_doctesting.py b/numpy/testing/tests/test_doctesting.py
index 58f65aa45..798c0e7e7 100644
--- a/numpy/testing/tests/test_doctesting.py
+++ b/numpy/testing/tests/test_doctesting.py
@@ -1,7 +1,7 @@
""" Doctests for NumPy-specific nose/doctest modifications
"""
-from __future__ import division
+from __future__ import division, absolute_import
# try the #random directive on the output line
def check_random_directive():
diff --git a/numpy/testing/tests/test_utils.py b/numpy/testing/tests/test_utils.py
index 4dd5a8121..f08ca2b12 100644
--- a/numpy/testing/tests/test_utils.py
+++ b/numpy/testing/tests/test_utils.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import warnings
import sys
diff --git a/numpy/testing/utils.py b/numpy/testing/utils.py
index 019adeb27..c08dd0c33 100644
--- a/numpy/testing/utils.py
+++ b/numpy/testing/utils.py
@@ -2,7 +2,7 @@
Utility function to facilitate testing.
"""
-from __future__ import division
+from __future__ import division, absolute_import
import os
import sys
@@ -10,7 +10,7 @@ import re
import operator
import types
import warnings
-from nosetester import import_nose
+from .nosetester import import_nose
__all__ = ['assert_equal', 'assert_almost_equal','assert_approx_equal',
'assert_array_equal', 'assert_array_less', 'assert_string_equal',
diff --git a/numpy/tests/test_ctypeslib.py b/numpy/tests/test_ctypeslib.py
index 9b53ed0c6..cbf8db6a3 100644
--- a/numpy/tests/test_ctypeslib.py
+++ b/numpy/tests/test_ctypeslib.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import sys
diff --git a/numpy/tests/test_matlib.py b/numpy/tests/test_matlib.py
index 0ac49fed3..621563462 100644
--- a/numpy/tests/test_matlib.py
+++ b/numpy/tests/test_matlib.py
@@ -1,4 +1,4 @@
-from __future__ import division
+from __future__ import division, absolute_import
import numpy as np
import numpy.matlib