Unfortunately your changes break the bzr test suite so I urge you to be extremely careful if you're using that modified bzr.
Internally bzr use unicode paths only, modidying urlutils.unescape() as you did is not an option
(the docstring says: This returns a Unicode path from a URL)
You may want to look at bzrlib/transport/ftp/__init__.py where urlutils.unescape() is called in _remote_path() with a comment fully related to this bug.
I'm sure you're on the right track though but make sure you don't break the test suite :)
@Kamil, thanks for working on that !
Unfortunately your changes break the bzr test suite so I urge you to be extremely careful if you're using that modified bzr.
Internally bzr use unicode paths only, modidying urlutils.unescape() as you did is not an option
(the docstring says: This returns a Unicode path from a URL)
You may want to look at bzrlib/ transport/ ftp/__init_ _.py where urlutils.unescape() is called in _remote_path() with a comment fully related to this bug.
I'm sure you're on the right track though but make sure you don't break the test suite :)