You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Python 3.14: StructuralCoverageTag.__init__() takes 1 positional argument but 2 were given #4067
Note: the deadsnakes nightly 3.14 that I've been using had been broken for a few weeks, so if this is a bug in 3.14, it could have been introduced since July 11th.
Thanks to both of you for the report and suggestions! I'm looking into this now and should have a fix out soon.
I'm somewhat surprised that this hasn't failed in our CI yet - we're running 3.14-dev, which pyenv is currently building from cpython main. no, this is obvious, we're currently pinned to the prior version of attrs.
I also don't see how our noop decorator could have some runtime effect:
cd8a71e seems to have fixed it, so my best guess is that it's (probably something in combination with) auto_attribs=True and you might be able to repro from that?
It's after midnight here though, so I'm just going to get the fix released and then go to bed 😅
Yes, I've finally managed to compile Python 3.14 on my Mac and apparently attrs can't find annotation-only fields on 3.14 anymore. You don't have to do anything, I've got a lead, I just want to understand better what's happening.
Activity
[-]3.14: [/-][+]Python 3.14: StructuralCoverageTag.__init__() takes 1 positional argument but 2 were given[/+]nedbat commentedon Aug 5, 2024
Note: the deadsnakes nightly 3.14 that I've been using had been broken for a few weeks, so if this is a bug in 3.14, it could have been introduced since July 11th.
hynek commentedon Aug 5, 2024
The breakage seems to be related to attrs 24.1.0 release.
Based on python-attrs/attrs#1326 (comment) I would guess that removing the
dataclass_transformshould fix it??Zac-HD commentedon Aug 6, 2024
Thanks to both of you for the report and suggestions! I'm looking into this now and should have a fix out soon.
I'm somewhat surprised that this hasn't failed in our CI yet - we're running 3.14-dev, which pyenv is currently building from cpython main.no, this is obvious, we're currently pinned to the prior version of attrs.I also don't see how our noop decorator could have some runtime effect:
hypothesis/hypothesis-python/src/hypothesis/internal/conjecture/data.py
Lines 71 to 85 in 3c15b34
Zac-HD commentedon Aug 6, 2024
yeah, that's more like it:

(ok, with a repro in hand it's time to fix this!)
hynek commentedon Aug 6, 2024
it's beautiful 🥲
Zac-HD commentedon Aug 6, 2024
cd8a71e seems to have fixed it, so my best guess is that it's (probably something in combination with)
auto_attribs=Trueand you might be able to repro from that?It's after midnight here though, so I'm just going to get the fix released and then go to bed 😅
hynek commentedon Aug 6, 2024
Yes, I've finally managed to compile Python 3.14 on my Mac and apparently attrs can't find annotation-only fields on 3.14 anymore. You don't have to do anything, I've got a lead, I just want to understand better what's happening.
Zac-HD commentedon Aug 6, 2024
Ah, there's some other updates I wanted anyway in that PR, so might as well ship it 🙂
hynek commentedon Aug 6, 2024
24.2.0 is out now, so you should be able to replace the whole thing with a single
@attr.frozenor even@attrs.frozensince you depend on 22+ anyways.