Use bash on windows
State: closed

- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- towards https://github.com/pandas-dev/pandas/issues/26344

As per travis logs:
https://travis-ci.org/pandas-dev/pandas/jobs/552444580

```
ccache: /usr/bin/ccache
source deactivate
DeprecationWarning: 'source deactivate' is deprecated. Use 'conda deactivate'.
```
As of [conda 4.6 the preferred](https://www.anaconda.com/conda-4-6-release/) way of using an environment is to use `conda activate (env)`.
`source activate` will eventually be deprecated 

(only remaining place to do this is in `code_checks.yml` -> I will do this in a follow up for ease of review) 

* This make the steps in the `windows.yml` and `posix.yml` file very similar and we can potentially merge these.

* Use `run_tests.sh` on windows this will mean  we now tests with `pytest -n 2` and `pytest -n 1` on windows - now consistent with the linux builds

cc. @TomAugspurger @datapythonista 

Labels:
name: Build
description: Library building on various platforms

Comments:
sure
@alimcmaster1 I was trying a few days ago something similar for geopandas (although for appveyor), and needed some PATH manipulations in the end to get this working (with the help of @msarahan) , see https://github.com/geopandas/geopandas/pull/1029. It might be that something similar is needed here, if the `conda init bash` does not work on CI.
Awesome thanks for the pointer @jorisvandenbossche 
@jorisvandenbossche is this close to being ready?
@jbrockmendel - still needs a bit of work. CI is currently only passing on windows. I will take another look 
Doesn't look like build logs are still available but does the below link from Azure not solve the issue?

https://docs.microsoft.com/en-us/azure/devops/pipelines/languages/anaconda?view=azure-devops&tabs=ubuntu-16-04#add-conda-to-your-system-path
Thanks @WillAyd will give that a try 
This is almost over the line - I will update the windows CI to use run_tests.sh so its consistent with Linux CI
@WillAyd i've fixed this up + edited description highlighting what this hopes to achieve mind taking a look?
> But replacing `source activate pandas-dev` by `source $MINICONDA_DIR/etc/profile.d/conda.sh && conda activate pandas-dev` doesn't seem reasonable to me.

Yea agreed on that. So doesn't using `bash` instead of `script` get rid of the need for the former? I thought the point of the VSO task was to enable simple `conda` usage without `source` so long as `bash` is used. I'm also not sure there's a point to using `script` / `cmd.exe` on Windows

Going to wait till https://github.com/pandas-dev/pandas/pull/28531 is merged then I will open a separate PR to update `windows.yml` to use bash in the steps opposed to script. As per #26344. Unless any dev's disagree?
Sounds good  thanks @alimcmaster1
can you merge master
Will do - waiting for @datapythonista to merge his PR first 
> waiting for datapythonista to merge his PR first

can you rebase here anyway?
@alimcmaster1 can you pls rebase?
@alimcmaster1 it looks like you just pushed, but GH still says there are conflicts
@jbrockmendel sorry for the delay updated. We should wait till https://github.com/pandas-dev/pandas/pull/28531 is merged as in my PR here we are currently calling pytest with n = 2 and n=1 on windows where as the current behaviour just calls:
`pytest -m "not slow and not network" --junitxml=test-data.xml pandas -n 2 -r sxX --strict --durations=10 %*`

This change means the steps in both `posix.yml` and `windows.yml` should be similar. (and we can potentially merge)
Closing as the scope of this changed slight. Will summarise and open fresh PR - to make this easier to review.

Thanks all for the comments
Also worth considering that we can move things to GitHub Actions