GH-104898: Revert pathlib os.PathLike registration change. (GH-105073)

Subclassing `os.PathLike` rather than using `register()` makes
initialisation slower, due to the additional `__isinstance__` work.

This partially reverts commit bd1b6228d132b8e9836fe352cd8dca2b6c1bd98c.

Co-authored-by: Alex Waygood <>
diff --git a/Lib/ b/Lib/
index 87c2e97..a57b582 100644
--- a/Lib/
+++ b/Lib/
@@ -235,7 +235,7 @@
         return "<{}.parents>".format(type(self._path).__name__)
-class PurePath(os.PathLike):
+class PurePath:
     """Base class for manipulating paths without I/O.
     PurePath represents a filesystem path and offers operations which
@@ -715,6 +715,10 @@
                 return False
         return True
+# Subclassing os.PathLike makes isinstance() checks slower,
+# which in turn makes Path construction slower. Register instead!
 class PurePosixPath(PurePath):
     """PurePath subclass for non-Windows systems.