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 serhiy.storchaka
Recipients pitrou, serhiy.storchaka
Date 2013-12-07.13:02:46
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1386421366.52.0.287860740226.issue19918@psf.upfronthosting.co.za>
In-reply-to
Content
Actually relative_to() returns invalid path object.

>>> import pathlib
>>> p = pathlib.PureWindowsPath('C:/Foo/Bar/Baz').relative_to('C:')
>>> p
PureWindowsPath('//Foo/Bar/Baz')
>>> str(p)
'\\\\Foo\\Bar\\Baz'
>>> p.drive
''
>>> p.root
''
>>> p.parts
('\\', 'Foo', 'Bar', 'Baz')
>>> p.is_absolute()
False
>>> p2 = pathlib.PureWindowsPath(str(p))
>>> p2.drive
'\\\\Foo\\Bar'
>>> p2.root
'\\'
>>> p2.parts
('\\\\Foo\\Bar\\', 'Baz')
>>> p2.is_absolute()
True

Here is a patch which fixes both bugs.

>>> import pathlib
>>> p = pathlib.PureWindowsPath('C:/Foo/Bar/Baz').relative_to('C:')
>>> p
PureWindowsPath('/Foo/Bar/Baz')
>>> str(p)
'\\Foo\\Bar\\Baz'
>>> p.drive
''
>>> p.root
'\\'
>>> p.parts
('\\', 'Foo', 'Bar', 'Baz')
History
Date User Action Args
2013-12-07 13:02:46serhiy.storchakasetrecipients: + serhiy.storchaka, pitrou
2013-12-07 13:02:46serhiy.storchakasetmessageid: <1386421366.52.0.287860740226.issue19918@psf.upfronthosting.co.za>
2013-12-07 13:02:46serhiy.storchakalinkissue19918 messages
2013-12-07 13:02:46serhiy.storchakacreate