Skip to content

Intermittent unexpected CI behaviour for py27 runs #20453

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
mcrot opened this issue Mar 22, 2018 · 2 comments
Closed

Intermittent unexpected CI behaviour for py27 runs #20453

mcrot opened this issue Mar 22, 2018 · 2 comments
Labels
CI Continuous Integration

Comments

@mcrot
Copy link
Contributor

mcrot commented Mar 22, 2018

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

@TomAugspurger TomAugspurger added CI Continuous Integration 2/3 Compat labels Mar 22, 2018
@TomAugspurger TomAugspurger added this to the 0.23.0 milestone Mar 22, 2018
@TomAugspurger TomAugspurger added the Blocker Blocking issue or pull request for an upcoming release label Mar 22, 2018
@TomAugspurger
Copy link
Contributor

Anything else to do here? Were we ever able to reproduce this?

@jreback jreback modified the milestones: 0.23.0, Next Major Release Apr 14, 2018
@TomAugspurger
Copy link
Contributor

Closing this since we can't reproduce.

@TomAugspurger TomAugspurger removed the Blocker Blocking issue or pull request for an upcoming release label Apr 21, 2018
@TomAugspurger TomAugspurger modified the milestones: Next Major Release, No action Apr 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous Integration
Projects
None yet
Development

No branches or pull requests

3 participants