Skip to content

Intermittent unexpected CI behaviour for py27 runs #20453

Closed
@mcrot

Description

@mcrot

Code Sample, a copy-pastable example if possible

During working on PR #20437 a strange behaviour was observed concerning the CI runs:
In a first commit I've unintentionally uploaded code which did an unconditional
from http.client import HTTPResponse
in pandas/io/excel.py. The module http.client is available in py3, but not in py27, there the equivalent functionality is in module httplib. Nevertheless, firstly the build passed all three CI instances (CircleCI, TravisCI, AppVeyor) for py3 and for py27 without errors.

Problem description

Afterwards I did further commits on #20437, first on a new branch in my repo for testing and again on the PR branch. In both cases I had the same import line in pandas/io/excel.py with http.client. For these two commits, the corresponding runs failed for py27 on all CI instances as expected, on the first import pandas.

So far it's not clear to me how the first commit could pass on all CI instances. There seem to be some CI issue which occasionally happens and which could prevent incompatibilities from being revealed.

In order to find a module which may accidentally provide an import named http I wrote
a little script (see in #20437) which collected all dependencies from the files ci/requirements-2.7(_[A-Z]+)?\.(build|pip|run), but this doesn't seem to be the case.

Expected Output

Unconditional code which is not supported by py27 should always fail in CI for py27 runs.

Output of pd.show_versions()

commit: 01882ba python: 3.6.4.final.0 python-bits: 64 OS: Linux OS-release: 4.4.0-116-generic machine: x86_64 processor: x86_64 byteorder: little LC_ALL: None LANG: de_DE.UTF-8 LOCALE: de_DE.UTF-8

pandas: 0.23.0.dev0+657.g01882ba
pytest: 3.4.2
pip: 9.0.1
setuptools: 38.5.1
Cython: 0.27.3
numpy: 1.14.2
scipy: 1.0.0
pyarrow: 0.8.0
xarray: 0.10.2
IPython: 6.2.1
sphinx: 1.7.1
patsy: 0.5.0
dateutil: 2.7.0
pytz: 2018.3
blosc: None
bottleneck: 1.2.1
tables: 3.4.2
numexpr: 2.6.4
feather: 0.4.0
matplotlib: 2.2.2
openpyxl: 2.5.0
xlrd: 1.1.0
xlwt: 1.3.0
xlsxwriter: 1.0.2
lxml: 4.1.1
bs4: 4.6.0
html5lib: 1.0.1
sqlalchemy: 1.2.5
pymysql: 0.8.0
psycopg2: None
jinja2: 2.10

Metadata

Metadata

Assignees

No one assigned

    Labels

    CIContinuous Integration

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions