• 
      

    Update some development dependencies for Python 3.

    Review Request #10945 — Created March 10, 2020 and submitted

    Information

    Review Board
    release-4.0.x
    ed7649b...

    Reviewers

    Now that Mercurial supports Python 3, we no longer have to use a
    dependency specifier to limit installs to Python 2.7. We can instead
    just simply install. We're keeping the original minimum version for now
    (making it easier to test with Mercurial 4.x), but this will always get
    the 5.x release on Python 3.x since there won't be an existing 4.x
    release installed.

    This change also works around the lack of pre-compiled Python 3.8
    p4python builds on non-Linux platforms. If a pre-compiled build is not
    available, then pip will try to install the p4python source tarball,
    which cannot work by default on non-Linux platforms due to a reliance on
    manual configuration of the OpenSSL location. Until they either improve
    upon this or provide 3.8 builds, we'll need to skip installation on this
    version of Python.

    The Perforce unit tests received updates to run without having P4
    installed. We had some old code that attempted to do this, but it was
    archaic and no longer worked.

    And finally, subvertpy 0.10.1 (the latest release, which is now 2.5
    years old) fails when imported on Python 3.8. There's no indicator as to
    when a new release may be, and it's pretty broken on 3.8, so we no
    longer attempt to install it there.

    Tested installing on Python 2.7 and 3.5-3.8.

    Verified that Mercurial 5.3 (latest series) was installed on all
    Python 3.x environments.

    Verified that p4python was installed on all Python environments aside
    from 3.8.

    Verified that subvertpy was not installed on Python 3.8.

    All unit tests pass on Python 3.8.

    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-4.0.x (a32b331)