[Python-Dev] proposed os.fspath() change (original) (raw)
Koos Zevenhoven k7hoven at gmail.com
Wed Jun 15 15:24:43 EDT 2016
- Previous message (by thread): [Python-Dev] proposed os.fspath() change
- Next message (by thread): [Python-Dev] proposed os.fspath() change
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, Jun 15, 2016 at 10:15 PM, Brett Cannon <brett at python.org> wrote:
On Wed, 15 Jun 2016 at 12:12 Koos Zevenhoven <k7hoven at gmail.com> wrote:
>> if isinstance(filename, os.PathLike): By the way, regarding the line of code above, is there a convention regarding whether implementing some protocol/interface requires registering with (or inheriting from) the appropriate ABC for it to work in all situations. IOW, in this case, is it sufficient to implement fspath to make your type pathlike? Is there a conscious trend towards requiring the ABC? ABCs like os.PathLike can override subclasshook so that registration isn't required (see https://hg.python.org/cpython/file/default/Lib/os.py#l1136). So registration is definitely good to do to be explicit that you're trying to meet an ABC, but it isn't strictly required.
Ok I suppose that's fine, so I propose we update the ABC part in the PEP with subclasshook.
And the other question could be turned into whether to make str and bytes also PathLike in subclasshook.
-- Koos
--
- Koos Zevenhoven + http://twitter.com/k7hoven +
- Previous message (by thread): [Python-Dev] proposed os.fspath() change
- Next message (by thread): [Python-Dev] proposed os.fspath() change
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]