CLN: Remove Legacy MultiIndex Index Compatibility
State: closed

- [x] closes #21654 
- [x] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] what's new - removing legacy MultiIndex internal formats

Labels:
name: Testing
description: pandas testing functions or related to the test suite
name: MultiIndex
name: Compat
description: pandas objects compatability with Numpy or Python functions
name: Clean

Comments:
# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=h1) Report
> Merging [#21740](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/7a2fbce899aad302891ff9a95aeb1bd55efe533a?src=pr&el=desc) will **increase** coverage by `<.01%`.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/pandas-dev/pandas/pull/21740/graphs/tree.svg?token=eZ4WkYLtcO&src=pr&width=650&height=150)](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master   #21740      +/-   ##
==========================================
+ Coverage   92.05%   92.05%   +<.01%     
==========================================
  Files         170      170              
  Lines       50708    50697      -11     
==========================================
- Hits        46677    46668       -9     
+ Misses       4031     4029       -2
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `90.46% <ø> (ø)` | :arrow_up: |
| #single | `42.36% <ø> (-0.01%)` | :arrow_down: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/core/indexes/multi.py](https://codecov.io/gh/pandas-dev/pandas/pull/21740/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvaW5kZXhlcy9tdWx0aS5weQ==) | `95.25% <ø> (+0.12%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=footer). Last update [7a2fbce...ae446bc](https://codecov.io/gh/pandas-dev/pandas/pull/21740?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

I read the pickle docs and I believe I have it figured out.  Will play with
it a little tonight and see if I have it right.  Thanks!

On Wed, Jul 4, 2018, 8:13 PM Jeff Reback <notifications@github.com> wrote:

> *@jreback* requested changes on this pull request.
>
> pls add a whatsnew note - removing legacy MuktiIndex internal formats
> ------------------------------
>
> In pandas/tests/indexes/multi/test_conversion.py
> <https://github.com/pandas-dev/pandas/pull/21740#discussion_r200215116>:
>
> > @@ -87,46 +85,6 @@ def test_to_hierarchical():
>      assert result.names == index.names
>
>
> -@pytest.mark.skipif(PY3, reason="testing legacy pickles not support on py3")
> -def test_legacy_pickle(datapath):
> -
> -    path = datapath('indexes', 'multi', 'data', 'multiindex_v1.pickle')
> -    obj = pd.read_pickle(path)
>
> can u also remove the legacy code itself from MultiIndex
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/21740#pullrequestreview-134486290>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADSn4HQ-X3K-J6n2M_P0bph0ug9GKnNLks5uDWgwgaJpZM4VDHzu>
> .
>

@jreback I am not sure what happened with the circleci build.  I could use some help with the postmortem as I haven't dealt with circleci directly before.  
Looks like circleCI fail may be unrelated.  Pushing a new commit will have it try again.
Thanks.  The queue seemed really full that day.  Will give it another go.

On Wed, Jul 18, 2018, 10:30 PM jbrockmendel <notifications@github.com>
wrote:

> Looks like circleCI fail may be unrelated. Pushing a new commit will have
> it try again.
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/21740#issuecomment-406143433>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADSn4NcbynbIJtxzI9UiY9EefKrDYDtZks5uH_1JgaJpZM4VDHzu>
> .
>

@jreback I think this is good to go. 
@jreback I rebased after the latest merge should be good to go.  Thanks!
Nice catch.  Thanks!  Will get to this tonight.

On Wed, Jul 25, 2018, 7:04 AM Jeff Reback <notifications@github.com> wrote:

> *@jreback* requested changes on this pull request.
>
> minor comment. ping on green.
> ------------------------------
>
> In pandas/tests/indexes/multi/test_analytics.py
> <https://github.com/pandas-dev/pandas/pull/21740#discussion_r205081723>:
>
> > @@ -15,8 +15,8 @@ def test_shift(idx):
>      pytest.raises(NotImplementedError, idx.shift, 1, 2)
>
>
> -def test_bounds(idx):
> -    idx._bounds
> +# def test_bounds(idx):
>
> remote this entirely
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/21740#pullrequestreview-140278510>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADSn4NbKh6ER0ZklowaIbunz2VBbRoPbks5uKF67gaJpZM4VDHzu>
> .
>

Okay thanks.  It's a fair point.  I will try to summarize the issue better
in the what's new text and resubmit.

On Thu, Jul 26, 2018, 8:17 AM Joris Van den Bossche <
notifications@github.com> wrote:

> *@jorisvandenbossche* commented on this pull request.
> ------------------------------
>
> In doc/source/whatsnew/v0.24.0.txt
> <https://github.com/pandas-dev/pandas/pull/21740#discussion_r205451072>:
>
> > @@ -513,7 +513,7 @@ Missing
>  MultiIndex
>  ^^^^^^^^^^
>
> --
> +- Removed legacy internal formats (:issue:`21654`)
>
> We don't always add a whatsnew note for internal code clean-up (if it has
> no user visible change), so I still don't think it is needed here. Anyhow,
> if we keep one, it should be comprehensible for users (the current one is
> not even comprehensible for me without looking at the issue)
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/21740#discussion_r205451072>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADSn4F1x-6KqhBcrsUpZn60_yUVYDcobks5uKcFagaJpZM4VDHzu>
> .
>

@jreback everything is green.  Thank you for all your help on refactoring this MultiIndex text suite. 
No problem. I'm glad you brought up the issue.  Thanks!

On Fri, Jul 27, 2018, 6:33 AM Joris Van den Bossche <
notifications@github.com> wrote:

> *@jorisvandenbossche* approved this pull request.
>
> Thanks for the update, that's clear now!
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/21740#pullrequestreview-141077747>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADSn4DDTJd60km7OCfxlcxkDJhQOdO8Aks5uKvp6gaJpZM4VDHzu>
> .
>