1. 13 Jun, 2020 1 commit
    • Matt Harbison's avatar
      visdiff: account for the new `copies.branch_copies` class · 3fcde995dc6a
      Matt Harbison authored
      Double clicking any file in a merge commit that is a descendant of a commit with
      copies was triggering a crash dialog.  It didn't seem to happen in the original
      commit, or other merges in a private repo where the problem was discovered.
      
      --HG--
      branch : stable
      3fcde995dc6a
  2. 07 Feb, 2020 1 commit
  3. 04 Feb, 2020 1 commit
    • Matt Harbison's avatar
      visdiff: convert the tool command back to str before displaying in an error dlg · eb63baf582e8
      Matt Harbison authored
      The str cast is necessary, otherwise an AttributeError is raised saying (for
      example) that 'FileNotFoundError' object has no attribute 'decode'.  In testing
      this (by trying to `subprocess.Popen("NULL")`), the error dialog pops up with
      the title, but nothing else in the box.  The following message is printed in the
      terminal, and the whole process hangs:
      
          QObject::startTimer: Timers can only be used with threads started with QThread
      
      --HG--
      branch : stable
      eb63baf582e8
  4. 06 Feb, 2020 1 commit
  5. 04 Feb, 2020 4 commits
  6. 01 Feb, 2020 1 commit
  7. 15 Dec, 2019 1 commit
  8. 18 Nov, 2019 1 commit
  9. 15 Nov, 2019 1 commit
  10. 07 Sep, 2019 1 commit
  11. 11 Sep, 2019 1 commit
  12. 20 Sep, 2019 1 commit
  13. 11 Sep, 2019 1 commit
  14. 07 Sep, 2019 1 commit
    • kiilerix's avatar
      py3: fix visdiff.launchtool · f33d43f06d0a
      kiilerix authored
      Don't change that things are passed as byte string, but accept that the
      'replace' dict has system string as key so it can be created as 'dict()' with
      named parameters.
      f33d43f06d0a
  15. 31 Aug, 2019 1 commit
  16. 25 Aug, 2019 1 commit
    • kiilerix's avatar
      assert: try to show some relevant value when an assert fails · 54976f208547
      kiilerix authored
      Debugging and print statements can tell more about failing asserts, but it is
      nice to get *some* information up front, also to make it easier to reproduce.
      
      General guidelines:
      
      Try to avoid anything that must compute something and thus can fail - try to
      just inspect local variables (or whatever assert looked at).
      
      For type related asserts, try to add repr().
      
      Sometimes, multiple variables are relevant - in that case use tuples.
      54976f208547
  17. 23 Aug, 2019 1 commit
    • Matt Harbison's avatar
      configitems: drop the default parameters for registered items · 2cd812a72398
      Matt Harbison authored
      A couple of notable things:
      
        - `tortoisehg.autoresolve` still gets a default value in backout and rebase,
          even though it is not registered dynamicdefault.
      
        - the following were left with '' as the default, because it is used to set
          text with a QString, and it is unknown how far back None would be accepted.
          (Any other '' -> None conversions are not used to set text)
      
          * email.cc
          * email.to
          * gpg.key
          * hostfingerprints.*  (strange the default here is a list)
      
        - `tortoisehg.overlayicons` in nautilus-thg needs to be registered, as does
          `debug.delaylock`.
      
        - `web.name` still takes a default because it is dynamicdefault
      2cd812a72398
  18. 19 May, 2019 1 commit
    • Matt Harbison's avatar
      py3: migrate unicode() to pycompat.unicode() · 6a0080d4e5a5
      Matt Harbison authored
      Fixed up after running `2to3 -w -n -f unicode .`, and re-adding the dropped u''
      prefixes.  The pycompat.unicode() hack is copied into setup.py because that
      module declares the dependency on mercurial.
      6a0080d4e5a5
  19. 14 Apr, 2019 1 commit
  20. 12 Apr, 2019 1 commit
  21. 24 Mar, 2019 1 commit
  22. 23 Mar, 2019 1 commit
  23. 08 Oct, 2018 1 commit
  24. 03 Oct, 2018 1 commit
    • Matt Harbison's avatar
      visdiff: use scmutil.revsymbol() to resolve --change · 2c8f85f3a8e7
      Matt Harbison authored
      I triggered this by accidentally double clicking a file in the shelved half of
      the shelf widget:
      
          Traceback (most recent call last):
            File "tortoisehg\hgqt\chunks.pyo", line 166, in vdiff
            File "tortoisehg\hgqt\visdiff.pyo", line 216, in visualdiff
            File "tortoisehg\hgqt\thgrepo.pyo", line 772, in __getitem__
            File "mercurial\localrepo.pyo", line 856, in __getitem__
            File "mercurial\context.pyo", line 439, in __init__
          ProgrammingError: unsupported changeid 'patch' of type <type 'str'>
      
      Now it pops up a message saying 'Unable to find changeset'.  Oddly, the value of
      --change in this case is 'patch', and I wasn't able to trigger this with visual
      diff.
      
      --HG--
      branch : stable
      2c8f85f3a8e7
  25. 26 May, 2018 2 commits
  26. 06 Dec, 2017 1 commit
  27. 25 Sep, 2016 1 commit
  28. 08 Dec, 2015 1 commit
  29. 11 Aug, 2015 1 commit
    • Matt Harbison's avatar
      visdiff: preserve the executable bit after editing a file · fbc4c289547c
      Matt Harbison authored
      I noticed on OS X that editing an executable shell script in visual diff would
      reset the file to 644 after saving.  The problem only occurred if a snapshot was
      required, e.g. if there was more than one file in the diff.  It looks like
      util.copyfile() preserves the mode when copying from $tmp back to wdir(), so it
      was just a matter of copying the mode when first creating the temp file.
      
      This code was ripped off from the extdiff extension prior to it switching to
      using archive, but I left out the symlink case since this code isn't using
      wopener.  Perhaps this should be switched to use archive as well, which would
      allow subrepo support.
      
      --HG--
      branch : stable
      fbc4c289547c
  30. 03 Aug, 2014 1 commit
  31. 10 Aug, 2015 3 commits
  32. 01 Feb, 2014 1 commit
  33. 01 Dec, 2013 1 commit
  34. 02 Jun, 2013 1 commit