• Sjoerd Mullender's avatar
    Fixed basejoin. There were two main problems: · bcfc844d
    Sjoerd Mullender authored
    - basejoin('some/url', '#name') would strip the last component of
      some/url and resturn some/#name.
    - basejoin('file.html', 'relative/path') would return something like
      file:/relative/path, making a relative path into an absolute one.
    These bugs are fixed by some drastic changes.  No scheme is added when
    none is present (i.e. it works as replacement for posix.joinpath).
    If a scheme is present in the second argument, it is returned
    unprocessed.  No hostname are added in this case.  If no scheme is
    present, the scheme of the first argument, if present, is used.
    The algorithm is commented profusely.
    Also fixed a typo in a comment.
    bcfc844d
urllib.py 18.5 KB