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

Implement all_children for unbounded integers #3983

Merged
merged 2 commits into from May 12, 2024

Conversation

tybug
Copy link
Member

@tybug tybug commented May 12, 2024

closes #3974. Turns out this definitely can happen in practice!

The reproducer in the issue is actually the worst case for this bug. Conditions for triggering are a strategy with a single unbounded st.integers strategy as the heaviest (or only) branching point in its choice tree. I'm guessing we're saturating the 8 and/or 16 bit integer buckets and then getting unlucky by trying to draw from said buckets 10 times in a row, triggering our deduplication fallback to exhaustive enumeration.

@tybug tybug requested a review from Zac-HD as a code owner May 12, 2024 04:49
@tybug tybug force-pushed the all-children-unbounded-integers branch from 0e0d26a to 81898d2 Compare May 12, 2024 04:53
@tybug
Copy link
Member Author

tybug commented May 12, 2024

looks like the pandas coverage is still flaky? https://github.com/HypothesisWorks/hypothesis/actions/runs/9048944880/job/24862536263?pr=3983 I'm 98% sure the merge target here is latest master.

@Zac-HD
Copy link
Member

Zac-HD commented May 12, 2024

Ugh, yeah, that's #3968 again. I really thought that 1813f61 had fixed it...

@Zac-HD Zac-HD enabled auto-merge May 12, 2024 07:22
@Zac-HD Zac-HD merged commit 6f12bab into HypothesisWorks:master May 12, 2024
54 checks passed
@tybug tybug deleted the all-children-unbounded-integers branch May 12, 2024 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

integers strategy can fail with assertion error: assert min_value is not None
2 participants