Skip to content

Commit a1f64ff

Browse files
committed
Merge remote-tracking branch 'upstream/master' into categorical-bool-fixed
2 parents 57b9eab + 12a0dc4 commit a1f64ff

File tree

649 files changed

+49608
-35465
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

649 files changed

+49608
-35465
lines changed

.circleci/config.yml

+147
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
version: 2
2+
jobs:
3+
4+
# --------------------------------------------------------------------------
5+
# 0. py27_compat
6+
# --------------------------------------------------------------------------
7+
py27_compat:
8+
docker:
9+
- image: continuumio/miniconda:latest
10+
# databases configuration
11+
- image: circleci/postgres:9.6.5-alpine-ram
12+
environment:
13+
POSTGRES_USER: postgres
14+
POSTGRES_DB: pandas_nosetest
15+
- image: circleci/mysql:8-ram
16+
environment:
17+
MYSQL_USER: "root"
18+
MYSQL_HOST: "localhost"
19+
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
20+
MYSQL_DATABASE: "pandas_nosetest"
21+
environment:
22+
JOB: "2.7_COMPAT"
23+
ENV_FILE: "ci/circle-27-compat.yaml"
24+
LOCALE_OVERRIDE: "it_IT.UTF-8"
25+
MINICONDA_DIR: /home/ubuntu/miniconda3
26+
steps:
27+
- checkout
28+
- run:
29+
name: build
30+
command: |
31+
./ci/install_circle.sh
32+
./ci/show_circle.sh
33+
- run:
34+
name: test
35+
command: ./ci/run_circle.sh --skip-slow --skip-network
36+
37+
# --------------------------------------------------------------------------
38+
# 1. py36_locale
39+
# --------------------------------------------------------------------------
40+
py36_locale:
41+
docker:
42+
- image: continuumio/miniconda:latest
43+
# databases configuration
44+
- image: circleci/postgres:9.6.5-alpine-ram
45+
environment:
46+
POSTGRES_USER: postgres
47+
POSTGRES_DB: pandas_nosetest
48+
- image: circleci/mysql:8-ram
49+
environment:
50+
MYSQL_USER: "root"
51+
MYSQL_HOST: "localhost"
52+
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
53+
MYSQL_DATABASE: "pandas_nosetest"
54+
55+
environment:
56+
JOB: "3.6_LOCALE"
57+
ENV_FILE: "ci/circle-36-locale.yaml"
58+
LOCALE_OVERRIDE: "zh_CN.UTF-8"
59+
MINICONDA_DIR: /home/ubuntu/miniconda3
60+
steps:
61+
- checkout
62+
- run:
63+
name: build
64+
command: |
65+
./ci/install_circle.sh
66+
./ci/show_circle.sh
67+
- run:
68+
name: test
69+
command: ./ci/run_circle.sh --skip-slow --skip-network
70+
71+
# --------------------------------------------------------------------------
72+
# 2. py36_locale_slow
73+
# --------------------------------------------------------------------------
74+
py36_locale_slow:
75+
docker:
76+
- image: continuumio/miniconda:latest
77+
# databases configuration
78+
- image: circleci/postgres:9.6.5-alpine-ram
79+
environment:
80+
POSTGRES_USER: postgres
81+
POSTGRES_DB: pandas_nosetest
82+
- image: circleci/mysql:8-ram
83+
environment:
84+
MYSQL_USER: "root"
85+
MYSQL_HOST: "localhost"
86+
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
87+
MYSQL_DATABASE: "pandas_nosetest"
88+
89+
environment:
90+
JOB: "3.6_LOCALE_SLOW"
91+
ENV_FILE: "ci/circle-36-locale_slow.yaml"
92+
LOCALE_OVERRIDE: "zh_CN.UTF-8"
93+
MINICONDA_DIR: /home/ubuntu/miniconda3
94+
steps:
95+
- checkout
96+
- run:
97+
name: build
98+
command: |
99+
./ci/install_circle.sh
100+
./ci/show_circle.sh
101+
- run:
102+
name: test
103+
command: ./ci/run_circle.sh --only-slow --skip-network
104+
105+
# --------------------------------------------------------------------------
106+
# 3. py35_ascii
107+
# --------------------------------------------------------------------------
108+
py35_ascii:
109+
docker:
110+
- image: continuumio/miniconda:latest
111+
# databases configuration
112+
- image: circleci/postgres:9.6.5-alpine-ram
113+
environment:
114+
POSTGRES_USER: postgres
115+
POSTGRES_DB: pandas_nosetest
116+
- image: circleci/mysql:8-ram
117+
environment:
118+
MYSQL_USER: "root"
119+
MYSQL_HOST: "localhost"
120+
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
121+
MYSQL_DATABASE: "pandas_nosetest"
122+
123+
environment:
124+
JOB: "3.5_ASCII"
125+
ENV_FILE: "ci/circle-35-ascii.yaml"
126+
LOCALE_OVERRIDE: "C"
127+
MINICONDA_DIR: /home/ubuntu/miniconda3
128+
steps:
129+
- checkout
130+
- run:
131+
name: build
132+
command: |
133+
./ci/install_circle.sh
134+
./ci/show_circle.sh
135+
- run:
136+
name: test
137+
command: ./ci/run_circle.sh --skip-slow --skip-network
138+
139+
140+
workflows:
141+
version: 2
142+
build_and_test:
143+
jobs:
144+
- py27_compat
145+
- py36_locale
146+
- py36_locale_slow
147+
- py35_ascii

.coveragerc

-27
This file was deleted.

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ dist
6262
coverage.xml
6363
coverage_html_report
6464
*.pytest_cache
65+
# hypothesis test database
66+
.hypothesis/
6567

6668
# OS generated files #
6769
######################

.pep8speaks.yml

+12-3
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,19 @@
33
scanner:
44
diff_only: True # If True, errors caused by only the patch are shown
55

6+
# Opened issue in pep8speaks, so we can directly use the config in setup.cfg
7+
# (and avoid having to duplicate it here):
8+
# https://github.com/OrkoHunter/pep8speaks/issues/95
9+
610
pycodestyle:
711
max-line-length: 79
8-
ignore: # Errors and warnings to ignore
12+
ignore:
13+
- W503, # line break before binary operator
14+
- W504, # line break after binary operator
915
- E402, # module level import not at top of file
16+
- E722, # do not use bare except
1017
- E731, # do not assign a lambda expression, use a def
11-
- E741, # do not use variables named 'l', 'O', or 'I'
12-
- W503 # line break before binary operator
18+
- E741, # ambiguous variable name 'l'
19+
- C406, # Unnecessary list literal - rewrite as a dict literal.
20+
- C408, # Unnecessary dict call - rewrite as a literal.
21+
- C409 # Unnecessary list passed to tuple() - rewrite as a tuple literal.

.travis.yml

+11-24
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,8 @@ matrix:
3030
exclude:
3131
# Exclude the default Python 3.5 build
3232
- python: 3.5
33-
include:
34-
- os: osx
35-
language: generic
36-
env:
37-
- JOB="3.5, OSX" ENV_FILE="ci/travis-35-osx.yaml" TEST_ARGS="--skip-slow --skip-network"
3833

34+
include:
3935
- dist: trusty
4036
env:
4137
- JOB="3.7" ENV_FILE="ci/travis-37.yaml" TEST_ARGS="--skip-slow --skip-network"
@@ -49,26 +45,27 @@ matrix:
4945
- language-pack-zh-hans
5046
- dist: trusty
5147
env:
52-
- JOB="2.7, lint" ENV_FILE="ci/travis-27.yaml" TEST_ARGS="--skip-slow" LINT=true
48+
- JOB="2.7" ENV_FILE="ci/travis-27.yaml" TEST_ARGS="--skip-slow"
5349
addons:
5450
apt:
5551
packages:
5652
- python-gtk2
5753
- dist: trusty
5854
env:
59-
- JOB="3.6, coverage" ENV_FILE="ci/travis-36.yaml" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate" COVERAGE=true
60-
# In allow_failures
61-
- dist: trusty
62-
env:
63-
- JOB="3.6, slow" ENV_FILE="ci/travis-36-slow.yaml" SLOW=true
64-
# In allow_failures
55+
- JOB="3.6, lint, coverage" ENV_FILE="ci/travis-36.yaml" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate" COVERAGE=true LINT=true
6556
- dist: trusty
6657
env:
67-
- JOB="3.6, NumPy dev" ENV_FILE="ci/travis-36-numpydev.yaml" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate"
58+
- JOB="3.7, NumPy dev" ENV_FILE="ci/travis-37-numpydev.yaml" TEST_ARGS="--skip-slow --skip-network -W error" PANDAS_TESTING_MODE="deprecate"
6859
addons:
6960
apt:
7061
packages:
7162
- xsel
63+
64+
# In allow_failures
65+
- dist: trusty
66+
env:
67+
- JOB="3.6, slow" ENV_FILE="ci/travis-36-slow.yaml" SLOW=true
68+
7269
# In allow_failures
7370
- dist: trusty
7471
env:
@@ -77,13 +74,6 @@ matrix:
7774
- dist: trusty
7875
env:
7976
- JOB="3.6, slow" ENV_FILE="ci/travis-36-slow.yaml" SLOW=true
80-
- dist: trusty
81-
env:
82-
- JOB="3.6, NumPy dev" ENV_FILE="ci/travis-36-numpydev.yaml" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate"
83-
addons:
84-
apt:
85-
packages:
86-
- xsel
8777
- dist: trusty
8878
env:
8979
- JOB="3.6, doc" ENV_FILE="ci/travis-36-doc.yaml" DOC=true
@@ -118,10 +108,7 @@ script:
118108
- ci/run_build_docs.sh
119109
- ci/script_single.sh
120110
- ci/script_multi.sh
121-
- ci/lint.sh
122-
- echo "checking imports"
123-
- source activate pandas && python ci/check_imports.py
124-
- echo "script done"
111+
- ci/code_checks.sh
125112

126113
after_success:
127114
- ci/upload_coverage.sh

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ build: clean_pyc
1313
python setup.py build_ext --inplace
1414

1515
lint-diff:
16-
git diff master --name-only -- "*.py" | grep "pandas" | xargs flake8
16+
git diff master --name-only -- "*.py" | grep -E "pandas|scripts" | xargs flake8
1717

1818
develop: build
1919
-python setup.py develop

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@
5656
<tr>
5757
<td></td>
5858
<td>
59-
<a href="https://ci.appveyor.com/project/pandas-dev/pandas">
60-
<img src="https://ci.appveyor.com/api/projects/status/86vn83mxgnl4xf1s/branch/master?svg=true" alt="appveyor build status" />
59+
<a href="https://dev.azure.com/pandas-dev/pandas/_build/latest?definitionId=1&branch=master">
60+
<img src="https://dev.azure.com/pandas-dev/pandas/_apis/build/status/pandas-dev.pandas?branch=master" alt="Azure Pipelines build status" />
6161
</a>
6262
</td>
6363
</tr>
@@ -89,15 +89,15 @@
8989

9090

9191

92-
## What is it
92+
## What is it?
9393

9494
**pandas** is a Python package providing fast, flexible, and expressive data
9595
structures designed to make working with "relational" or "labeled" data both
9696
easy and intuitive. It aims to be the fundamental high-level building block for
9797
doing practical, **real world** data analysis in Python. Additionally, it has
9898
the broader goal of becoming **the most powerful and flexible open source data
9999
analysis / manipulation tool available in any language**. It is already well on
100-
its way toward this goal.
100+
its way towards this goal.
101101

102102
## Main Features
103103
Here are just a few of the things that pandas does well:

0 commit comments

Comments
 (0)