# Pandas version advanced starting in Jan 2021: numpy is now incompatible

**URL:** <https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214>\
**Category:** Travis CI Discussions & Feedback\
**Tags:** travis-build\
**Created:** [February 24, 2021, 8:29pm UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214 "2021-02-24T20:29:10Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![DanielGoldfarb](https://sea1.discourse-cdn.com/flex015/user_avatar/travis-ci.community/danielgoldfarb/32/6219_2.png) [@DanielGoldfarb](https://travis-ci.community/u/DanielGoldfarb)\
**Post date:** [February 24, 2021, 8:29pm UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214/1 "2021-02-24T20:29:11Z")

</div>

I am very much a TravisCI beginner. That said, I maintain python package [mplfinance](https://pypi.org/project/mplfinance/) and run a TravisCI test suite for every Pull Request for Py36, 37 and 38. Beginning in January 2021, the Py37 tests began failing consistently with the error:

```auto
ERROR: pandas 1.2.0 has requirement numpy>=1.16.5, but you'll have numpy 1.16.4 which is incompatible.

```

Here’s the thing: For each PR, we run a script that individually checks out and installs the package first from the PR, and then from the version currently in the repository, and does some comparison of the two versions. This works fine for py36 and py38, and before January worked fine for Py37. Here is an example of it working fine for Py37 prior to January:

[https://travis-ci.org/github/matplotlib/mplfinance/jobs/751128518](https://travis-ci.org/github/matplotlib/mplfinance/jobs/751128518)

In the above link you can see the following

```auto
Collecting pandas
  Using cached pandas-1.1.5-cp37-cp37m-manylinux1_x86_64.whl (9.5 MB)
Collecting python-dateutil>=2.1
  Using cached python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
Collecting cycler>=0.10
  Using cached cycler-0.10.0-py2.py3-none-any.whl (6.5 kB)
Requirement already satisfied: numpy>=1.15 in /home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages (from matplotlib->mplfinance==0.12.7a4) (1.16.4)

```

Notice that in installs pandas 1.1.5 and numpy 1.16.4

Beginning in January this is what I see:

Example:  
[https://travis-ci.org/github/matplotlib/mplfinance/jobs/753110408](https://travis-ci.org/github/matplotlib/mplfinance/jobs/753110408)

```auto
Collecting pandas
  Using cached pandas-1.2.0-cp37-cp37m-manylinux1_x86_64.whl (9.9 MB)
Collecting kiwisolver>=1.0.1
  Using cached kiwisolver-1.3.1-cp37-cp37m-manylinux1_x86_64.whl (1.1 MB)
Collecting pillow>=6.2.0
  Using cached Pillow-8.1.0-cp37-cp37m-manylinux1_x86_64.whl (2.2 MB)
Requirement already satisfied: numpy>=1.15 in /home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages (from matplotlib->mplfinance==0.12.7a5) (1.16.4)

```

Now it is installing pandas 1.2.0, and initially it seems satisfied with numpy 1.16.4, but then later in the file I see

```auto
ERROR: pandas 1.2.0 has requirement numpy>=1.16.5, but you'll have numpy 1.16.4 which is incompatible.

```

- Does anyone have any ideas what I can do about this?

Much appreciated. Thank you.

---

<div class="post-metadata">

**Author:** ![native-api](https://sea1.discourse-cdn.com/flex015/user_avatar/travis-ci.community/native-api/32/430_2.png) [@native-api](https://travis-ci.community/u/native-api)\
**Post date:** [February 25, 2021, 12:22am UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214/2 "2021-02-25T00:22:07Z")

</div>

> [@Can't deploy to PyPI anymore: pkg\_resources.ContextualVersionConflict: importlib-metadata 0.18](https://travis-ci.community/t/cant-deploy-to-pypi-anymore-pkg-resources-contextualversionconflict-importlib-metadata-0-18/10494/30):
>
> @rmk135 Pip problem. It doesn’t properly update a dependency when it’s installed but some of the other packages requires a newer version. Apart from --upgrade-strategy eager, using the new resolver may help (with --use-feature=2020-resolver or [by using Pip 20.3+](https://github.com/pypa/pip/commit/0d8acc9000471becf97b91b4465777b37bf5e011)).

---

<div class="post-metadata">

**Author:** ![DanielGoldfarb](https://sea1.discourse-cdn.com/flex015/user_avatar/travis-ci.community/danielgoldfarb/32/6219_2.png) [@DanielGoldfarb](https://travis-ci.community/u/DanielGoldfarb)\
**Post date:** [February 25, 2021, 9:51pm UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214/3 "2021-02-25T21:51:09Z")

</div>

@native-api  
Thanks for the suggestion.

- “–upgrade-strategy eager” had no effect.
- " --use-feature=2020-resolver" fails now for _ **both** _ py36 and py37 (my problem was only py37). The failure is now from pip: `no such option: --use-feature`.
- **How I can make py36 and py37 on TravisCI run the newer version of pip?**

---

<div class="post-metadata">

**Author:** ![native-api](https://sea1.discourse-cdn.com/flex015/user_avatar/travis-ci.community/native-api/32/430_2.png) [@native-api](https://travis-ci.community/u/native-api)\
**Post date:** [February 25, 2021, 11:15pm UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214/4 "2021-02-25T23:15:42Z")

</div>

> [@DanielGoldfarb](#):
>
> “–upgrade-strategy eager” had no effect.

I guess you need `numpy` in the list of requirements.

> [@DanielGoldfarb](#):
>
> How I can make py36 and py37 on TravisCI run the newer version of pip?

Upgrade it, duh!

---

<div class="post-metadata">

**Author:** ![DanielGoldfarb](https://sea1.discourse-cdn.com/flex015/user_avatar/travis-ci.community/danielgoldfarb/32/6219_2.png) [@DanielGoldfarb](https://travis-ci.community/u/DanielGoldfarb)\
**Post date:** [February 28, 2021, 2:12am UTC](https://travis-ci.community/t/pandas-version-advanced-starting-in-jan-2021-numpy-is-now-incompatible/11214/5 "2021-02-28T02:12:34Z")

</div>

@native-api  
duh! … thanks.  
added `pip install --upgrade pip` to the script, and all is well.
