Skip to content

Commit 4239ef5

Browse files
committed
CLN: move remaning extensions to _libs
1 parent 8d7fa0d commit 4239ef5

31 files changed

+58
-58
lines changed

asv_bench/benchmarks/algorithms.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import pandas as pd
66
from pandas.util import testing as tm
77

8-
for imp in ['pandas.util.hashing', 'pandas.tools.hashing']:
8+
for imp in ['pandas.util', 'pandas.tools.hashing']:
99
try:
1010
hashing = import_module(imp)
1111
break

doc/source/whatsnew/v0.20.0.txt

+6-6
Original file line numberDiff line numberDiff line change
@@ -1230,19 +1230,19 @@ If indicated, a deprecation warning will be issued if you reference theses modul
12301230
"pandas.algos", "pandas._libs.algos", ""
12311231
"pandas.hashtable", "pandas._libs.hashtable", ""
12321232
"pandas.indexes", "pandas.core.indexes", ""
1233-
"pandas.json", "pandas.io.json.libjson", "X"
1234-
"pandas.parser", "pandas.io.libparsers", "X"
1233+
"pandas.json", "pandas._libs.json", "X"
1234+
"pandas.parser", "pandas._libs.parsers", "X"
12351235
"pandas.formats", "pandas.io.formats", ""
12361236
"pandas.sparse", "pandas.core.sparse", ""
12371237
"pandas.tools", "pandas.core.reshape", ""
12381238
"pandas.types", "pandas.core.dtypes", ""
1239-
"pandas.io.sas.saslib", "pandas.io.sas.libsas", ""
1239+
"pandas.io.sas.saslib", "pandas.io.sas._sas", ""
12401240
"pandas._join", "pandas._libs.join", ""
12411241
"pandas._hash", "pandas._libs.hashing", ""
12421242
"pandas._period", "pandas._libs.period", ""
1243-
"pandas._sparse", "pandas.core.sparse.libsparse", ""
1244-
"pandas._testing", "pandas.util._testing", ""
1245-
"pandas._window", "pandas.core.libwindow", ""
1243+
"pandas._sparse", "pandas._libs.sparse", ""
1244+
"pandas._testing", "pandas._libs.testing", ""
1245+
"pandas._window", "pandas._libs.window", ""
12461246

12471247

12481248
Some new subpackages are created with public functionality that is not directly
File renamed without changes.
File renamed without changes.

pandas/_libs/src/ujson/python/ujson.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,14 @@ static struct PyModuleDef moduledef = {
9090
NULL /* m_free */
9191
};
9292

93-
#define PYMODINITFUNC PyMODINIT_FUNC PyInit_libjson(void)
93+
#define PYMODINITFUNC PyMODINIT_FUNC PyInit_json(void)
9494
#define PYMODULE_CREATE() PyModule_Create(&moduledef)
9595
#define MODINITERROR return NULL
9696

9797
#else
9898

99-
#define PYMODINITFUNC PyMODINIT_FUNC initlibjson(void)
100-
#define PYMODULE_CREATE() Py_InitModule("libjson", ujsonMethods)
99+
#define PYMODINITFUNC PyMODINIT_FUNC initjson(void)
100+
#define PYMODULE_CREATE() Py_InitModule("json", ujsonMethods)
101101
#define MODINITERROR return
102102

103103
#endif
File renamed without changes.

pandas/compat/pickle_compat.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ def load_reduce(self):
7171

7272
# 12588, extensions moving
7373
('pandas._sparse', 'BlockIndex'):
74-
('pandas.core.sparse.libsparse', 'BlockIndex'),
74+
('pandas._libs.sparse', 'BlockIndex'),
7575
('pandas.tslib', 'Timestamp'):
7676
('pandas._libs.tslib', 'Timestamp'),
7777
('pandas.tslib', '__nat_unpickle'):

pandas/core/reshape/reshape.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
from pandas.core.sparse.api import SparseDataFrame, SparseSeries
2222
from pandas.core.sparse.array import SparseArray
23-
from pandas.core.sparse.libsparse import IntIndex
23+
from pandas._libs.sparse import IntIndex
2424

2525
from pandas.core.categorical import Categorical, _factorize_from_iterable
2626
from pandas.core.sorting import (get_group_index, get_compressed_ids,

pandas/core/sparse/array.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929
astype_nansafe, find_common_type)
3030
from pandas.core.dtypes.missing import isnull, notnull, na_value_for_dtype
3131

32-
from pandas.core.sparse import libsparse as splib
33-
from pandas.core.sparse.libsparse import SparseIndex, BlockIndex, IntIndex
32+
import pandas._libs.sparse as splib
33+
from pandas._libs.sparse import SparseIndex, BlockIndex, IntIndex
3434
from pandas._libs import index as libindex
3535
import pandas.core.algorithms as algos
3636
import pandas.core.ops as ops

pandas/core/sparse/frame.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
create_block_manager_from_arrays)
2626
import pandas.core.generic as generic
2727
from pandas.core.sparse.series import SparseSeries, SparseArray
28-
from pandas.core.sparse.libsparse import BlockIndex, get_blocks
28+
from pandas._libs.sparse import BlockIndex, get_blocks
2929
from pandas.util._decorators import Appender
3030
import pandas.core.ops as ops
3131

pandas/core/sparse/list.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from pandas.core.dtypes.common import is_scalar
77
from pandas.core.sparse.array import SparseArray
88
from pandas.util._validators import validate_bool_kwarg
9-
from pandas.core.sparse import libsparse as splib
9+
import pandas._libs.sparse as splib
1010

1111

1212
class SparseList(PandasObject):

pandas/core/sparse/series.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
from pandas.core.sparse.array import (
2727
make_sparse, _sparse_array_op, SparseArray,
2828
_make_index)
29-
from pandas.core.sparse.libsparse import BlockIndex, IntIndex
30-
import pandas.core.sparse.libsparse as splib
29+
from pandas._libs.sparse import BlockIndex, IntIndex
30+
import pandas._libs.sparse as splib
3131

3232
from pandas.core.sparse.scipy_sparse import (
3333
_sparse_series_to_coo,

pandas/core/window.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
from pandas.core.base import (PandasObject, SelectionMixin,
3434
GroupByMixin)
3535
import pandas.core.common as com
36-
import pandas.core.libwindow as _window
36+
import pandas._libs.window as _window
3737
from pandas.tseries.offsets import DateOffset
3838
from pandas import compat
3939
from pandas.compat.numpy import function as nv

pandas/io/excel.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from pandas.io.common import (_is_url, _urlopen, _validate_header_arg,
2121
get_filepath_or_buffer, _NA_VALUES)
2222
from pandas.core.indexes.period import Period
23-
from pandas.io.json import libjson
23+
import pandas._libs.json as json
2424
from pandas.compat import (map, zip, reduce, range, lrange, u, add_metaclass,
2525
string_types, OrderedDict)
2626
from pandas.core import config
@@ -1447,7 +1447,7 @@ def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0,
14471447
elif isinstance(cell.val, date):
14481448
num_format_str = self.date_format
14491449

1450-
stylekey = libjson.dumps(cell.style)
1450+
stylekey = json.dumps(cell.style)
14511451
if num_format_str:
14521452
stylekey += num_format_str
14531453

@@ -1575,7 +1575,7 @@ def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0,
15751575
elif isinstance(cell.val, date):
15761576
num_format_str = self.date_format
15771577

1578-
stylekey = libjson.dumps(cell.style)
1578+
stylekey = json.dumps(cell.style)
15791579
if num_format_str:
15801580
stylekey += num_format_str
15811581

pandas/io/json/json.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import os
33
import numpy as np
44

5-
from pandas.io.json import libjson
5+
import pandas._libs.json as json
66
from pandas._libs.tslib import iNaT
77
from pandas.compat import StringIO, long, u
88
from pandas import compat, isnull
@@ -14,8 +14,8 @@
1414
from .table_schema import build_table_schema
1515
from pandas.core.dtypes.common import is_period_dtype
1616

17-
loads = libjson.loads
18-
dumps = libjson.dumps
17+
loads = json.loads
18+
dumps = json.dumps
1919

2020
TABLE_SCHEMA_VERSION = '0.20.0'
2121

pandas/io/parsers.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
from pandas.util._decorators import Appender
4141

4242
import pandas._libs.lib as lib
43-
import pandas.io.libparsers as libparsers
43+
import pandas._libs.parsers as parsers
4444

4545

4646
# BOM character (byte order mark)
@@ -1460,7 +1460,7 @@ def _convert_to_ndarrays(self, dct, na_values, na_fvalues, verbose=False,
14601460

14611461
if issubclass(cvals.dtype.type, np.integer) and self.compact_ints:
14621462
cvals = lib.downcast_int64(
1463-
cvals, libparsers.na_values,
1463+
cvals, parsers.na_values,
14641464
self.use_unsigned)
14651465

14661466
result[c] = cvals
@@ -1579,7 +1579,7 @@ def __init__(self, src, **kwds):
15791579
# #2442
15801580
kwds['allow_leading_cols'] = self.index_col is not False
15811581

1582-
self._reader = libparsers.TextReader(src, **kwds)
1582+
self._reader = parsers.TextReader(src, **kwds)
15831583

15841584
# XXX
15851585
self.usecols, self.usecols_dtype = _validate_usecols_arg(

pandas/io/sas/sas7bdat.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import numpy as np
2121
import struct
2222
import pandas.io.sas.sas_constants as const
23-
from pandas.io.sas.libsas import Parser
23+
from pandas.io.sas._sas import Parser
2424

2525

2626
class _subheader_pointer(object):

pandas/json.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
warnings.warn("The pandas.json module is deprecated and will be "
55
"removed in a future version. Please import from "
66
"the pandas.io.json instead", FutureWarning, stacklevel=2)
7-
from pandas.io.json.libjson import dumps, loads
7+
from pandas._libs.json import dumps, loads

pandas/parser.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
warnings.warn("The pandas.parser module is deprecated and will be "
55
"removed in a future version. Please import from "
66
"the pandas.io.parser instead", FutureWarning, stacklevel=2)
7-
from pandas.io.libparsers import na_values
7+
from pandas._libs.parsers import na_values
88
from pandas.io.common import CParserError

pandas/tests/dtypes/test_io.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def test_convert_sql_column_decimals(self):
7373
tm.assert_numpy_array_equal(result, expected)
7474

7575
def test_convert_downcast_int64(self):
76-
from pandas.io.libparsers import na_values
76+
from pandas._libs.parsers import na_values
7777

7878
arr = np.array([1, 2, 7, 8, 10], dtype=np.int64)
7979
expected = np.array([1, 2, 7, 8, 10], dtype=np.int8)

pandas/tests/io/json/test_ujson.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import decimal
1414
from functools import partial
1515
from pandas.compat import range, zip, StringIO, u
16-
import pandas.io.json.libjson as ujson
16+
import pandas._libs.json as ujson
1717
import pandas.compat as compat
1818

1919
import numpy as np

pandas/tests/io/parser/test_textreader.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222

2323
import pandas.util.testing as tm
2424

25-
from pandas.io.libparsers import TextReader
26-
import pandas.io.libparsers as parser
25+
from pandas._libs.parsers import TextReader
26+
import pandas._libs.parsers as parser
2727

2828

2929
class TestTextReader(object):

pandas/tests/io/test_html.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
is_platform_windows)
2424
from pandas.io.common import URLError, urlopen, file_path_to_url
2525
from pandas.io.html import read_html
26-
from pandas.io.libparsers import ParserError
26+
from pandas._libs.parsers import ParserError
2727

2828
import pandas.util.testing as tm
2929
from pandas.util.testing import makeCustomDataframe as mkdf, network

pandas/tests/sparse/test_array.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
from pandas import _np_version_under1p8
1212
from pandas.core.sparse.api import SparseArray, SparseSeries
13-
from pandas.core.sparse.libsparse import IntIndex
13+
from pandas._libs.sparse import IntIndex
1414
from pandas.util.testing import assert_almost_equal
1515
import pandas.util.testing as tm
1616

pandas/tests/sparse/test_frame.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
from pandas import compat
2222
from pandas.core.sparse import frame as spf
2323

24-
from pandas.core.sparse.libsparse import BlockIndex, IntIndex
24+
from pandas._libs.sparse import BlockIndex, IntIndex
2525
from pandas.core.sparse.api import SparseSeries, SparseDataFrame, SparseArray
2626
from pandas.tests.frame.test_api import SharedWithSparse
2727

pandas/tests/sparse/test_libsparse.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from pandas import compat
99

1010
from pandas.core.sparse.array import IntIndex, BlockIndex, _make_index
11-
import pandas.core.sparse.libsparse as splib
11+
import pandas._libs.sparse as splib
1212

1313
TEST_LENGTH = 20
1414

pandas/tests/sparse/test_series.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
import pandas.core.sparse.frame as spf
1919

20-
from pandas.core.sparse.libsparse import BlockIndex, IntIndex
20+
from pandas._libs.sparse import BlockIndex, IntIndex
2121
from pandas.core.sparse.api import SparseSeries
2222
from pandas.tests.series.test_api import SharedWithSparse
2323

pandas/tests/util/test_hashing.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -274,12 +274,12 @@ def test_deprecation():
274274

275275
with tm.assert_produces_warning(FutureWarning,
276276
check_stacklevel=False):
277-
from pandas.util.hashing import hash_pandas_object
277+
from pandas.tools.hashing import hash_pandas_object
278278
obj = Series(list('abc'))
279279
hash_pandas_object(obj, hash_key='9876543210123456')
280280

281281
with tm.assert_produces_warning(FutureWarning,
282282
check_stacklevel=False):
283-
from pandas.util.hashing import hash_array
283+
from pandas.tools.hashing import hash_array
284284
obj = np.array([1, 2, 3])
285285
hash_array(obj, hash_key='9876543210123456')

pandas/util/testing.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1476,8 +1476,8 @@ def assert_sp_array_equal(left, right, check_dtype=True):
14761476
check_dtype=check_dtype)
14771477

14781478
# SparseIndex comparison
1479-
assert isinstance(left.sp_index, pd.core.sparse.libsparse.SparseIndex)
1480-
assert isinstance(right.sp_index, pd.core.sparse.libsparse.SparseIndex)
1479+
assert isinstance(left.sp_index, pd._libs.sparse.SparseIndex)
1480+
assert isinstance(right.sp_index, pd._libs.sparse.SparseIndex)
14811481

14821482
if not left.sp_index.equals(right.sp_index):
14831483
raise_assert_detail('SparseArray.index', 'index are not equal',

setup.py

+14-14
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ def is_platform_mac():
118118
'hashtable': ['_libs/hashtable_class_helper.pxi.in',
119119
'_libs/hashtable_func_helper.pxi.in'],
120120
'index': ['_libs/index_class_helper.pxi.in'],
121-
'sparse': ['core/sparse/sparse_op_helper.pxi.in'],
121+
'sparse': ['_libs/sparse_op_helper.pxi.in'],
122122
'interval': ['_libs/intervaltree.pxi.in']
123123
}
124124

@@ -339,9 +339,9 @@ class CheckSDist(sdist_class):
339339
'pandas/_libs/interval.pyx',
340340
'pandas/_libs/hashing.pyx',
341341
'pandas/_libs/testing.pyx',
342-
'pandas/core/window.pyx',
343-
'pandas/core/sparse/sparse.pyx',
344-
'pandas/io/parsers.pyx',
342+
'pandas/_libs/window.pyx',
343+
'pandas/_libs/sparse.pyx',
344+
'pandas/_libs/parsers.pyx',
345345
'pandas/io/sas/sas.pyx']
346346

347347
def initialize_options(self):
@@ -513,24 +513,24 @@ def pxd(name):
513513
'_libs.interval': {'pyxfile': '_libs/interval',
514514
'pxdfiles': ['_libs/hashtable'],
515515
'depends': _pxi_dep['interval']},
516-
'core.libwindow': {'pyxfile': 'core/window',
517-
'pxdfiles': ['_libs/src/skiplist', '_libs/src/util'],
518-
'depends': ['pandas/_libs/src/skiplist.pyx',
519-
'pandas/_libs/src/skiplist.h']},
520-
'io.libparsers': {'pyxfile': 'io/parsers',
516+
'_libs.window': {'pyxfile': '_libs/window',
517+
'pxdfiles': ['_libs/src/skiplist', '_libs/src/util'],
518+
'depends': ['pandas/_libs/src/skiplist.pyx',
519+
'pandas/_libs/src/skiplist.h']},
520+
'_libs.parsers': {'pyxfile': '_libs/parsers',
521521
'depends': ['pandas/_libs/src/parser/tokenizer.h',
522522
'pandas/_libs/src/parser/io.h',
523523
'pandas/_libs/src/numpy_helper.h'],
524524
'sources': ['pandas/_libs/src/parser/tokenizer.c',
525525
'pandas/_libs/src/parser/io.c']},
526-
'core.sparse.libsparse': {'pyxfile': 'core/sparse/sparse',
527-
'depends': (['pandas/core/sparse/sparse.pyx'] +
528-
_pxi_dep['sparse'])},
526+
'_libs.sparse': {'pyxfile': '_libs/sparse',
527+
'depends': (['pandas/core/sparse/sparse.pyx'] +
528+
_pxi_dep['sparse'])},
529529
'_libs.testing': {'pyxfile': '_libs/testing',
530530
'depends': ['pandas/_libs/testing.pyx']},
531531
'_libs.hashing': {'pyxfile': '_libs/hashing',
532532
'depends': ['pandas/_libs/hashing.pyx']},
533-
'io.sas.libsas': {'pyxfile': 'io/sas/sas'},
533+
'io.sas._sas': {'pyxfile': 'io/sas/sas'},
534534
}
535535

536536
extensions = []
@@ -596,7 +596,7 @@ def pxd(name):
596596
root, _ = os.path.splitext(ext.sources[0])
597597
ext.sources[0] = root + suffix
598598

599-
ujson_ext = Extension('pandas.io.json.libjson',
599+
ujson_ext = Extension('pandas._libs.json',
600600
depends=['pandas/_libs/src/ujson/lib/ultrajson.h',
601601
'pandas/_libs/src/datetime_helper.h',
602602
'pandas/_libs/src/numpy_helper.h'],

0 commit comments

Comments
 (0)