This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mobiusklein
Recipients mobiusklein
Date 2022-03-18.02:52:35
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1647571955.22.0.67382471148.issue47055@roundup.psfhosted.org>
In-reply-to
Content
The following code looks correct:

```python
import os

class A(os.PathLike):
    pass

class B(os.PathLike):
    pass

assert issubclass(A, os.PathLike) # direct inheritance relationship
assert issubclass(B, os.PathLike) # direct inheritance relationship
assert not issubclass(A, B) # A is not derived from B or vice-versa
```

On Python 3.7.0-3.7.6 and 3.8.0-3.8.1 the third assertion fails. The expected behavior was restored in 3.7.7 and 3.8.2. This seems to be around when the internals of `abc` were translated to C.

Given that the behavior was fixed, but a bug fix matching this behavior wasn't listed in the changelog, the only resolution is to document that this behavior may be extant in older but still supported minor versions of Python. Where should that text be placed?
History
Date User Action Args
2022-03-18 02:52:35mobiuskleinsetrecipients: + mobiusklein
2022-03-18 02:52:35mobiuskleinsetmessageid: <1647571955.22.0.67382471148.issue47055@roundup.psfhosted.org>
2022-03-18 02:52:35mobiuskleinlinkissue47055 messages
2022-03-18 02:52:35mobiuskleincreate