Skip to content
Snippets Groups Projects
  1. Dec 07, 2017
    • Boris Feld's avatar
      debugformat: add data about the config when verbose · cfb403b92f43
      Boris Feld authored
      In verbose mode, the command also displays the current configuration choice
      for the variant and the global Mercurial default for it.
      cfb403b92f43
    • Boris Feld's avatar
      debugformat: add a 'debugformat' command · c3e4f196b6e0
      Boris Feld authored
      The command displays basic data about all format variants registered for repo
      upgrades. This gives a quick way to peek into a repository format.
      
      The 'fm.write()' calls are very independent because more data will be added in
      later changeset. Having more separate call make the later patch clearer.
      c3e4f196b6e0
    • Boris Feld's avatar
      upgrade: rename 'removecldeltachain' to 'plain-cl-delta' · 0181f99819d2
      Boris Feld authored
      The new naming is more descriptive of a "state" while the older one was more
      about "action". I'm looking into command exposing more of data about the state
      of the repository so "state" oriented work better there.
      
      The key has not been made public anywhere outside the debug area so it is fine
      to update it.
      0181f99819d2
  2. Dec 09, 2017
  3. Dec 08, 2017
  4. Dec 06, 2017
  5. Dec 08, 2017
  6. Dec 07, 2017
  7. Dec 08, 2017
  8. Dec 06, 2017
    • Jörg Sonnenberger's avatar
      phases: drop the list with phase of each rev, always comput phase sets · d13526333835
      Jörg Sonnenberger authored
      Change the C implementation of phasecache.loadphaserevs to provide only
      the sets for draft and secret phase as well as the number of revisions
      seen.
      
      Change the pure Python implementation of the same functino to compute
      the sets instead of the list of phases for each revision.
      
      Change phasecache.phase to check the phase sets and assume public if the
      revision is in neither draft nor secret set. This is computationally
      slightly more expensive.
      
      Change phasecache.getrevset for public() based queries to compute the
      set of non-matching revisions and return the result as filtered
      fullreposet. A shortcut is taken when no draft or secret revision
      exists.
      
      Bump the module version for the changed interface contract.
      
      Overall, this saves around 16 Bytes per revision whenever the phasecache
      is used, for the test case in issue5691 it is around 3MB. getrevset()
      for a large repository is around 13% slower here, that seems an
      acceptable trade off. Performance impact for phase() should be similar.
      
      Differential Revision: https://phab.mercurial-scm.org/D1606
      d13526333835
  9. Dec 08, 2017
  10. Dec 06, 2017
    • Augie Fackler's avatar
      ui: add diff.showfunc to tweakdefaults · 4caafe280488
      Augie Fackler authored
      This is a little risky, as I think we can have some encoding weirdness
      crop up. showfunc also isn't the most robust feature, but it's still
      often useful context...
      
      Differential Revision: https://phab.mercurial-scm.org/D1610
      4caafe280488
    • Augie Fackler's avatar
      ui: add curses interface to tweakdefaults · 03a83ace9816
      Augie Fackler authored
      This was part of the original proposal, and while *I* don't like the
      curses interface, most users anecdotally seem to greatly prefer it to
      plain text interfaces.
      
      Differential Revision: https://phab.mercurial-scm.org/D1609
      03a83ace9816
    • Boris Feld's avatar
      push: restrict common discovery to the pushed set · 483b5dd0f1aa
      Boris Feld authored
      This changeset make use of the ability of the set discovery to only search
      common changeset for a subset of the repository. Restricting that search to the
      pushed set avoid potential waste of time finding out the status of many
      unrelated related revision.
      
      Repository with many heads were especially badly affected by this. Here is an
      example of findcommonhead discovery for pushing 11 outgoing changeset on a
      repository with tens of thousand of unrelated heads. (discovery run over a ssh
      link to localhost).
      
      Before:
          queries: 92
          time:    44.1996s
      
      After:
          queries: 3
          time:    0.6938s
      
      A x63 speedup even with a network link without latency.
      483b5dd0f1aa
    • Boris Feld's avatar
      setdiscover: allow to ignore part of the local graph · f77121b6bf1b
      Boris Feld authored
      Currently, the push discovery first determines the full set of common nodes
      before looking into what changesets are outgoing. When pushing a specific
      subset, this can lead to pathological situations where we search for the status
      of thousand of local heads that are unrelated to the requested pushes.
      
      To fix this, we need to teach the discovery to ignores part of the graph. Most
      of the necessary pieces were already in place. This changeset just makes them
      available to higher level API and tests them.
      
      Change actually impacting pushes are coming in a later changeset.
      f77121b6bf1b
  11. Dec 07, 2017
  12. Sep 22, 2016
Loading