Skip to content

CLN: PY3 String/BytesIO #25954

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 11 commits into from
Apr 3, 2019
Merged
Show file tree
Hide file tree
Changes from 2 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
9 changes: 1 addition & 8 deletions pandas/_libs/tslibs/parsing.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
"""
Parsing functions for datetime and datetime-like strings.
"""
import sys
import re
import time
from io import StringIO

from cpython.datetime cimport datetime

Expand All @@ -13,13 +13,6 @@ import numpy as np

import six

# Avoid import from outside _libs
if sys.version_info.major == 2:
from StringIO import StringIO
else:
from io import StringIO


# dateutil compat
from dateutil.tz import (tzoffset,
tzlocal as _dateutil_tzlocal,
Expand Down
7 changes: 0 additions & 7 deletions pandas/compat/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,10 @@

try:
import __builtin__ as builtins
# not writeable when instantiated with string, doesn't handle unicode well
from cStringIO import StringIO as cStringIO
# always writeable
from StringIO import StringIO
BytesIO = StringIO
import cPickle
import httplib
except ImportError:
import builtins
from io import StringIO, BytesIO
cStringIO = StringIO
import pickle as cPickle
import http.client as httplib

Expand Down
3 changes: 2 additions & 1 deletion pandas/core/computation/expr.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,14 @@

import ast
from functools import partial, reduce
from io import StringIO
import itertools as it
import operator
import tokenize

import numpy as np

from pandas.compat import StringIO, lmap
from pandas.compat import lmap

import pandas as pd
from pandas import compat
Expand Down
3 changes: 2 additions & 1 deletion pandas/core/frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import collections
from collections import OrderedDict
import functools
from io import StringIO
import itertools
import sys
import warnings
Expand All @@ -34,7 +35,7 @@

from pandas import compat
from pandas.compat import (
PY36, Iterator, StringIO, lmap, lzip, raise_with_traceback)
PY36, Iterator, lmap, lzip, raise_with_traceback)
from pandas.compat.numpy import function as nv
from pandas.core.dtypes.cast import (
maybe_upcast,
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/clipboards.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
""" io on the clipboard """
from io import StringIO
import warnings

import pandas.compat as compat
from pandas.compat import StringIO

from pandas.core.dtypes.generic import ABCDataFrame

Expand Down
2 changes: 1 addition & 1 deletion pandas/io/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import csv
import gzip
from http.client import HTTPException # noqa
from io import BytesIO
import lzma
import mmap
import os
Expand All @@ -16,7 +17,6 @@
import zipfile

import pandas.compat as compat
from pandas.compat import BytesIO
from pandas.errors import ( # noqa
AbstractMethodError, DtypeWarning, EmptyDataError, ParserError,
ParserWarning)
Expand Down
2 changes: 1 addition & 1 deletion pandas/io/formats/csvs.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@
"""

import csv as csvlib
from io import StringIO
import os
import warnings
from zipfile import ZipFile

import numpy as np

from pandas._libs import writers as libwriters
from pandas.compat import StringIO

from pandas.core.dtypes.generic import (
ABCDatetimeIndex, ABCIndexClass, ABCMultiIndex, ABCPeriodIndex)
Expand Down
3 changes: 2 additions & 1 deletion pandas/io/formats/format.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"""

from functools import partial
from io import StringIO
from shutil import get_terminal_size
from unicodedata import east_asian_width

Expand All @@ -15,7 +16,7 @@
from pandas._libs import lib
from pandas._libs.tslib import format_array_from_datetime
from pandas._libs.tslibs import NaT, Timedelta, Timestamp, iNaT
from pandas.compat import StringIO, lzip
from pandas.compat import lzip

from pandas.core.dtypes.common import (
is_categorical_dtype, is_datetime64_dtype, is_datetime64tz_dtype,
Expand Down
3 changes: 2 additions & 1 deletion pandas/io/json/json.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# pylint: disable-msg=E1101,W0613,W0603
from io import StringIO
from itertools import islice
import os

import numpy as np

import pandas._libs.json as json
from pandas._libs.tslibs import iNaT
from pandas.compat import StringIO, to_str
from pandas.compat import to_str
from pandas.errors import AbstractMethodError

from pandas.core.dtypes.common import is_period_dtype
Expand Down
10 changes: 5 additions & 5 deletions pandas/io/packers.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,14 @@
"""

from datetime import date, datetime, timedelta
from io import BytesIO
import os
from textwrap import dedent
import warnings

from dateutil.parser import parse
import numpy as np

import pandas.compat as compat
from pandas.errors import PerformanceWarning
from pandas.util._move import (
BadMove as _BadMove, move_into_mutable_buffer as _move_into_mutable_buffer)
Expand Down Expand Up @@ -150,7 +150,7 @@ def writer(fh):
with open(path_or_buf, mode) as fh:
writer(fh)
elif path_or_buf is None:
buf = compat.BytesIO()
buf = BytesIO()
writer(buf)
return buf.getvalue()
else:
Expand Down Expand Up @@ -207,7 +207,7 @@ def read(fh):
# treat as a binary-like
fh = None
try:
fh = compat.BytesIO(path_or_buf)
fh = BytesIO(path_or_buf)
return read(fh)
finally:
if fh is not None:
Expand Down Expand Up @@ -802,12 +802,12 @@ def __iter__(self):
if path_exists:
fh = open(self.path, 'rb')
else:
fh = compat.BytesIO(self.path)
fh = BytesIO(self.path)

else:

if not hasattr(self.path, 'read'):
fh = compat.BytesIO(self.path)
fh = BytesIO(self.path)

else:

Expand Down
3 changes: 2 additions & 1 deletion pandas/io/parsers.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
from collections import defaultdict
import csv
import datetime
from io import StringIO
import re
import sys
from textwrap import fill
Expand All @@ -17,7 +18,7 @@
import pandas._libs.parsers as parsers
from pandas._libs.tslibs import parsing
import pandas.compat as compat
from pandas.compat import StringIO, lrange, lzip
from pandas.compat import lrange, lzip
from pandas.errors import (
AbstractMethodError, EmptyDataError, ParserError, ParserWarning)
from pandas.util._decorators import Appender
Expand Down
3 changes: 2 additions & 1 deletion pandas/io/pickle.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
""" pickle compat """
from io import BytesIO
import warnings

from numpy.lib.format import read_array

from pandas.compat import BytesIO, cPickle as pkl, pickle_compat as pc
from pandas.compat import cPickle as pkl, pickle_compat as pc

from pandas.io.common import _get_handle, _stringify_path

Expand Down
3 changes: 2 additions & 1 deletion pandas/io/sas/sas_xport.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"""

from datetime import datetime
from io import BytesIO
import struct
import warnings

Expand Down Expand Up @@ -249,7 +250,7 @@ def __init__(self, filepath_or_buffer, index=None, encoding='ISO-8859-1',
contents = contents.encode(self._encoding)
except UnicodeEncodeError:
pass
self.filepath_or_buffer = compat.BytesIO(contents)
self.filepath_or_buffer = BytesIO(contents)

self._read_header()

Expand Down
3 changes: 2 additions & 1 deletion pandas/io/stata.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@

from collections import OrderedDict
import datetime
from io import BytesIO
import os
import struct
import sys
Expand All @@ -23,7 +24,7 @@
from pandas._libs.lib import infer_dtype
from pandas._libs.tslibs import NaT, Timestamp
from pandas._libs.writers import max_len_string_array
from pandas.compat import BytesIO, lmap, lrange, lzip
from pandas.compat import lmap, lrange, lzip
from pandas.util._decorators import Appender, deprecate_kwarg

from pandas.core.dtypes.common import (
Expand Down
3 changes: 2 additions & 1 deletion pandas/tests/dtypes/test_inference.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from datetime import date, datetime, time, timedelta
from decimal import Decimal
from fractions import Fraction
from io import StringIO
from numbers import Number
import re

Expand All @@ -17,7 +18,7 @@
import pytz

from pandas._libs import iNaT, lib, missing as libmissing
from pandas.compat import StringIO, lrange
from pandas.compat import lrange
import pandas.util._test_decorators as td

from pandas.core.dtypes import inference
Expand Down
4 changes: 2 additions & 2 deletions pandas/tests/extension/base/io.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from io import StringIO

import numpy as np
import pytest

from pandas.compat import StringIO

import pandas as pd

from .base import BaseExtensionTests
Expand Down
3 changes: 1 addition & 2 deletions pandas/tests/frame/test_block_internals.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
# -*- coding: utf-8 -*-

from datetime import datetime, timedelta
from io import StringIO
import itertools

import numpy as np
import pytest

from pandas.compat import StringIO

import pandas as pd
from pandas import (
Categorical, DataFrame, Series, Timestamp, compat, date_range,
Expand Down
4 changes: 2 additions & 2 deletions pandas/tests/frame/test_query_eval.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-

from io import StringIO
import operator

import numpy as np
import pytest

from pandas.compat import StringIO, lrange
from pandas.compat import lrange
import pandas.util._test_decorators as td

import pandas as pd
Expand Down
3 changes: 2 additions & 1 deletion pandas/tests/frame/test_replace.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# -*- coding: utf-8 -*-

from datetime import datetime
from io import StringIO
import re

import numpy as np
import pytest

from pandas.compat import StringIO, lrange
from pandas.compat import lrange

import pandas as pd
from pandas import DataFrame, Index, Series, Timestamp, compat, date_range
Expand Down
3 changes: 2 additions & 1 deletion pandas/tests/frame/test_repr_info.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-

from datetime import datetime, timedelta
from io import StringIO
import re
import sys
import textwrap
Expand Down Expand Up @@ -494,7 +495,7 @@ def test_info_categorical_column(self):
df.info(buf=buf)

df2 = df[df['category'] == 'd']
buf = compat.StringIO()
buf = StringIO()
df2.info(buf=buf)

def test_repr_categorical_dates_periods(self):
Expand Down
3 changes: 2 additions & 1 deletion pandas/tests/frame/test_to_csv.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# -*- coding: utf-8 -*-

import csv
from io import StringIO
import os

import numpy as np
import pytest

from pandas.compat import StringIO, lmap, lrange
from pandas.compat import lmap, lrange
from pandas.errors import ParserError

import pandas as pd
Expand Down
9 changes: 4 additions & 5 deletions pandas/tests/groupby/test_apply.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
from datetime import datetime
from io import StringIO

import numpy as np
import pytest
Expand All @@ -24,9 +25,8 @@ def test_apply_issues():
2011.05.18,04:00,1.40750
2011.05.18,05:00,1.40649"""

df = pd.read_csv(
compat.StringIO(s), header=None, names=['date', 'time', 'value'],
parse_dates=[['date', 'time']])
df = pd.read_csv(StringIO(s), header=None, names=['date', 'time', 'value'],
parse_dates=[['date', 'time']])
df = df.set_index('date_time')

expected = df.groupby(df.index.date).idxmax()
Expand All @@ -35,8 +35,7 @@ def test_apply_issues():

# GH 5789
# don't auto coerce dates
df = pd.read_csv(
compat.StringIO(s), header=None, names=['date', 'time', 'value'])
df = pd.read_csv(StringIO(s), header=None, names=['date', 'time', 'value'])
exp_idx = pd.Index(
['2011.05.16', '2011.05.17', '2011.05.18'
], dtype=object, name='date')
Expand Down
Loading