Skip to content
Snippets Groups Projects
  1. Aug 04, 2017
    • muxator's avatar
      buildrpm: do not break in presence of custom user configs · 5aac617a
      muxator authored
      For example, if "hg log" was defined as an alias:
      
        # /etc/mercurial/hgrc
        [alias]
        log = log --graph
      
      the buildrpm script would be surprised by log messages formatted in
      unexpected ways, and bail out.
      
      This patch sets HGPLAIN, effectively resetting all the user configs,
      including log output, to a common state, making the build more
      predictable across all the possible environments.
      5aac617a
    • Kostia Balytskyi's avatar
      sparse: treat paths as cwd-relative · e1c56486
      Kostia Balytskyi authored
      This commit makes it so sparse treats passed paths as CWD-relative,
      not repo-root-realive. This is a more intuitive behavior in my (and some
      other FB people's) opinion.
      
      This is breaking change however. My hope here is that since sparse is
      experimental, it's ok to introduce BCs.
      
      The reason (glob)s are needed in the test is this: in these two cases we
      do not supply path together with slashes, but `os.path.join` adds them, which
      means that under Windows they can be backslashes. To demonstrate this behavior,
      one could remove the (glob)s and run `./run-tests.py test-sparse.t` from
      MinGW's terminal on Windows.
      e1c56486
  2. Aug 02, 2017
  3. Aug 03, 2017
  4. Aug 04, 2017
  5. Aug 03, 2017
    • Kyle Lippincott's avatar
      color: remove warnings if term is not formatted (==dumb or !ui.formatted()) · f9f28ee4
      Kyle Lippincott authored
      If the user sets color.mode=terminfo, and then runs in the shell inside of emacs
      (so TERM=dumb), the previous behavior was that it would warn about no terminfo
      entry for setab/setaf, and then warn about 'failed to set color mode to
      terminfo'.  The first warning is silenced by carrying 'formatted' through to
      _terminfosetup, the second is silenced by using 'formatted' instead of
      ui.formatted().
      
      If --color=on (or ui.color=always) is specified, this will still warn, since the
      formatted boolean is set to true in these cases.
      
      Differential Revision: https://phab.mercurial-scm.org/D223
      f9f28ee4
  6. Jul 27, 2017
  7. Jul 14, 2017
    • Martin von Zweigbergk's avatar
      tests: demonstrate crash when trying to rebase merge without its parents · 855a1856
      Martin von Zweigbergk authored
      As the test case shows, when "hg rebase -d G -r 'B + D + F'" is run on
      the following graph, we crash with traceback. It's reasonable to fail
      because we can not easily produce a correct rebased F. The problem is
      what diff to apply to either the rebased B or the rebased D. We could
      potentially produce the result by e.g. applying the (F-D) diff to the
      rebased B and then applying the reverse (E-D) diff on top, but that
      could result in merge conflicts in each of those steps, which we don't
      have a way of dealing with. So for now, let's just add a test case to
      demonstrate that we crash (i.e. the AssertionError is clearly
      incorrect since the user can run into it).
      
        F
       /|
      C E
      | |
      B D G
       \|/
        A
      
      Differential Revision: https://phab.mercurial-scm.org/D212
      855a1856
  8. Jul 17, 2017
  9. Jul 24, 2017
  10. Aug 01, 2017
  11. Jul 20, 2017
    • Durham Goode's avatar
      rebase: use one dirstateguard for when using rebase.singletransaction · 609606d2
      Durham Goode authored
      This was previously landed as 2519994d25ca but backed out in b63351f6a246 because
      it broke hooks mid-rebase and caused conflict resolution data loss in the event
      of unexpected exceptions. This new version adds the behavior back but behind a
      config flag, since the performance improvement is notable in large repositories.
      
      The old commit message was:
      
      Recently we switched rebases to run the entire rebase inside a single
      transaction, which dramatically improved the speed of rebases in repos with
      large working copies. Let's also move the dirstate into a single dirstateguard
      to get the same benefits. This let's us avoid serializing the dirstate after
      each commit.
      
      In a large repo, rebasing 27 commits is sped up by about 20%.
      
      I believe the test changes are because us touching the dirstate gave the
      transaction something to actually rollback.
      (grafted from 9e3dc3a1638b9754b58a0cb26aaa75d868058109)
      (grafted from 7d38b41d2266d9a02a15c64229fae0da5738dcec)
      
      Differential Revision: https://phab.mercurial-scm.org/D135
      609606d2
  12. Aug 01, 2017
  13. Jul 31, 2017
  14. Jul 27, 2017
    • Boris Feld's avatar
      pypy: fix failing test-devel-warnings.t with Pypy5.6.0 · d524cd1d
      Boris Feld authored
      In Pypy 5.6.0, traceback exception classes are not displayed with their full
      qualified name.
      
      Instead of displaying mercurial.error.ProgrammingError, Pypy displays
      ProgrammingError.
      
      Update the test to support both version.
      d524cd1d
  15. Jul 31, 2017
    • Boris Feld's avatar
      pypy: fix failing test files with Pypy5.6.0 · 6c142f27
      Boris Feld authored
      Pypy 5.6.0 saves cached bytecode files in __pycache__ directory, clean them in
      tests to fix loading old test extensions code.
      
      Doing so should also helps for Python3.x migration.
      6c142f27
  16. Jul 30, 2017
  17. Jul 29, 2017
    • Gregory Szorc's avatar
      statichttprepo: implement wlock() (issue5613) · 8b00c723
      Gregory Szorc authored
      statichttprepo inherits from localrepository. In doing so, it
      obtains default implementations of various methods, like wlock().
      
      Before this change, tags cache writing would call repo.wlock().
      This failed on statichttprepo due to localrepository's wlock()
      looking for an instance attribute that doesn't exist on statichttprepo
      (statichttprepo doesn't call localrepository.__init__).
      
      We /could/ define missing attributes until the base wlock() works.
      However, a statichttprepo is remote and read-only and can't be
      locked. The class already has a lock() that short circuits. So
      it makes sense to implement a short-circuited wlock() as well. That
      is what this patch does.
      
      LockError is expected to be raised when locking fails. The constructor
      takes a number of arguments that are local repository centric. Rather
      than rework LockError to not require them (which would not be
      appropriate for stable), this commit populates dummy values. I don't
      believe they'll ever be seen by the user, as lock failures on
      static http repos should be limited to well-defined (and tested)
      scenarios. We can and should revisit the LockError type to improve
      this.
      8b00c723
    • Gregory Szorc's avatar
      test: add tests for branches and tags with static http repo (issue5613) · 075823a6
      Gregory Szorc authored
      Mercurial currently fails to clone by revision on static http
      repos with tags. The added tests demonstrate this.
      075823a6
  18. Jul 28, 2017
  19. Jul 27, 2017
  20. Jul 20, 2017
  21. Jul 27, 2017
  22. Jul 25, 2017
    • Augie Fackler's avatar
      osx: wire up genosxversion script · c5607b65
      Augie Fackler authored
      The only version strings that are changed are the ones baked into the
      .pkg - hg's self-reported version string doesn't change, so users will
      still see our mostly-pip-compatible version strings.
      
      For reference, the part of our versioning setup that's not PEP440
      compatible is the RC releases - those should be .rc0 insted of
      -rc. It's too late to change that for the 4.3 cycle, so I'll worry
      about fixing that during the 4.4 cycle.
      c5607b65
    • Augie Fackler's avatar
      osx: new script for generating OS X package versions · 283a7da6
      Augie Fackler authored
      If you're shipping prerelease or rc packages using Munki, you'll
      eventually discover that Munki's version comparison logic is not as
      good as pip's. In theory we should be able to fix Munki, but it seems
      entirely reasonable to produce version strings that sort reasonably
      under these conditions. Since the requried logic not brief, add a new
      script and some tests of that logic.
      
      A followup change will wire this into the Makefile.
      283a7da6
    • Augie Fackler's avatar
      tests: update mac packaging test expectations · 441a4550
      Augie Fackler authored
      Some more files are included these days.
      441a4550
Loading