Skip to content

de-privatize imported names #36259

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Sep 11, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pandas/compat/numpy/function.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
from distutils.version import LooseVersion
from typing import Any, Dict, Optional, Union

from numpy import __version__ as _np_version, ndarray
from numpy import __version__, ndarray

from pandas._libs.lib import is_bool, is_integer
from pandas.errors import UnsupportedFunctionCall
Expand Down Expand Up @@ -122,7 +122,7 @@ def validate_argmax_with_skipna(skipna, args, kwargs):
ARGSORT_DEFAULTS["kind"] = "quicksort"
ARGSORT_DEFAULTS["order"] = None

if LooseVersion(_np_version) >= LooseVersion("1.17.0"):
if LooseVersion(__version__) >= LooseVersion("1.17.0"):
# GH-26361. NumPy added radix sort and changed default to None.
ARGSORT_DEFAULTS["kind"] = None

Expand Down
6 changes: 3 additions & 3 deletions pandas/core/algorithms.py
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@ def _get_values_for_rank(values):
return values


def _get_data_algo(values):
def get_data_algo(values):
values = _get_values_for_rank(values)

ndtype = _check_object_for_strings(values)
Expand Down Expand Up @@ -491,7 +491,7 @@ def factorize_array(
codes : ndarray
uniques : ndarray
"""
hash_klass, values = _get_data_algo(values)
hash_klass, values = get_data_algo(values)

table = hash_klass(size_hint or len(values))
uniques, codes = table.factorize(
Expand Down Expand Up @@ -2086,7 +2086,7 @@ def sort_mixed(values):

if sorter is None:
# mixed types
hash_klass, values = _get_data_algo(values)
hash_klass, values = get_data_algo(values)
t = hash_klass(len(values))
t.map_locations(values)
sorter = ensure_platform_int(t.lookup(ordered))
Expand Down
6 changes: 3 additions & 3 deletions pandas/core/arrays/categorical.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
from pandas.core import ops
from pandas.core.accessor import PandasDelegate, delegate_names
import pandas.core.algorithms as algorithms
from pandas.core.algorithms import _get_data_algo, factorize, take_1d, unique1d
from pandas.core.algorithms import factorize, get_data_algo, take_1d, unique1d
from pandas.core.arrays._mixins import NDArrayBackedExtensionArray
from pandas.core.base import ExtensionArray, NoNewAttributesMixin, PandasObject
import pandas.core.common as com
Expand Down Expand Up @@ -2531,8 +2531,8 @@ def _get_codes_for_values(values, categories):

# Only hit here when we've already coerced to object dtypee.

hash_klass, vals = _get_data_algo(values)
_, cats = _get_data_algo(categories)
hash_klass, vals = get_data_algo(values)
_, cats = get_data_algo(categories)
t = hash_klass(len(cats))
t.map_locations(cats)
return coerce_indexer_dtype(t.lookup(vals), cats)
Expand Down
20 changes: 10 additions & 10 deletions pandas/core/ops/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -324,12 +324,12 @@ def _align_method_SERIES(left: "Series", right, align_asobject: bool = False):
return left, right


def _arith_method_SERIES(cls, op, special):
def arith_method_SERIES(cls, op, special):
"""
Wrapper function for Series arithmetic operations, to avoid
code duplication.
"""
assert special # non-special uses _flex_method_SERIES
assert special # non-special uses flex_method_SERIES
op_name = _get_op_name(op, special)

@unpack_zerodim_and_defer(op_name)
Expand All @@ -348,12 +348,12 @@ def wrapper(left, right):
return wrapper


def _comp_method_SERIES(cls, op, special):
def comp_method_SERIES(cls, op, special):
"""
Wrapper function for Series arithmetic operations, to avoid
code duplication.
"""
assert special # non-special uses _flex_method_SERIES
assert special # non-special uses flex_method_SERIES
op_name = _get_op_name(op, special)

@unpack_zerodim_and_defer(op_name)
Expand All @@ -375,12 +375,12 @@ def wrapper(self, other):
return wrapper


def _bool_method_SERIES(cls, op, special):
def bool_method_SERIES(cls, op, special):
"""
Wrapper function for Series arithmetic operations, to avoid
code duplication.
"""
assert special # non-special uses _flex_method_SERIES
assert special # non-special uses flex_method_SERIES
op_name = _get_op_name(op, special)

@unpack_zerodim_and_defer(op_name)
Expand All @@ -398,7 +398,7 @@ def wrapper(self, other):
return wrapper


def _flex_method_SERIES(cls, op, special):
def flex_method_SERIES(cls, op, special):
assert not special # "special" also means "not flex"
name = _get_op_name(op, special)
doc = _make_flex_doc(name, "series")
Expand Down Expand Up @@ -614,7 +614,7 @@ def _maybe_align_series_as_frame(frame: "DataFrame", series: "Series", axis: int
return type(frame)(rvalues, index=frame.index, columns=frame.columns)


def _arith_method_FRAME(cls: Type["DataFrame"], op, special: bool):
def arith_method_FRAME(cls: Type["DataFrame"], op, special: bool):
# This is the only function where `special` can be either True or False
op_name = _get_op_name(op, special)
default_axis = _get_frame_op_default_axis(op_name)
Expand Down Expand Up @@ -666,7 +666,7 @@ def f(self, other, axis=default_axis, level=None, fill_value=None):
return f


def _flex_comp_method_FRAME(cls: Type["DataFrame"], op, special: bool):
def flex_comp_method_FRAME(cls: Type["DataFrame"], op, special: bool):
assert not special # "special" also means "not flex"
op_name = _get_op_name(op, special)
default_axis = _get_frame_op_default_axis(op_name)
Expand All @@ -690,7 +690,7 @@ def f(self, other, axis=default_axis, level=None):
return f


def _comp_method_FRAME(cls: Type["DataFrame"], op, special: bool):
def comp_method_FRAME(cls: Type["DataFrame"], op, special: bool):
assert special # "special" also means "not flex"
op_name = _get_op_name(op, special)

Expand Down
34 changes: 17 additions & 17 deletions pandas/core/ops/methods.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,28 +44,28 @@ def _get_method_wrappers(cls):
# TODO: make these non-runtime imports once the relevant functions
# are no longer in __init__
from pandas.core.ops import (
_arith_method_FRAME,
_arith_method_SERIES,
_bool_method_SERIES,
_comp_method_FRAME,
_comp_method_SERIES,
_flex_comp_method_FRAME,
_flex_method_SERIES,
arith_method_FRAME,
arith_method_SERIES,
bool_method_SERIES,
comp_method_FRAME,
comp_method_SERIES,
flex_comp_method_FRAME,
flex_method_SERIES,
)

if issubclass(cls, ABCSeries):
# Just Series
arith_flex = _flex_method_SERIES
comp_flex = _flex_method_SERIES
arith_special = _arith_method_SERIES
comp_special = _comp_method_SERIES
bool_special = _bool_method_SERIES
arith_flex = flex_method_SERIES
comp_flex = flex_method_SERIES
arith_special = arith_method_SERIES
comp_special = comp_method_SERIES
bool_special = bool_method_SERIES
elif issubclass(cls, ABCDataFrame):
arith_flex = _arith_method_FRAME
comp_flex = _flex_comp_method_FRAME
arith_special = _arith_method_FRAME
comp_special = _comp_method_FRAME
bool_special = _arith_method_FRAME
arith_flex = arith_method_FRAME
comp_flex = flex_comp_method_FRAME
arith_special = arith_method_FRAME
comp_special = comp_method_FRAME
bool_special = arith_method_FRAME
return arith_flex, comp_flex, arith_special, comp_special, bool_special


Expand Down
8 changes: 4 additions & 4 deletions pandas/io/excel/__init__.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
from pandas.io.excel._base import ExcelFile, ExcelWriter, read_excel
from pandas.io.excel._odswriter import _ODSWriter
from pandas.io.excel._openpyxl import _OpenpyxlWriter
from pandas.io.excel._odswriter import ODSWriter as _ODSWriter
from pandas.io.excel._openpyxl import OpenpyxlWriter as _OpenpyxlWriter
from pandas.io.excel._util import register_writer
from pandas.io.excel._xlsxwriter import _XlsxWriter
from pandas.io.excel._xlwt import _XlwtWriter
from pandas.io.excel._xlsxwriter import XlsxWriter as _XlsxWriter
from pandas.io.excel._xlwt import XlwtWriter as _XlwtWriter

__all__ = ["read_excel", "ExcelWriter", "ExcelFile"]

Expand Down
16 changes: 8 additions & 8 deletions pandas/io/excel/_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -844,16 +844,16 @@ class ExcelFile:
- ``pyxlsb`` supports Binary Excel files.
"""

from pandas.io.excel._odfreader import _ODFReader
from pandas.io.excel._openpyxl import _OpenpyxlReader
from pandas.io.excel._pyxlsb import _PyxlsbReader
from pandas.io.excel._xlrd import _XlrdReader
from pandas.io.excel._odfreader import ODFReader
from pandas.io.excel._openpyxl import OpenpyxlReader
from pandas.io.excel._pyxlsb import PyxlsbReader
from pandas.io.excel._xlrd import XlrdReader

_engines: Mapping[str, Any] = {
"xlrd": _XlrdReader,
"openpyxl": _OpenpyxlReader,
"odf": _ODFReader,
"pyxlsb": _PyxlsbReader,
"xlrd": XlrdReader,
"openpyxl": OpenpyxlReader,
"odf": ODFReader,
"pyxlsb": PyxlsbReader,
}

def __init__(
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_odfreader.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from pandas.io.excel._base import BaseExcelReader


class _ODFReader(BaseExcelReader):
class ODFReader(BaseExcelReader):
"""
Read tables out of OpenDocument formatted files.

Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_odswriter.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from pandas.io.formats.excel import ExcelCell


class _ODSWriter(ExcelWriter):
class ODSWriter(ExcelWriter):
engine = "odf"
supported_extensions = (".ods",)

Expand Down
4 changes: 2 additions & 2 deletions pandas/io/excel/_openpyxl.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
from openpyxl.descriptors.serialisable import Serialisable


class _OpenpyxlWriter(ExcelWriter):
class OpenpyxlWriter(ExcelWriter):
engine = "openpyxl"
supported_extensions = (".xlsx", ".xlsm")

Expand Down Expand Up @@ -438,7 +438,7 @@ def write_cells(
setattr(xcell, k, v)


class _OpenpyxlReader(BaseExcelReader):
class OpenpyxlReader(BaseExcelReader):
def __init__(
self,
filepath_or_buffer: FilePathOrBuffer,
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_pyxlsb.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from pandas.io.excel._base import BaseExcelReader


class _PyxlsbReader(BaseExcelReader):
class PyxlsbReader(BaseExcelReader):
def __init__(
self,
filepath_or_buffer: FilePathOrBuffer,
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_xlrd.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from pandas.io.excel._base import BaseExcelReader


class _XlrdReader(BaseExcelReader):
class XlrdReader(BaseExcelReader):
def __init__(self, filepath_or_buffer, storage_options: StorageOptions = None):
"""
Reader using xlrd engine.
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_xlsxwriter.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ def convert(cls, style_dict, num_format_str=None):
return props


class _XlsxWriter(ExcelWriter):
class XlsxWriter(ExcelWriter):
engine = "xlsxwriter"
supported_extensions = (".xlsx",)

Expand Down
2 changes: 1 addition & 1 deletion pandas/io/excel/_xlwt.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from xlwt import XFStyle


class _XlwtWriter(ExcelWriter):
class XlwtWriter(ExcelWriter):
engine = "xlwt"
supported_extensions = (".xls",)

Expand Down
5 changes: 3 additions & 2 deletions pandas/util/_test_decorators.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ def test_foo():

from pandas.compat import IS64, is_platform_windows
from pandas.compat._optional import import_optional_dependency
from pandas.compat.numpy import _np_version

from pandas.core.computation.expressions import NUMEXPR_INSTALLED, USE_NUMEXPR

Expand Down Expand Up @@ -205,7 +204,9 @@ def skip_if_no(package: str, min_version: Optional[str] = None):
def skip_if_np_lt(ver_str: str, *args, reason: Optional[str] = None):
if reason is None:
reason = f"NumPy {ver_str} or greater required"
return pytest.mark.skipif(_np_version < LooseVersion(ver_str), *args, reason=reason)
return pytest.mark.skipif(
np.__version__ < LooseVersion(ver_str), *args, reason=reason
)


def parametrize_fixture_doc(*args):
Expand Down