Skip to content
Snippets Groups Projects
  1. Feb 01, 2013
    • Kevin Bullock's avatar
      hgweb: rename 'changesetbaseline' template to 'difffrom' · 41eabb5b
      Kevin Bullock authored
      More accurately reflects what it will be used for, and is also shorter.
      This template is used to change which rev the current rev is diff'd
      against. For example, if you're at '/rev/P1:REV', this would link to a
      path like '/rev/P2:REV'.
      
      Example usage in a template:
      
          {parent%difffrom}
      41eabb5b
    • Pierre-Yves David's avatar
      rebase: mention --rev in the help · 0324a1d8
      Pierre-Yves David authored
      This changeset adds a small mention of it in the help to prevent
      confusion. This small addition references online help that is easier to
      update and improve at release time.
      
      Following Wagner Bruna's advice, this is added in a plain new paragraph
      to not invalidate current translation this close to the release.
      0324a1d8
    • Pierre-Yves David's avatar
      hgweb: remove baseline info from paper template · 0c51532e
      Pierre-Yves David authored
      The user interface introduced in d605a82cf189 is not considered ready
      for prime time yet. The internal code stays in place for custom template
      usage. The feature is ultimately wanted and will be re-enabled soon. The
      current issue is only related to the visual of the current interface.
      0c51532e
    • Kevin Bullock's avatar
      rebase: mention phases in the help · 9fbeb61b
      Kevin Bullock authored
      Mention that Mercurial helps you not do what you've just been warned not
      to do, with a reference to the 'phases' help topic (not the 'phase'
      command help).
      
      Thanks to Pierre-Yves David <pierre-yves.david@ens-lyon.org> for
      motivating this change and Wagner Bruna
      <wagner.bruna+mercurial@gmail.com> for advising on how to do it in an
      i18n-friendly way.
      9fbeb61b
  2. Jan 31, 2013
    • Angel Ezquerra's avatar
      hgwebdir: use web.prefix when creating url breadcrumbs (issue3790) · bf8bbbf4
      Angel Ezquerra authored
      The web.prefix setting was being ignored when creating the index URL
      breadcrumbs.
      
      We only need to fix hgwebdir and not hgweb because hgweb gets the complete URL
      request, including the prefix, while hgwebdir gets a "subdir" which does not
      include the prefix.
      
      This fix is slightly different of what was suggested on the bug tracker. In
      there it was suggested to hide the prefix itself from the breadcrumb. I think
      that would be a better solution, but it would require changing all the index
      templates and passing the prefix to the template engine, which may be too big
      a change for stable during the freeze. For now this fixes the problem, and the
      fix could be improved during the next cycle.
      bf8bbbf4
    • Siddharth Agarwal's avatar
      rebase: delete divergent bookmarks on destination (issue3685) · 2a1fac36
      Siddharth Agarwal authored
      Similar to merge, divergent bookmarks are only deleted when the bookmark is on
      the destination parent.
      2a1fac36
  3. Jan 30, 2013
  4. Jan 31, 2013
  5. Nov 28, 2012
    • Matt Harbison's avatar
      share: backout fd903f89e42b, except the test · 798ab869
      Matt Harbison authored
      Locating the share source when no default path is available is now handled in
      subrepo._abssource(), so unconditionally setting a default path (and the
      associated problems) can be avoided.
      
      The test change reflects the fact that a default path is no longer set on the
      resulting share.
      798ab869
    • Matt Harbison's avatar
      subrepo: use sharepath if available when locating the source repo · f254ab62
      Matt Harbison authored
      This is an alternative fix for issue3518, enabling sharing of repositories with
      subrepos, without unconditionally setting the default path in the resulting
      repo's hgrc file.  Better test coverage is added here, but won't prove this code
      is working until fd903f89e42b is backed out.
      
      The problem with the original fix is, if a default path is not available to be
      copied over from the share source, the default path on the resulting repo is set
      to the source location.  Since that's where the actual repository is stored, the
      path is essentially self-referential, so push, pull, incoming and outgoing
      effectively operate on itself.  While incoming and outgoing make it look like
      nothing was changed, push currently hangs (see issue3657).  In this case where
      there is not a real default path, these operations should abort with
      "default(-push) not found", like the source repo would.  Note this problem with
      the original fix affected repos without subrepos too.
      f254ab62
  6. Jan 22, 2013
  7. Jan 31, 2013
  8. Jan 30, 2013
  9. Jan 28, 2013
  10. Jan 30, 2013
  11. Jan 29, 2013
  12. Jan 27, 2013
  13. Jan 29, 2013
  14. Jan 28, 2013
  15. Jan 25, 2013
  16. Jan 28, 2013
    • Mads Kiilerich's avatar
      largefiles: allow use of urls with #revision · f1700480
      Mads Kiilerich authored
      largefiles tried to create a peer directly with the specified url. That caused
        abort: unsupported URL component: "..."
      if a revision was specified in the url.
      
      The branch name do not matter for largefiles' use of remote peers. Largefiles
      will be shared among all branches anyway.
      f1700480
    • Mads Kiilerich's avatar
      largefiles: don't verify largefile hashes on servers when processing statlfile · a977b42d
      Mads Kiilerich authored
      When changesets referencing largefiles are pushed then the corresponding
      largefiles will be pushed too - unless the target already has them. The client
      will use statlfile to make sure it only sends largefiles that the target
      doesn't have. The server would however on every statlfile check that the
      content of the largefile had the expected hash. What should be cheap thus
      became an expensive operation that trashed the disk and the cache.
      
      Largefile hashes are already checked by putlfile before being stored on the
      server. A server should thus be able to keep its largefile store free of
      errors - even more than it can keep revlogs free of errors. Verification should
      happen when running 'hg verify' locally on the server. Rehashing every
      largefile on every remote stat is too expensive.
      
      Clients will also stat lfiles before downloading them. When the server verified
      the hash in stat it meant that it had to read the file twice to serve it.
      
      With this change the server will assume its own hashes are ok without checking
      them on every statlfile.
      
      Some consequences of this change:
      - in case of server side corruption the problem will be detected by the
        existing check on the client side - not on server side
      - clients that could upload an uncorrupted largefile when pushing will no
        longer magically heal the server (and break hardlinks) - a client will now
        only upload its uncorrupted files after the corrupted file has been removed
        on the server side
      - client side verify will no longer report corruption in files it doesn't have
      
      (Issue3123 discussed related problems - and how they have been fixed.)
      a977b42d
    • Mads Kiilerich's avatar
      tests: clarify test for pushing corrupted largefile · 7aacc114
      Mads Kiilerich authored
      The test no longer tested that the server prevented pushing a corrupt
      largefile. At the same time it tested what happened when the server already had
      a corrupt largefile.
      
      These two cases are now separated.
      7aacc114
    • Mads Kiilerich's avatar
      largefiles: verify all files in each revision and report errors in any revision · 1067a624
      Mads Kiilerich authored
      Verify used 'any' and would stop verifying after the first failure in each
      changeset.
      
      The exit code only reported the result from the last changeset.
      1067a624
    • Mads Kiilerich's avatar
      tests: better test coverage of largefiles localstore verify · 39cecda9
      Mads Kiilerich authored
      This demonstrates problems that will be fixed later.
      39cecda9
    • Mads Kiilerich's avatar
      largefiles: adapt remotestore._getfile to batched statlfile · d43823f9
      Mads Kiilerich authored
      9e1616307c4c introduced batching of statlfile, but not all codepaths got
      converted.
      
      _getfile gave _stat garbage and got garbage back. The garbage didn't match the
      expected error codes and was thus interpreted as success. It could thus end up
      trying to fetch a largefile that didn't exist.
      
      Instead we now pass _stat valid input and handle both correct and invalid
      output correctly.
      
      This makes the code work as intended ... but it would probably be better if it
      didn't abort on missing largefiles, just like it happened to do before.
      d43823f9
    • Mads Kiilerich's avatar
      largefiles: don't allow corruption to propagate after detection · ce5f529d
      Mads Kiilerich authored
      basestore.get uses util.atomictempfile when checking and receiving a new
      largefile ... but the close/discard logic was too clever for largefiles.
      Largefiles relied on being able to discard the file and thus prevent it from
      being written to the store. That was however too brittle. lfutil.copyandhash
      closes the infile after writing to it ... with a 'blecch' comment. The discard
      was thus a silent noop, and as a result of that corruption would be detected
      ... and then the corrupted files would be used anyway.
      
      Instead we now use a tmp file and rename or unlink it after validating it.
      
      A better solution should be implemented ... but not now.
      ce5f529d
    • Mads Kiilerich's avatar
      largefiles: adapt verify to batched remote statlfile (issue3780) · 6f219eb8
      Mads Kiilerich authored
      9e1616307c4c introduced batching of statlfile, but not all codepaths got
      converted.
      
      'hg verify' with a remotestore could thus crash with
        TypeError: 'builtin_function_or_method' object is not iterable
      
      Also, the 'hash' variable was used without assigning to it. Don't use variable
      names that collide with Python built-in functions. Instead we use 'expecthash'
      as in localstore.
      
      The tests for this issue covers an untested area. The tests happens to also
      reveal incorrect attempts at getting non-existing largefiles, bad server side
      handling of that, and corruption issues - all to be fixed later.
      6f219eb8
    • Mads Kiilerich's avatar
      largefiles: let wirestore._stat return stats as expected by remotestore verify · ed647c59
      Mads Kiilerich authored
      - preparing for fixing verify crash.
      ed647c59
  17. Jan 27, 2013
Loading