Skip to content
Snippets Groups Projects
  1. Nov 05, 2019
    • Gregory Szorc's avatar
      automation: install python3-venv Debian package · acdd4f28
      Gregory Szorc authored
      Debian's python install has a crippled venv by default, as it is
      lacking ensurepip. When you try to run `python3 -m venv` it tells
      you to install `python3-venv`. So this commit does that in our
      automation environment so we can fully test installing Mercurial
      using venv+pip with the system Python.
      
      Differential Revision: https://phab.mercurial-scm.org/D7229
      acdd4f28
    • Gregory Szorc's avatar
      tests: look for ensurepip before using venv · ca0cd0a1
      Gregory Szorc authored
      Debian appears to cripple the venv module by default by
      removing the associated ensurepip functionality. (The module
      isn't present at all.) This caused test-install.t to fail when
      using the Debian python3 unless the python3-venv package was
      installed.
      
      This commit introduces a new hghave requirement for detecting
      ensurepip and makes the Python 3 install variant conditional on
      its presence. This should make test-install.t pass when
      using an incomplete Debian Python.
      
      Differential Revision: https://phab.mercurial-scm.org/D7228
      ca0cd0a1
  2. Oct 17, 2019
    • Matt Harbison's avatar
      automation: avoid '~' in the temp directory on Windows · a77338d2
      Matt Harbison authored
      If a long-ish username is used, the environment variable ends up with a '~' to
      be 8.3 path compatible.  That in turn causes a handful of tests (mostly ssh
      related) to add quotes around $TESTMP.
      
      I have no AWS experience, so I have no idea if this is the proper way to do it.
      But I've hit this problem locally, and redirecting the directory is a
      workaround.  I don't recall if the directory is created on demand by the test
      harness, but presumably if this is configured before the machine boots, Windows
      will do it for us.
      
      Differential Revision: https://phab.mercurial-scm.org/D7130
      a77338d2
  3. Nov 05, 2019
  4. Nov 04, 2019
  5. Nov 01, 2019
  6. Nov 02, 2019
  7. Nov 04, 2019
  8. Nov 02, 2019
    • Gregory Szorc's avatar
      py3: define and use json.loads polyfill · 579672b3
      Gregory Szorc authored
      Python 3.5's json.loads() requires a str. Only Python 3.6+
      supports passing a bytes or bytearray.
      
      This commit implements a json.loads() polyfill on Python 3.5
      so that we can use bytes. The added function to detect encodings
      comes verbatim from Python 3.7.
      579672b3
    • Gregory Szorc's avatar
      contrib: require Python 3.6 for byteify-strings.py · bb509f39
      Gregory Szorc authored
      This script makes use of `token.COMMENT`, which apparently
      isn't present until Python 3.6. So make the script and its
      test conditional on Python 3.6.
      bb509f39
    • Gregory Szorc's avatar
      demandimportpy3: only use lazy extension loader on Python 3.6+ · 2d31ef3f
      Gregory Szorc authored
      There was an inline comment denoting a bug in the lazy extension
      loader on Python 3.5 which prevents it from working there. But the
      code was not conditional on the Python version.
      
      The result of this was a myriad of failures on Python 3.5 due to
      getattr() and friends not working on lazy extension modules.
      
      By making extension modules non-lazy on Python 3.5, we reduce the
      number of test failures from 48 to 22 on that Python version.
      2d31ef3f
    • Gregory Szorc's avatar
      ui: flush before prompting for input with readline · aaa04691
      Gregory Szorc authored
      I was using `hg absorb` with Python 3 and noticed that the
      prompt was appearing without any output about what would be
      done. After I answered the prompt, the output was printed
      to stdout.
      
      This appears to be a buffering difference between Python 2
      and Python 3.
      
      To work around it, this commit adds an explicit flush() before
      calling the raw input function when readline is used.
      aaa04691
    • Martin von Zweigbergk's avatar
      histedit: restore hex nodeids to be 12 digits long · b27cf9f5
      Martin von Zweigbergk authored
      I accidentally switched from 12 digits to 40 digits while making the
      code py3-compatible. Thanks to Yuya for noticing.
      
      Differential Revision: https://phab.mercurial-scm.org/D7200
      b27cf9f5
  9. Oct 29, 2019
  10. Nov 01, 2019
Loading