DEPS: Pinning versions of some dependencies to speed up environment creation
State: closed

- [X] closes #24012
- [ ] tests added / passed
- [ ] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

Conda is taking 45 minutes to create an environment with our `environment.yml`. While this is a bug in conda, it won't be fixed until the next version. So, a workaround for now is to pin the verion of some of the packages.

I'm also removing couple of packages that I don't think are useful in a local environment, or in the CI build that will use the file (for the linting and to build the docs).

Labels:
name: Dependencies
description: Required and optional dependencies

Comments:
nice!  I'm glad this works.  I'll use this as an example for others until we get conda sorted out.
Thanks for tracking this down @datapythonista. I'm perfectly happy with pinning and removing some optional deps for the dev env.

Feel free to merge once you've verified that the solver is performing well on the CI.
Wouldn't it work to just use `>=` (sufficiently high) instead of `=` to reduce the number of versions? That way the environments can stay current, while not having to deal with the combinatorial blow-up that's slowing down current conda.
@TomAugspurger the CI is not using `environment.yml` yet, it will after #22854. Not sure if it'd be better to make the fixes in that PR, so we can see that the CI works. But the changes are somehow unrelated. What do you think?

@h-vetinari I guess that should work to, and will make newer versions installed (and I assume by the time we could have too many dependencies again, conda will be fixes). I'll give it a try and see.
# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/24015?src=pr&el=h1) Report
> Merging [#24015](https://codecov.io/gh/pandas-dev/pandas/pull/24015?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/dc8d35aa53d496b651f5e1ab4cb2604e9f7236c7?src=pr&el=desc) will **decrease** coverage by `49.84%`.
> The diff coverage is `n/a`.

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

```diff
@@             Coverage Diff             @@
##           master   #24015       +/-   ##
===========================================
- Coverage   92.31%   42.46%   -49.85%     
===========================================
  Files         161      161               
  Lines       51549    51556        +7     
===========================================
- Hits        47586    21892    -25694     
- Misses       3963    29664    +25701
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `?` | |
| #single | `42.46% <ø> (+0.01%)` | :arrow_up: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/24015?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/io/formats/latex.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL2Zvcm1hdHMvbGF0ZXgucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| [pandas/core/categorical.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvY2F0ZWdvcmljYWwucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| [pandas/io/sas/sas\_constants.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL3Nhcy9zYXNfY29uc3RhbnRzLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [pandas/tseries/plotting.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL3RzZXJpZXMvcGxvdHRpbmcucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| [pandas/tseries/converter.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL3RzZXJpZXMvY29udmVydGVyLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [pandas/io/formats/html.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL2Zvcm1hdHMvaHRtbC5weQ==) | `0% <0%> (-97.64%)` | :arrow_down: |
| [pandas/core/groupby/categorical.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZ3JvdXBieS9jYXRlZ29yaWNhbC5weQ==) | `0% <0%> (-95.46%)` | :arrow_down: |
| [pandas/io/sas/sas7bdat.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL3Nhcy9zYXM3YmRhdC5weQ==) | `0% <0%> (-91.17%)` | :arrow_down: |
| [pandas/io/sas/sas\_xport.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL3Nhcy9zYXNfeHBvcnQucHk=) | `0% <0%> (-90.15%)` | :arrow_down: |
| [pandas/core/tools/numeric.py](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvdG9vbHMvbnVtZXJpYy5weQ==) | `10.44% <0%> (-89.56%)` | :arrow_down: |
| ... and [119 more](https://codecov.io/gh/pandas-dev/pandas/pull/24015/diff?src=pr&el=tree-more) | |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/24015?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/24015?src=pr&el=footer). Last update [dc8d35a...14b588b](https://codecov.io/gh/pandas-dev/pandas/pull/24015?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

where was this showing up?
I really don't like pinning things, because they are then never unpinned
While I agree, I find this to be a very practical stopgap until we at Anaconda can fix the conda behavior issue.
@jreback you can see the "Checks and docs" azure job timing out (or taking a lot of time to complete) here: #22854

Also, if you try to recreate your local environment using `environment.yml` you should experience the same (in Linux, in Mac seems like it worked for Tom)
And keep in mind that this is just for the dev environment.yml, not for any
of the CI jobs.

On Fri, Nov 30, 2018 at 10:04 AM Marc Garcia <notifications@github.com>
wrote:

> @jreback <https://github.com/jreback> you can see the "Checks and docs"
> azure job timing out (or taking a lot of time to complete) here: #22854
> <https://github.com/pandas-dev/pandas/pull/22854>
>
> Also, if you try to recreate your local environment using environment.yml
> you should experience the same (in Linux, in Mac seems like it worked for
> Tom)
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/24015#issuecomment-443250857>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ABQHIoX3iX_4AjMChZ73E_M9YMxPLTj8ks5u0Vb4gaJpZM4Y7yYw>
> .
>

I checked it, and the speed looks the same when using `>=version` than when using `=version`. Changed it. All green.

@jreback 
Thanks!