diff --git a/pandas/_libs/algos.pxd b/pandas/_libs/algos.pxd index 5df1e381ea3ce..4bca5b33a3c62 100644 --- a/pandas/_libs/algos.pxd +++ b/pandas/_libs/algos.pxd @@ -1,4 +1,4 @@ -from util cimport numeric +from pandas._libs.util cimport numeric cdef inline Py_ssize_t swap(numeric *a, numeric *b) nogil: diff --git a/pandas/_libs/algos.pyx b/pandas/_libs/algos.pyx index e77899507833f..a064aec492df2 100644 --- a/pandas/_libs/algos.pyx +++ b/pandas/_libs/algos.pyx @@ -19,15 +19,14 @@ from numpy cimport (ndarray, cnp.import_array() -cimport util -from util cimport numeric, get_nat +cimport pandas._libs.util as util +from pandas._libs.util cimport numeric, get_nat -from khash cimport (khiter_t, - kh_destroy_int64, kh_put_int64, - kh_init_int64, kh_int64_t, - kh_resize_int64, kh_get_int64) +from pandas._libs.khash cimport ( + khiter_t, kh_destroy_int64, kh_put_int64, kh_init_int64, kh_int64_t, + kh_resize_int64, kh_get_int64) -import missing +import pandas._libs.missing as missing cdef float64_t FP_ERR = 1e-13 diff --git a/pandas/_libs/groupby.pyx b/pandas/_libs/groupby.pyx index 7c16b29f3e42b..e6036654c71c3 100644 --- a/pandas/_libs/groupby.pyx +++ b/pandas/_libs/groupby.pyx @@ -13,11 +13,13 @@ from numpy cimport (ndarray, cnp.import_array() -from util cimport numeric, get_nat +from pandas._libs.util cimport numeric, get_nat -from algos cimport (swap, TiebreakEnumType, TIEBREAK_AVERAGE, TIEBREAK_MIN, - TIEBREAK_MAX, TIEBREAK_FIRST, TIEBREAK_DENSE) -from algos import take_2d_axis1_float64_float64, groupsort_indexer, tiebreakers +from pandas._libs.algos cimport (swap, TiebreakEnumType, TIEBREAK_AVERAGE, + TIEBREAK_MIN, TIEBREAK_MAX, TIEBREAK_FIRST, + TIEBREAK_DENSE) +from pandas._libs.algos import (take_2d_axis1_float64_float64, + groupsort_indexer, tiebreakers) cdef int64_t NPY_NAT = get_nat() diff --git a/pandas/_libs/hashing.pyx b/pandas/_libs/hashing.pyx index 6e66693decc01..21d6c5378e170 100644 --- a/pandas/_libs/hashing.pyx +++ b/pandas/_libs/hashing.pyx @@ -9,7 +9,7 @@ import numpy as np from numpy cimport uint8_t, uint32_t, uint64_t, import_array import_array() -from util cimport is_nan +from pandas._libs.util cimport is_nan DEF cROUNDS = 2 DEF dROUNDS = 4 diff --git a/pandas/_libs/hashtable.pxd b/pandas/_libs/hashtable.pxd index d735b3c0673b2..609420f429798 100644 --- a/pandas/_libs/hashtable.pxd +++ b/pandas/_libs/hashtable.pxd @@ -1,5 +1,6 @@ -from khash cimport (kh_int64_t, kh_uint64_t, kh_float64_t, kh_pymap_t, - kh_str_t, uint64_t, int64_t, float64_t) +from pandas._libs.khash cimport ( + kh_int64_t, kh_uint64_t, kh_float64_t, kh_pymap_t, kh_str_t, uint64_t, + int64_t, float64_t) from numpy cimport ndarray # prototypes for sharing diff --git a/pandas/_libs/hashtable.pyx b/pandas/_libs/hashtable.pyx index 9aa887727a765..47fa5932290af 100644 --- a/pandas/_libs/hashtable.pyx +++ b/pandas/_libs/hashtable.pyx @@ -16,7 +16,7 @@ cdef extern from "numpy/npy_math.h": float64_t NAN "NPY_NAN" -from khash cimport ( +from pandas._libs.khash cimport ( khiter_t, kh_str_t, kh_init_str, kh_put_str, kh_exist_str, @@ -37,9 +37,9 @@ from khash cimport ( kh_put_pymap, kh_resize_pymap) -cimport util +cimport pandas._libs.util as util -from missing cimport checknull +from pandas._libs.missing cimport checknull cdef int64_t NPY_NAT = util.get_nat() diff --git a/pandas/_libs/index.pyx b/pandas/_libs/index.pyx index d828c3dd8e923..365713d579d60 100644 --- a/pandas/_libs/index.pyx +++ b/pandas/_libs/index.pyx @@ -15,11 +15,11 @@ from numpy cimport (ndarray, intp_t, cnp.import_array() -cimport util +cimport pandas._libs.util as util -from tslibs.conversion cimport maybe_datetimelike_to_i8 +from pandas._libs.tslibs.conversion cimport maybe_datetimelike_to_i8 -from hashtable cimport HashTable +from pandas._libs.hashtable cimport HashTable from pandas._libs import algos, hashtable as _hash from pandas._libs.tslibs import Timestamp, Timedelta, period as periodlib diff --git a/pandas/_libs/internals.pyx b/pandas/_libs/internals.pyx index e0f26357cae6f..72a1cf16f96b6 100644 --- a/pandas/_libs/internals.pyx +++ b/pandas/_libs/internals.pyx @@ -18,7 +18,7 @@ cdef extern from "compat_helper.h": Py_ssize_t *slicelength) except -1 -from algos import ensure_int64 +from pandas._libs.algos import ensure_int64 cdef class BlockPlacement: diff --git a/pandas/_libs/interval.pyx b/pandas/_libs/interval.pyx index 1484a1299b246..3a522baaa92af 100644 --- a/pandas/_libs/interval.pyx +++ b/pandas/_libs/interval.pyx @@ -17,13 +17,13 @@ from numpy cimport ( cnp.import_array() -cimport util +cimport pandas._libs.util as util util.import_array() -from hashtable cimport Int64Vector, Int64VectorData +from pandas._libs.hashtable cimport Int64Vector, Int64VectorData -from tslibs import Timestamp -from tslibs.timezones cimport tz_compare +from pandas._libs.tslibs import Timestamp +from pandas._libs.tslibs.timezones cimport tz_compare _VALID_CLOSED = frozenset(['left', 'right', 'both', 'neither']) diff --git a/pandas/_libs/join.pyx b/pandas/_libs/join.pyx index 54dfeeff1452d..e4440ac3d9fd8 100644 --- a/pandas/_libs/join.pyx +++ b/pandas/_libs/join.pyx @@ -656,7 +656,7 @@ outer_join_indexer_uint64 = outer_join_indexer["uint64_t"] # asof_join_by # ---------------------------------------------------------------------- -from hashtable cimport ( +from pandas._libs.hashtable cimport ( HashTable, PyObjectHashTable, UInt64HashTable, Int64HashTable) ctypedef fused asof_t: diff --git a/pandas/_libs/lib.pyx b/pandas/_libs/lib.pyx index 3bc39979b0fc1..d6e2b9a5288f5 100644 --- a/pandas/_libs/lib.pyx +++ b/pandas/_libs/lib.pyx @@ -49,18 +49,19 @@ cdef extern from "numpy/arrayobject.h": cdef extern from "src/parse_helper.h": int floatify(object, float64_t *result, int *maybe_int) except -1 -cimport util -from util cimport is_nan, UINT64_MAX, INT64_MAX, INT64_MIN - -from tslib import array_to_datetime -from tslibs.nattype cimport NPY_NAT -from tslibs.nattype import NaT -from tslibs.conversion cimport convert_to_tsobject -from tslibs.timedeltas cimport convert_to_timedelta64 -from tslibs.timezones cimport get_timezone, tz_compare - -from missing cimport (checknull, isnaobj, - is_null_datetime64, is_null_timedelta64, is_null_period) +cimport pandas._libs.util as util +from pandas._libs.util cimport is_nan, UINT64_MAX, INT64_MAX, INT64_MIN + +from pandas._libs.tslib import array_to_datetime +from pandas._libs.tslibs.nattype cimport NPY_NAT +from pandas._libs.tslibs.nattype import NaT +from pandas._libs.tslibs.conversion cimport convert_to_tsobject +from pandas._libs.tslibs.timedeltas cimport convert_to_timedelta64 +from pandas._libs.tslibs.timezones cimport get_timezone, tz_compare + +from pandas._libs.missing cimport ( + checknull, isnaobj, is_null_datetime64, is_null_timedelta64, is_null_period +) # constants that will be compared to potentially arbitrarily large diff --git a/pandas/_libs/missing.pyx b/pandas/_libs/missing.pyx index 1fdb04dd10d8e..c7f06bc5d7d4f 100644 --- a/pandas/_libs/missing.pyx +++ b/pandas/_libs/missing.pyx @@ -8,11 +8,12 @@ cimport numpy as cnp from numpy cimport ndarray, int64_t, uint8_t, float64_t cnp.import_array() -cimport util +cimport pandas._libs.util as util -from tslibs.np_datetime cimport get_timedelta64_value, get_datetime64_value -from tslibs.nattype cimport checknull_with_nat -from tslibs.nattype import NaT +from pandas._libs.tslibs.np_datetime cimport ( + get_timedelta64_value, get_datetime64_value) +from pandas._libs.tslibs.nattype cimport checknull_with_nat +from pandas._libs.tslibs.nattype import NaT cdef float64_t INF = np.inf cdef float64_t NEGINF = -INF diff --git a/pandas/_libs/ops.pyx b/pandas/_libs/ops.pyx index e21bce177b38b..fb1d2e379958c 100644 --- a/pandas/_libs/ops.pyx +++ b/pandas/_libs/ops.pyx @@ -12,9 +12,9 @@ from numpy cimport ndarray, uint8_t, import_array import_array() -from util cimport UINT8_MAX, is_nan +from pandas._libs.util cimport UINT8_MAX, is_nan -from missing cimport checknull +from pandas._libs.missing cimport checknull @cython.wraparound(False) diff --git a/pandas/_libs/parsers.pyx b/pandas/_libs/parsers.pyx index a459057555cf3..169aa4ffe72da 100644 --- a/pandas/_libs/parsers.pyx +++ b/pandas/_libs/parsers.pyx @@ -32,10 +32,10 @@ cimport numpy as cnp from numpy cimport ndarray, uint8_t, uint64_t, int64_t, float64_t cnp.import_array() -from util cimport UINT64_MAX, INT64_MAX, INT64_MIN -import lib +from pandas._libs.util cimport UINT64_MAX, INT64_MAX, INT64_MIN +import pandas._libs.lib as lib -from khash cimport ( +from pandas._libs.khash cimport ( khiter_t, kh_str_t, kh_init_str, kh_put_str, kh_exist_str, kh_get_str, kh_destroy_str, diff --git a/pandas/_libs/reduction.pyx b/pandas/_libs/reduction.pyx index a61295f781901..ca39c4de4d309 100644 --- a/pandas/_libs/reduction.pyx +++ b/pandas/_libs/reduction.pyx @@ -15,8 +15,8 @@ from numpy cimport (ndarray, flatiter) cnp.import_array() -cimport util -from lib import maybe_convert_objects +cimport pandas._libs.util as util +from pandas._libs.lib import maybe_convert_objects cdef _get_result_array(object obj, Py_ssize_t size, Py_ssize_t cnt): diff --git a/pandas/_libs/tslib.pyx b/pandas/_libs/tslib.pyx index 3f2b49d141e18..798e338d5581b 100644 --- a/pandas/_libs/tslib.pyx +++ b/pandas/_libs/tslib.pyx @@ -16,36 +16,33 @@ cnp.import_array() import pytz -from util cimport (is_integer_object, is_float_object, is_string_object, - is_datetime64_object) +from pandas._libs.util cimport ( + is_integer_object, is_float_object, is_string_object, is_datetime64_object) -from tslibs.np_datetime cimport (check_dts_bounds, - npy_datetimestruct, - _string_to_dts, - dt64_to_dtstruct, dtstruct_to_dt64, - pydatetime_to_dt64, pydate_to_dt64, - get_datetime64_value) -from tslibs.np_datetime import OutOfBoundsDatetime +from pandas._libs.tslibs.np_datetime cimport ( + check_dts_bounds, npy_datetimestruct, _string_to_dts, dt64_to_dtstruct, + dtstruct_to_dt64, pydatetime_to_dt64, pydate_to_dt64, get_datetime64_value) +from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime -from tslibs.parsing import parse_datetime_string +from pandas._libs.tslibs.parsing import parse_datetime_string -from tslibs.timedeltas cimport cast_from_unit -from tslibs.timezones cimport is_utc, is_tzlocal, get_dst_info -from tslibs.timezones import UTC -from tslibs.conversion cimport (tz_convert_single, _TSObject, - convert_datetime_to_tsobject, - get_datetime64_nanos, - tz_convert_utc_to_tzlocal) +from pandas._libs.tslibs.timedeltas cimport cast_from_unit +from pandas._libs.tslibs.timezones cimport is_utc, is_tzlocal, get_dst_info +from pandas._libs.tslibs.timezones import UTC +from pandas._libs.tslibs.conversion cimport ( + tz_convert_single, _TSObject, convert_datetime_to_tsobject, + get_datetime64_nanos, tz_convert_utc_to_tzlocal) # many modules still look for NaT and iNaT here despite them not being needed -from tslibs.nattype import nat_strings, iNaT # noqa:F821 -from tslibs.nattype cimport checknull_with_nat, NPY_NAT, c_NaT as NaT +from pandas._libs.tslibs.nattype import nat_strings, iNaT # noqa:F821 +from pandas._libs.tslibs.nattype cimport ( + checknull_with_nat, NPY_NAT, c_NaT as NaT) -from tslibs.offsets cimport to_offset +from pandas._libs.tslibs.offsets cimport to_offset -from tslibs.timestamps cimport create_timestamp_from_ts -from tslibs.timestamps import Timestamp +from pandas._libs.tslibs.timestamps cimport create_timestamp_from_ts +from pandas._libs.tslibs.timestamps import Timestamp cdef bint PY2 = str == bytes diff --git a/pandas/_libs/tslibs/ccalendar.pyx b/pandas/_libs/tslibs/ccalendar.pyx index 91e7d83012bad..c48812acd3de1 100644 --- a/pandas/_libs/tslibs/ccalendar.pyx +++ b/pandas/_libs/tslibs/ccalendar.pyx @@ -9,7 +9,7 @@ import cython from numpy cimport int64_t, int32_t from locale import LC_TIME -from strptime import LocaleTime +from pandas._libs.tslibs.strptime import LocaleTime # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/conversion.pxd b/pandas/_libs/tslibs/conversion.pxd index 4eb93c35b4afc..8aca9ca185243 100644 --- a/pandas/_libs/tslibs/conversion.pxd +++ b/pandas/_libs/tslibs/conversion.pxd @@ -4,7 +4,7 @@ from cpython.datetime cimport datetime, tzinfo from numpy cimport int64_t, int32_t -from np_datetime cimport npy_datetimestruct +from pandas._libs.tslibs.np_datetime cimport npy_datetimestruct cdef class _TSObject: diff --git a/pandas/_libs/tslibs/conversion.pyx b/pandas/_libs/tslibs/conversion.pyx index 81f2aeae68136..6e4d79d7b6f9e 100644 --- a/pandas/_libs/tslibs/conversion.pyx +++ b/pandas/_libs/tslibs/conversion.pyx @@ -16,30 +16,28 @@ from cpython.datetime cimport (datetime, tzinfo, PyDateTime_CheckExact, PyDateTime_IMPORT) PyDateTime_IMPORT -from ccalendar import DAY_SECONDS, HOUR_SECONDS - -from np_datetime cimport (check_dts_bounds, - npy_datetimestruct, - pandas_datetime_to_datetimestruct, _string_to_dts, - npy_datetime, - dt64_to_dtstruct, dtstruct_to_dt64, - get_datetime64_unit, get_datetime64_value, - pydatetime_to_dt64, NPY_DATETIMEUNIT, NPY_FR_ns) -from np_datetime import OutOfBoundsDatetime - -from util cimport (is_string_object, - is_datetime64_object, - is_integer_object, is_float_object) - -from timedeltas cimport cast_from_unit -from timezones cimport (is_utc, is_tzlocal, is_fixed_offset, - get_utcoffset, get_dst_info, - get_timezone, maybe_get_tz, tz_compare) -from timezones import UTC -from parsing import parse_datetime_string - -from nattype import nat_strings -from nattype cimport NPY_NAT, checknull_with_nat, c_NaT as NaT +from pandas._libs.tslibs.ccalendar import DAY_SECONDS, HOUR_SECONDS + +from pandas._libs.tslibs.np_datetime cimport ( + check_dts_bounds, npy_datetimestruct, pandas_datetime_to_datetimestruct, + _string_to_dts, npy_datetime, dt64_to_dtstruct, dtstruct_to_dt64, + get_datetime64_unit, get_datetime64_value, pydatetime_to_dt64, + NPY_DATETIMEUNIT, NPY_FR_ns) +from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime + +from pandas._libs.tslibs.util cimport ( + is_string_object, is_datetime64_object, is_integer_object, is_float_object) + +from pandas._libs.tslibs.timedeltas cimport cast_from_unit +from pandas._libs.tslibs.timezones cimport ( + is_utc, is_tzlocal, is_fixed_offset, get_utcoffset, get_dst_info, + get_timezone, maybe_get_tz, tz_compare) +from pandas._libs.tslibs.timezones import UTC +from pandas._libs.tslibs.parsing import parse_datetime_string + +from pandas._libs.tslibs.nattype import nat_strings +from pandas._libs.tslibs.nattype cimport ( + NPY_NAT, checknull_with_nat, c_NaT as NaT) # ---------------------------------------------------------------------- # Constants @@ -1090,7 +1088,7 @@ cdef inline Py_ssize_t bisect_right_i8(int64_t *data, cdef inline str _render_tstamp(int64_t val): """ Helper function to render exception messages""" - from timestamps import Timestamp + from pandas._libs.tslibs.timestamps import Timestamp return str(Timestamp(val)) diff --git a/pandas/_libs/tslibs/fields.pyx b/pandas/_libs/tslibs/fields.pyx index df2a189097b78..5cda7992369fc 100644 --- a/pandas/_libs/tslibs/fields.pyx +++ b/pandas/_libs/tslibs/fields.pyx @@ -12,12 +12,15 @@ cimport numpy as cnp from numpy cimport ndarray, int64_t, int32_t, int8_t cnp.import_array() -from ccalendar import get_locale_names, MONTHS_FULL, DAYS_FULL, DAY_SECONDS -from ccalendar cimport (get_days_in_month, is_leapyear, dayofweek, - get_week_of_year, get_day_of_year) -from np_datetime cimport (npy_datetimestruct, pandas_timedeltastruct, - dt64_to_dtstruct, td64_to_tdstruct) -from nattype cimport NPY_NAT +from pandas._libs.tslibs.ccalendar import ( + get_locale_names, MONTHS_FULL, DAYS_FULL, DAY_SECONDS) +from pandas._libs.tslibs.ccalendar cimport ( + get_days_in_month, is_leapyear, dayofweek, get_week_of_year, + get_day_of_year) +from pandas._libs.tslibs.np_datetime cimport ( + npy_datetimestruct, pandas_timedeltastruct, dt64_to_dtstruct, + td64_to_tdstruct) +from pandas._libs.tslibs.nattype cimport NPY_NAT def get_time_micros(ndarray[int64_t] dtindex): diff --git a/pandas/_libs/tslibs/frequencies.pyx b/pandas/_libs/tslibs/frequencies.pyx index fff4d04399481..bd9e68e134407 100644 --- a/pandas/_libs/tslibs/frequencies.pyx +++ b/pandas/_libs/tslibs/frequencies.pyx @@ -4,9 +4,9 @@ import re cimport numpy as cnp cnp.import_array() -from util cimport is_integer_object, is_string_object +from pandas._libs.tslibs.util cimport is_integer_object, is_string_object -from ccalendar import MONTH_NUMBERS +from pandas._libs.tslibs.ccalendar import MONTH_NUMBERS # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/nattype.pyx b/pandas/_libs/tslibs/nattype.pyx index d61b3aa3135d1..cc06e9857a44f 100644 --- a/pandas/_libs/tslibs/nattype.pyx +++ b/pandas/_libs/tslibs/nattype.pyx @@ -14,10 +14,10 @@ cimport numpy as cnp from numpy cimport int64_t cnp.import_array() -cimport util -from util cimport (get_nat, - is_integer_object, is_float_object, - is_datetime64_object, is_timedelta64_object) +cimport pandas._libs.tslibs.util as util +from pandas._libs.tslibs.util cimport ( + get_nat, is_integer_object, is_float_object, is_datetime64_object, + is_timedelta64_object) # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/offsets.pyx b/pandas/_libs/tslibs/offsets.pyx index 0720f5094fa51..11ce539d25767 100644 --- a/pandas/_libs/tslibs/offsets.pyx +++ b/pandas/_libs/tslibs/offsets.pyx @@ -17,15 +17,16 @@ from numpy cimport int64_t cnp.import_array() -from util cimport is_string_object, is_integer_object - -from ccalendar import MONTHS, DAYS -from ccalendar cimport get_days_in_month, dayofweek -from conversion cimport tz_convert_single, pydt_to_i8, localize_pydatetime -from nattype cimport NPY_NAT -from np_datetime cimport (npy_datetimestruct, - dtstruct_to_dt64, dt64_to_dtstruct) -from timezones import UTC +from pandas._libs.tslibs.util cimport is_string_object, is_integer_object + +from pandas._libs.tslibs.ccalendar import MONTHS, DAYS +from pandas._libs.tslibs.ccalendar cimport get_days_in_month, dayofweek +from pandas._libs.tslibs.conversion cimport ( + tz_convert_single, pydt_to_i8, localize_pydatetime) +from pandas._libs.tslibs.nattype cimport NPY_NAT +from pandas._libs.tslibs.np_datetime cimport ( + npy_datetimestruct, dtstruct_to_dt64, dt64_to_dtstruct) +from pandas._libs.tslibs.timezones import UTC # --------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/parsing.pyx b/pandas/_libs/tslibs/parsing.pyx index 6ec49e4fa92ff..37f11af81dfd6 100644 --- a/pandas/_libs/tslibs/parsing.pyx +++ b/pandas/_libs/tslibs/parsing.pyx @@ -27,8 +27,8 @@ from dateutil.relativedelta import relativedelta from dateutil.parser import DEFAULTPARSER from dateutil.parser import parse as du_parse -from ccalendar import MONTH_NUMBERS -from nattype import nat_strings, NaT +from pandas._libs.tslibs.ccalendar import MONTH_NUMBERS +from pandas._libs.tslibs.nattype import nat_strings, NaT # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/period.pyx b/pandas/_libs/tslibs/period.pyx index 7c7875f2a6a65..483b84940dbc8 100644 --- a/pandas/_libs/tslibs/period.pyx +++ b/pandas/_libs/tslibs/period.pyx @@ -20,37 +20,37 @@ from cpython.datetime cimport (PyDateTime_Check, PyDelta_Check, PyDate_Check, # import datetime C API PyDateTime_IMPORT -from np_datetime cimport (npy_datetimestruct, dtstruct_to_dt64, - dt64_to_dtstruct, - pandas_datetime_to_datetimestruct, - NPY_DATETIMEUNIT, NPY_FR_D) +from pandas._libs.tslibs.np_datetime cimport ( + npy_datetimestruct, dtstruct_to_dt64, dt64_to_dtstruct, + pandas_datetime_to_datetimestruct, NPY_DATETIMEUNIT, NPY_FR_D) cdef extern from "src/datetime/np_datetime.h": int64_t npy_datetimestruct_to_datetime(NPY_DATETIMEUNIT fr, npy_datetimestruct *d) nogil -cimport util -from util cimport is_period_object, is_string_object - -from timestamps import Timestamp -from timezones cimport is_utc, is_tzlocal, get_dst_info -from timedeltas import Timedelta -from timedeltas cimport delta_to_nanoseconds - -cimport ccalendar -from ccalendar cimport dayofweek, get_day_of_year, is_leapyear -from ccalendar import MONTH_NUMBERS -from conversion cimport tz_convert_utc_to_tzlocal -from frequencies cimport (get_freq_code, get_base_alias, - get_to_timestamp_base, get_freq_str, - get_rule_month) -from parsing import parse_time_string -from resolution import Resolution -from nattype import nat_strings -from nattype cimport ( +cimport pandas._libs.tslibs.util as util +from pandas._libs.tslibs.util cimport is_period_object, is_string_object + +from pandas._libs.tslibs.timestamps import Timestamp +from pandas._libs.tslibs.timezones cimport is_utc, is_tzlocal, get_dst_info +from pandas._libs.tslibs.timedeltas import Timedelta +from pandas._libs.tslibs.timedeltas cimport delta_to_nanoseconds + +cimport pandas._libs.tslibs.ccalendar as ccalendar +from pandas._libs.tslibs.ccalendar cimport ( + dayofweek, get_day_of_year, is_leapyear) +from pandas._libs.tslibs.ccalendar import MONTH_NUMBERS +from pandas._libs.tslibs.conversion cimport tz_convert_utc_to_tzlocal +from pandas._libs.tslibs.frequencies cimport ( + get_freq_code, get_base_alias, get_to_timestamp_base, get_freq_str, + get_rule_month) +from pandas._libs.tslibs.parsing import parse_time_string +from pandas._libs.tslibs.resolution import Resolution +from pandas._libs.tslibs.nattype import nat_strings +from pandas._libs.tslibs.nattype cimport ( _nat_scalar_rules, NPY_NAT, is_null_datetimelike, c_NaT as NaT) -from offsets cimport to_offset -from offsets import _Tick +from pandas._libs.tslibs.offsets cimport to_offset +from pandas._libs.tslibs.offsets import _Tick cdef bint PY2 = str == bytes cdef enum: diff --git a/pandas/_libs/tslibs/resolution.pyx b/pandas/_libs/tslibs/resolution.pyx index 3760c88a38c39..f80c1e9841abe 100644 --- a/pandas/_libs/tslibs/resolution.pyx +++ b/pandas/_libs/tslibs/resolution.pyx @@ -3,13 +3,15 @@ import numpy as np from numpy cimport ndarray, int64_t, int32_t -from util cimport is_string_object, get_nat - -from np_datetime cimport npy_datetimestruct, dt64_to_dtstruct -from frequencies cimport get_freq_code -from timezones cimport is_utc, is_tzlocal, maybe_get_tz, get_dst_info -from conversion cimport tz_convert_utc_to_tzlocal -from ccalendar cimport get_days_in_month +from pandas._libs.tslibs.util cimport is_string_object, get_nat + +from pandas._libs.tslibs.np_datetime cimport ( + npy_datetimestruct, dt64_to_dtstruct) +from pandas._libs.tslibs.frequencies cimport get_freq_code +from pandas._libs.tslibs.timezones cimport ( + is_utc, is_tzlocal, maybe_get_tz, get_dst_info) +from pandas._libs.tslibs.conversion cimport tz_convert_utc_to_tzlocal +from pandas._libs.tslibs.ccalendar cimport get_days_in_month # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/strptime.pyx b/pandas/_libs/tslibs/strptime.pyx index 732caf1c0da7f..87658ae92175e 100644 --- a/pandas/_libs/tslibs/strptime.pyx +++ b/pandas/_libs/tslibs/strptime.pyx @@ -27,13 +27,13 @@ import numpy as np from numpy cimport int64_t -from np_datetime cimport (check_dts_bounds, - dtstruct_to_dt64, npy_datetimestruct) +from pandas._libs.tslibs.np_datetime cimport ( + check_dts_bounds, dtstruct_to_dt64, npy_datetimestruct) -from util cimport is_string_object +from pandas._libs.tslibs.util cimport is_string_object -from nattype cimport checknull_with_nat, NPY_NAT -from nattype import nat_strings +from pandas._libs.tslibs.nattype cimport checknull_with_nat, NPY_NAT +from pandas._libs.tslibs.nattype import nat_strings cdef dict _parse_code_table = {'y': 0, 'Y': 1, diff --git a/pandas/_libs/tslibs/timedeltas.pyx b/pandas/_libs/tslibs/timedeltas.pyx index a03f460c9e2d2..037e7de27adc3 100644 --- a/pandas/_libs/tslibs/timedeltas.pyx +++ b/pandas/_libs/tslibs/timedeltas.pyx @@ -22,19 +22,20 @@ from cpython.datetime cimport (datetime, timedelta, PyDateTime_IMPORT -cimport util -from util cimport (is_timedelta64_object, is_datetime64_object, - is_integer_object, is_float_object, - is_string_object) +cimport pandas._libs.tslibs.util as util +from pandas._libs.tslibs.util cimport ( + is_timedelta64_object, is_datetime64_object, is_integer_object, + is_float_object, is_string_object) -from ccalendar import DAY_SECONDS +from pandas._libs.tslibs.ccalendar import DAY_SECONDS -from np_datetime cimport (cmp_scalar, reverse_ops, td64_to_tdstruct, - pandas_timedeltastruct) +from pandas._libs.tslibs.np_datetime cimport ( + cmp_scalar, reverse_ops, td64_to_tdstruct, pandas_timedeltastruct) -from nattype import nat_strings -from nattype cimport checknull_with_nat, NPY_NAT, c_NaT as NaT -from offsets cimport to_offset +from pandas._libs.tslibs.nattype import nat_strings +from pandas._libs.tslibs.nattype cimport ( + checknull_with_nat, NPY_NAT, c_NaT as NaT) +from pandas._libs.tslibs.offsets cimport to_offset # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/timestamps.pxd b/pandas/_libs/tslibs/timestamps.pxd index a162799828cba..b7282e02ff117 100644 --- a/pandas/_libs/tslibs/timestamps.pxd +++ b/pandas/_libs/tslibs/timestamps.pxd @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- from numpy cimport int64_t -from np_datetime cimport npy_datetimestruct +from pandas._libs.tslibs.np_datetime cimport npy_datetimestruct cdef object create_timestamp_from_ts(int64_t value, npy_datetimestruct dts, diff --git a/pandas/_libs/tslibs/timestamps.pyx b/pandas/_libs/tslibs/timestamps.pyx index eda2b2fb6ca98..4761c7ff1f4eb 100644 --- a/pandas/_libs/tslibs/timestamps.pyx +++ b/pandas/_libs/tslibs/timestamps.pyx @@ -15,26 +15,29 @@ from cpython.datetime cimport (datetime, PyDateTime_IMPORT) PyDateTime_IMPORT -from util cimport (is_datetime64_object, is_timedelta64_object, - is_integer_object, is_string_object, is_array, - is_offset_object) - -cimport ccalendar -from ccalendar import DAY_SECONDS -from conversion import tz_localize_to_utc, normalize_i8_timestamps -from conversion cimport (tz_convert_single, _TSObject, - convert_to_tsobject, convert_datetime_to_tsobject) -from fields import get_start_end_field, get_date_name_field -from nattype cimport NPY_NAT, c_NaT as NaT -from np_datetime import OutOfBoundsDatetime -from np_datetime cimport (reverse_ops, cmp_scalar, check_dts_bounds, - npy_datetimestruct, dt64_to_dtstruct) -from offsets cimport to_offset -from timedeltas import Timedelta -from timedeltas cimport delta_to_nanoseconds -from timezones cimport ( +from pandas._libs.tslibs.util cimport ( + is_datetime64_object, is_timedelta64_object, is_integer_object, + is_string_object, is_array, is_offset_object) + +cimport pandas._libs.tslibs.ccalendar as ccalendar +from pandas._libs.tslibs.ccalendar import DAY_SECONDS +from pandas._libs.tslibs.conversion import ( + tz_localize_to_utc, normalize_i8_timestamps) +from pandas._libs.tslibs.conversion cimport ( + tz_convert_single, _TSObject, convert_to_tsobject, + convert_datetime_to_tsobject) +from pandas._libs.tslibs.fields import get_start_end_field, get_date_name_field +from pandas._libs.tslibs.nattype cimport NPY_NAT, c_NaT as NaT +from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime +from pandas._libs.tslibs.np_datetime cimport ( + reverse_ops, cmp_scalar, check_dts_bounds, npy_datetimestruct, + dt64_to_dtstruct) +from pandas._libs.tslibs.offsets cimport to_offset +from pandas._libs.tslibs.timedeltas import Timedelta +from pandas._libs.tslibs.timedeltas cimport delta_to_nanoseconds +from pandas._libs.tslibs.timezones cimport ( get_timezone, is_utc, maybe_get_tz, treat_tz_as_pytz, tz_compare) -from timezones import UTC +from pandas._libs.tslibs.timezones import UTC # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/timezones.pyx b/pandas/_libs/tslibs/timezones.pyx index b67aab1452ebd..43a35d77dd127 100644 --- a/pandas/_libs/tslibs/timezones.pyx +++ b/pandas/_libs/tslibs/timezones.pyx @@ -19,7 +19,8 @@ from numpy cimport int64_t cnp.import_array() # ---------------------------------------------------------------------- -from util cimport is_string_object, is_integer_object, get_nat +from pandas._libs.tslibs.util cimport ( + is_string_object, is_integer_object, get_nat) cdef int64_t NPY_NAT = get_nat() diff --git a/pandas/_libs/util.pxd b/pandas/_libs/util.pxd index e05795d74c503..05a013ec0d7c9 100644 --- a/pandas/_libs/util.pxd +++ b/pandas/_libs/util.pxd @@ -1,4 +1,4 @@ -from tslibs.util cimport * +from pandas._libs.tslibs.util cimport * from cython cimport Py_ssize_t diff --git a/pandas/_libs/window.pyx b/pandas/_libs/window.pyx index f517e0933264a..5f2c0233a0f13 100644 --- a/pandas/_libs/window.pyx +++ b/pandas/_libs/window.pyx @@ -19,12 +19,12 @@ cdef extern from "src/headers/cmath" namespace "std": int signbit(float64_t) nogil float64_t sqrt(float64_t x) nogil -cimport util -from util cimport numeric +cimport pandas._libs.util as util +from pandas._libs.util cimport numeric -from skiplist cimport (skiplist_t, - skiplist_init, skiplist_destroy, - skiplist_get, skiplist_insert, skiplist_remove) +from pandas._libs.skiplist cimport ( + skiplist_t, skiplist_init, skiplist_destroy, skiplist_get, skiplist_insert, + skiplist_remove) cdef float32_t MINfloat32 = np.NINF cdef float64_t MINfloat64 = np.NINF