Added a comment: re: git 2.34: some conflict resolution unit tests fail

This commit is contained in:
kyle 2021-11-21 21:41:36 +00:00 committed by admin
parent a0e9a059ab
commit e2da89ba49

View file

@ -0,0 +1,86 @@
[[!comment format=mdwn
username="kyle"
avatar="http://cdn.libravatar.org/avatar/7d6e85cde1422ad60607c87fa87c63f3"
subject="re: git 2.34: some conflict resolution unit tests fail"
date="2021-11-21T21:41:36Z"
content="""
I see similar failures on GNU/Linux with Git 2.34.
```
$ git version
git version 2.34.0
$ git annex version | grep version:
git-annex version: 8.20211118-ga0e9a059a
$ git annex test -p 'conflict resolution '
Tests
Unit Tests v8 adjusted unlocked branch
conflict resolution (adjusted branch): Init Tests
init: OK (0.12s)
add: OK (0.42s)
All 2 tests passed (0.54s)
OK (2.30s)
conflict resolution movein regression: OK (2.18s)
conflict resolution (mixed directory and file): FAIL (1.71s)
Test.hs:1378:
r1 conflictor variant file missing in: [\".\",\"..\",\"conflictor~HEAD.variant-cc12\",\"conflictor\",\"sha1foo\",\"foo\",\"bar.c\",\".git\"]
Use -p '/conflict resolution /&&/Unit Tests v8 adjusted unlocked branch.conflict resolution (mixed directory and file)/' to rerun this test only.
conflict resolution symlink bit: OK
[... 206 lines ...]
conflict resolution (mixed locked and unlocked file): FAIL (1.51s)
Test.hs:1611:
r1 not exactly 0 variant files in: [\".\",\"..\",\"conflictor.variant-cc12\",\"conflictor~refs_remotes_r2_master.variant-cc12\",\"conflictor\",\"sha1foo\",\"foo\",\"bar.c\",\".git\"]
Use -p '/conflict resolution /&&/Unit Tests v8 locked.conflict resolution (mixed locked and unlocked file)/' to rerun this test only.
8 out of 27 tests failed (53.21s)
(Failures above could be due to a bug in git-annex, or an incompatibility
with utilities, such as git, installed on this system.)
```
> Presumably this is due to the new ort merge strategy that has been
> made default in this new release of git.
Yes, that looks to be it. The above failure goes away if I force
git-annex to merge with the old recursive strategy:
[[!format diff \"\"\"
diff --git a/Git/Merge.hs b/Git/Merge.hs
index b88d9a00f..c50672a3d 100644
--- a/Git/Merge.hs
+++ b/Git/Merge.hs
@@ -39,7 +39,8 @@ merge' extraparams branch mergeconfig commitmode r
go [Param $ fromRef branch]
| otherwise = go [Param \"--no-edit\", Param $ fromRef branch]
where
- go ps = merge'' (sp ++ [Param \"merge\"] ++ qp ++ ps ++ extraparams) mergeconfig r
+ go ps = merge'' (sp ++ [Param \"merge\"] ++ [Param \"-srecursive\"] ++
+ qp ++ ps ++ extraparams) mergeconfig r
sp
| commitmode == AutomaticCommit =
[Param \"-c\", Param \"commit.gpgsign=false\"]
\"\"\"]]
```
$ git version
git version 2.34.0
$ git annex version | grep version:
git-annex version: 8.20211118-g30580a4e7
$ git annex test -p 'conflict resolution '
Tests
Unit Tests v8 adjusted unlocked branch
conflict resolution (adjusted branch): Init Tests
init: OK (0.17s)
add: OK (0.41s)
All 2 tests passed (0.59s)
OK (2.18s)
conflict resolution movein regression: OK (2.24s)
[... 37 lines ...]
All 27 tests passed (67.12s)
```
"""]]