-
Notifications
You must be signed in to change notification settings - Fork 587
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
Slow explain
phase for recursive strategy
#4179
Comments
explain
phase for recursive strategy
Slowness is due to the from hypothesis import given, strategies as st, settings, Phase
@given(
st.recursive(
st.dictionaries(st.integers(0, 255), st.just(None), min_size=2),
lambda vals: st.dictionaries(st.integers(0, 255), vals, min_size=2),
)
)
@settings(
database=None,
# phases=set(Phase) - {Phase.explain} # fast when uncommented
)
def f(trie):
assert False
f() I was worried this was due to the recent IR changes, but this is still slow on However, I did discover while looking into this that the explain phase runs under our coverage |
@Forty-Bot could you check if the latest release is any better for you? |
|
Ah, one obvious thing we should do here is split out the |
Tests using the
recursive
strategy shrink very slowly. For example, this testTakes over a minute to shrink:
For comparison, shrinking just the base case takes only 1 second.
The text was updated successfully, but these errors were encountered: