Skip to content
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

nightly builds failing since 19 July on MacPython / pandas-wheels #47933

Closed
simonjayhawkins opened this issue Aug 2, 2022 · 7 comments
Closed
Labels
Build Library building on various platforms CI Continuous Integration
Milestone

Comments

@simonjayhawkins
Copy link
Member

@simonjayhawkins simonjayhawkins added this to the 1.5 milestone Aug 2, 2022
@simonjayhawkins
Copy link
Member Author

and also seeing test failures when building wheels for 1.4.x MacPython/pandas-wheels#173

@phofl
Copy link
Member

phofl commented Aug 3, 2022

It seems to me, that this is a bug on our side. This was not caused by a change on our side in that interval but by a hypothesis release.

#47952

This was caused by a hypothesis change to how the integers function works in 6.52.2. They are now testing the interval bounds more strictly, which causes overflow errors on our side. A depdendency of this version is missing on conda, hence we only get this when installing with pip.

HypothesisWorks/hypothesis#2942 and the associated pr

We could pin hypothesis as a short term solution to get the builds passing. If we determine this is indeed a bug on our side, we have to fix it.

Edit: Alternatively, we could skip the test for windows and macos for now

@vtikoo
Copy link

vtikoo commented Aug 5, 2022

I think the test is also partially to blame, as it defines the interval.

For eg: in test_timedelta.py:test_round_sanity, the max value for val is set to lib.i8max, which is probably 2^63 - 1.

@given(val=st.integers(min_value=iNaT + 1, max_value=lib.i8max))

The code then converts val to a timedelta object with that many nanoseconds. The overflow happens when Timedelta.ceil(td, "D") is applied to it, i.e adding a day worth of nanoseconds(8.64e13).

The falsifying case I encountered was still some ways from SLONG_MAX -

[2022-07-22T21:07:33.539Z] pandas/_libs/tslibs/fields.pyx:688: OverflowError
[2022-07-22T21:07:33.539Z] ---------------------------------- Hypothesis ----------------------------------
[2022-07-22T21:07:33.539Z] Falsifying example: test_round_sanity(
[2022-07-22T21:07:33.539Z]     val=9223286400000000001,
[2022-07-22T21:07:33.539Z]     self=<pandas.tests.scalar.timestamp.test_unary_ops.TestTimestampUnaryOps at 0x18e165910>,
[2022-07-22T21:07:33.539Z]     method=<cyfunction Timestamp.ceil at 0x1b56adee0>,
[2022-07-22T21:07:33.539Z] )

One idea is to reduce the max_value by Timedelta(1, "D").nanoseconds.

@lithomas1 lithomas1 added Build Library building on various platforms CI Continuous Integration labels Aug 8, 2022
@lithomas1 lithomas1 modified the milestones: 1.5, 1.4.4 Aug 10, 2022
@simonjayhawkins
Copy link
Member Author

simonjayhawkins commented Aug 17, 2022

We could pin hypothesis as a short term solution to get the builds passing. If we determine this is indeed a bug on our side, we have to fix it.

hypothesis has been pinned for now MacPython/pandas-wheels#190

@simonjayhawkins
Copy link
Member Author

@lithomas1 This issue is about nightly builds so changing the milestone back to 1.5

Just need open a PR to make a small change to Travis and then can close this. (MacPython/pandas-wheels@b0845f7)

@simonjayhawkins simonjayhawkins modified the milestones: 1.4.4, 1.5 Aug 19, 2022
@simonjayhawkins
Copy link
Member Author

Just need open a PR to make a small change to Travis and then can close this. (MacPython/pandas-wheels@b0845f7)

MacPython/pandas-wheels#191

@simonjayhawkins
Copy link
Member Author

Just need open a PR to make a small change to Travis and then can close this. (MacPython/pandas-wheels@b0845f7)

MacPython/pandas-wheels#191

travis green on main https://github.com/MacPython/pandas-wheels/runs/7915756330 so closing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Build Library building on various platforms CI Continuous Integration
Projects
None yet
Development

No branches or pull requests

4 participants