tests/test-issue6642.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 01 Sep 2022 15:49:14 +0200
branchstable
changeset 49469 b5c8524827d2
parent 49315 2f326ea19fbc
child 50725 7e5be4a7cda7
permissions -rw-r--r--
dirstate-v2: no longer register the data-file during transaction If the data file change during the transaction, we cannot truncate it. The content of the file itself is fine as it will get backed up at the same time as the docket. Leaving the trailing data at the end of failed transaction is fine. The dirstate-v2 format supports it. The dead data will simply we written over if necessary.

hg log --debug shouldn't show different data than {file_*} template keywords
https://bz.mercurial-scm.org/show_bug.cgi?id=6642

  $ hg init issue6642
  $ cd issue6642

  $ echo a > a
  $ hg ci -qAm a
  $ echo b > b
  $ hg ci -qAm b
  $ hg up 0 -q
  $ echo c > c
  $ hg ci -qAm c
  $ hg merge -q
  $ hg ci -m merge

  $ hg log -GT '{rev} {desc} file_adds: [{file_adds}], file_mods: [{file_mods}], file_dels: [{file_dels}], files: [{files}]\n'
  @    3 merge file_adds: [], file_mods: [], file_dels: [], files: []
  |\
  | o  2 c file_adds: [c], file_mods: [], file_dels: [], files: [c]
  | |
  o |  1 b file_adds: [b], file_mods: [], file_dels: [], files: [b]
  |/
  o  0 a file_adds: [a], file_mods: [], file_dels: [], files: [a]
  

  $ hg log -r . --debug | grep files
  [1]
  $ hg log -r . --debug -T json | egrep '(added|removed|modified)'
    "added": [],
    "modified": [],
    "removed": [],
  $ hg log -r . --debug -T xml | grep path
  <paths>
  </paths>