From d55f9ba8e8e394b60821ec50d3290b3a297b672b Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 25 Oct 2022 14:31:28 -0700 Subject: [PATCH 1/2] DEPR: Remove SparseDataFrame/Series pickle compat --- pandas/compat/pickle_compat.py | 71 +----------------- .../0.20.3/0.20.3_x86_64_darwin_3.5.2.pickle | Bin 127923 -> 0 bytes .../0.20.3/0.20.3_x86_64_darwin_3.5.6.pickle | Bin 127244 -> 0 bytes .../data/pickle/sparseframe-0.20.3.pickle.gz | Bin 625 -> 0 bytes .../data/pickle/sparseseries-0.20.3.pickle.gz | Bin 521 -> 0 bytes pandas/tests/io/test_pickle.py | 22 ------ 6 files changed, 1 insertion(+), 92 deletions(-) delete mode 100644 pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.2.pickle delete mode 100644 pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.6.pickle delete mode 100644 pandas/tests/io/data/pickle/sparseframe-0.20.3.pickle.gz delete mode 100644 pandas/tests/io/data/pickle/sparseseries-0.20.3.pickle.gz diff --git a/pandas/compat/pickle_compat.py b/pandas/compat/pickle_compat.py index c233e3d8a4892..051aa5c337782 100644 --- a/pandas/compat/pickle_compat.py +++ b/pandas/compat/pickle_compat.py @@ -7,11 +7,7 @@ import copy import io import pickle as pkl -from typing import ( - TYPE_CHECKING, - Generator, -) -import warnings +from typing import Generator import numpy as np @@ -26,12 +22,6 @@ ) from pandas.core.internals import BlockManager -if TYPE_CHECKING: - from pandas import ( - DataFrame, - Series, - ) - def load_reduce(self): stack = self.stack @@ -68,49 +58,6 @@ def load_reduce(self): raise -_sparse_msg = """\ - -Loading a saved '{cls}' as a {new} with sparse values. -'{cls}' is now removed. You should re-save this dataset in its new format. -""" - - -class _LoadSparseSeries: - # To load a SparseSeries as a Series[Sparse] - - # https://github.com/python/mypy/issues/1020 - # error: Incompatible return type for "__new__" (returns "Series", but must return - # a subtype of "_LoadSparseSeries") - def __new__(cls) -> Series: # type: ignore[misc] - from pandas import Series - - warnings.warn( - _sparse_msg.format(cls="SparseSeries", new="Series"), - FutureWarning, - stacklevel=6, - ) - - return Series(dtype=object) - - -class _LoadSparseFrame: - # To load a SparseDataFrame as a DataFrame[Sparse] - - # https://github.com/python/mypy/issues/1020 - # error: Incompatible return type for "__new__" (returns "DataFrame", but must - # return a subtype of "_LoadSparseFrame") - def __new__(cls) -> DataFrame: # type: ignore[misc] - from pandas import DataFrame - - warnings.warn( - _sparse_msg.format(cls="SparseDataFrame", new="DataFrame"), - FutureWarning, - stacklevel=6, - ) - - return DataFrame() - - # If classes are moved, provide compat here. _class_locations_map = { ("pandas.core.sparse.array", "SparseArray"): ("pandas.core.arrays", "SparseArray"), @@ -144,14 +91,6 @@ def __new__(cls) -> DataFrame: # type: ignore[misc] "pandas.core.arrays.sparse", "SparseArray", ), - ("pandas.sparse.series", "SparseSeries"): ( - "pandas.compat.pickle_compat", - "_LoadSparseSeries", - ), - ("pandas.sparse.frame", "SparseDataFrame"): ( - "pandas.core.sparse.frame", - "_LoadSparseFrame", - ), ("pandas.indexes.base", "_new_Index"): ("pandas.core.indexes.base", "_new_Index"), ("pandas.indexes.base", "Index"): ("pandas.core.indexes.base", "Index"), ("pandas.indexes.numeric", "Int64Index"): ( @@ -183,14 +122,6 @@ def __new__(cls) -> DataFrame: # type: ignore[misc] "pandas.core.indexes.numeric", "Float64Index", ), - ("pandas.core.sparse.series", "SparseSeries"): ( - "pandas.compat.pickle_compat", - "_LoadSparseSeries", - ), - ("pandas.core.sparse.frame", "SparseDataFrame"): ( - "pandas.compat.pickle_compat", - "_LoadSparseFrame", - ), } diff --git a/pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.2.pickle b/pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.2.pickle deleted file mode 100644 index 9777319465de6a012f3d071e436bc07600ee66ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 127923 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 i8BBV#_=OGTt4c`=(()~UF diff --git a/pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.6.pickle b/pandas/tests/io/data/legacy_pickle/0.20.3/0.20.3_x86_64_darwin_3.5.6.pickle deleted file mode 100644 index 88bb6989f5b088e55cdfde2423eb9f0b6d393bb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 127244 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 G`2PT0b>sN} diff --git a/pandas/tests/io/data/pickle/sparseframe-0.20.3.pickle.gz b/pandas/tests/io/data/pickle/sparseframe-0.20.3.pickle.gz deleted file mode 100644 index f4ff0dbaa1ff92bce1b6be92058373060b67c571..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 625 zcmV-%0*?J3iwFoa=zv`U|8sC*a&u*7a$#*{Uob8*FfKDLaA{*}Y-IqQRNre8K@h%6 z@6!6Slu(F>AP5qb9v1rGL!q=Oiam_9KFhL~+jNg!E@5|14OrBNR)htGjDLy$oNqe2 zx6x~i2yP(z<7VdjzMYwUAAJ25cy{Ram=-COQGX;@B*#=p77YX)GSI6p>~^0j`q-XK z;ob*0g^pe(vP{%u4Ek#2LY&JrlCl9Ub45i zSuJV*E%bW5gC98TU%aCr`DC>CyP*9&V7S*oVXmuJo}(9E(>E5$6tp-tI*-g;*A_}e zg+f#vNHrQm9Po{vSunocLP_d?^h0dDT-Mm8sHdrq2Xq;+rm zRVjH5H!r!_m6!(#p1k|+>aFD{kvvPJb$w(&&_pp{NQiY5C4yr&EpzxVcPlnV!yjsT>L&YaW`fK z^>2p(Y!QYcJ#{dSP=Y(y}Oc>8Fp5I z%TVT7pV@LUU%ACcc}{HnTCoJgJ~Ed~GgmK6nM6MU LLm3IRz61aOFitCK diff --git a/pandas/tests/io/data/pickle/sparseseries-0.20.3.pickle.gz b/pandas/tests/io/data/pickle/sparseseries-0.20.3.pickle.gz deleted file mode 100644 index b299e7d85808e540bff2ea5a9d688a677677289f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 521 zcmV+k0`~nMiwFoU=zv`U|8sC*a&u*KWpZg{b6+qnGB7SPE^ujMYiwlzZBk8d)G!d; zQ17+^Dj}++%cVj>NZSJum0HAs9%v5;B68@SE6dKBbwt)1`2*NPRXDT=$+r&wl^cwm z1Z_(lDU+GJ@w|C6-^j0nwO%~_an00}nY37Fk(!!mgGT6581VNe(VsN#73_Y8GZ_1I zY89+EStX9DMe*qa zQ*0)5Q*3++esn!)D!vMna%Kcpqe^_C??Mdm*E{KunyFcUo&?)LLlb>tnYNJiJTZ1r zLqB2E*0@ZDw9Dye^?)soza>vuZ LQ#LY-Kmz~(w%YyQ diff --git a/pandas/tests/io/test_pickle.py b/pandas/tests/io/test_pickle.py index d78cb9e46cd1a..5115a33694207 100644 --- a/pandas/tests/io/test_pickle.py +++ b/pandas/tests/io/test_pickle.py @@ -254,28 +254,6 @@ def test_pickle_path_localpath(): tm.assert_frame_equal(df, result) -@pytest.mark.parametrize("typ", ["sparseseries", "sparseframe"]) -def test_legacy_sparse_warning(datapath, typ): - """ - - Generated with - - >>> df = pd.DataFrame({"A": [1, 2, 3, 4], "B": [0, 0, 1, 1]}).to_sparse() - >>> df.to_pickle("pandas/tests/io/data/pickle/sparseframe-0.20.3.pickle.gz", - ... compression="gzip") - - >>> s = df['B'] - >>> s.to_pickle("pandas/tests/io/data/pickle/sparseseries-0.20.3.pickle.gz", - ... compression="gzip") - """ - with tm.assert_produces_warning(FutureWarning): - simplefilter("ignore", DeprecationWarning) # from boto - pd.read_pickle( - datapath("io", "data", "pickle", f"{typ}-0.20.3.pickle.gz"), - compression="gzip", - ) - - # --------------------- # test pickle compression # --------------------- From bb91105912cdd6fdf4ab79ffae4b58f5e469a1ec Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 26 Oct 2022 10:28:50 -0700 Subject: [PATCH 2/2] Add to whatsnew --- doc/source/whatsnew/v2.0.0.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/source/whatsnew/v2.0.0.rst b/doc/source/whatsnew/v2.0.0.rst index 8a628dbce3ca7..5d830afc9f74a 100644 --- a/doc/source/whatsnew/v2.0.0.rst +++ b/doc/source/whatsnew/v2.0.0.rst @@ -225,7 +225,7 @@ Removal of prior version deprecations/changes - Removed ``pandas.util.testing`` in favor of ``pandas.testing`` (:issue:`30745`) - Removed :meth:`Series.str.__iter__` (:issue:`28277`) - Removed ``pandas.SparseArray`` in favor of :class:`arrays.SparseArray` (:issue:`30642`) -- Removed ``pandas.SparseSeries`` and ``pandas.SparseDataFrame`` (:issue:`30642`) +- Removed ``pandas.SparseSeries`` and ``pandas.SparseDataFrame``, including pickle support. (:issue:`30642`) - Enforced disallowing a string column label into ``times`` in :meth:`DataFrame.ewm` (:issue:`43265`) - Removed setting Categorical._codes directly (:issue:`41429`) - Enforced :meth:`Rolling.count` with ``min_periods=None`` to default to the size of the window (:issue:`31302`)