monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Bogus merge with 0.38


From: Julio M. Merino Vidal
Subject: [Monotone-devel] Bogus merge with 0.38
Date: Sun, 3 Feb 2008 18:32:25 +0100

Hello,

I was doing a change to a workspace when I realized that I could better split it in two different commits. So I checked out a fresh revision of the single-head I had, made part of the change and committed it.

Then I went back to the former repository, which already had the whole changes applied (the part I already committed and the rest) and did an update. I expected some conflicts might arise, but not what happened.

First, look at the following messages printed by mtn (0.38 release under OS X 10.4.11):

----- cut here -----
calypso:~/Projects/atf/src> mtn update
mtn: updating along branch 'org.NetBSD.atf.src'
mtn: selected update target 6c776507a34b435d02334f1771a99c365c5841a3
mtn: warning: Content changes to the file "subrs/atf.config.subr.in"
mtn: warning: will be ignored during this merge as the file has been
mtn: warning: removed on one side of the merge. Affected revisions include:
mtn: warning: Revision : 0000000000000000000000000000000000000004
mtn: modifying configure.ac
mtn: updated to base revision 6c776507a34b435d02334f1771a99c365c5841a3
calypso:~/Projects/atf/src>
----- cut here -----

That revision number of '0000...0004' looks bogus.

But then, the wrong part. mtn diff on configure.ac, after the merge, shows that something really weird went on:

----- cut here -----
calypso:~/Projects/atf/src> mtn diff configure.ac
#
# old_revision [6c776507a34b435d02334f1771a99c365c5841a3]
#
# patch "configure.ac"
#  from [14873357f8f3bd2164bd8d0bda85362c6eef4c0a]
#    to [685477d2c6d738d23377de1f271ee6f112c473d4]
#
============================================================
--- configure.ac        14873357f8f3bd2164bd8d0bda85362c6eef4c0a
+++ configure.ac        685477d2c6d738d23377de1f271ee6f112c473d4
@@ -172,8 +172,6 @@ if test x"${ATF_SHELL}" = x""; then
 fi
 if test x"${ATF_SHELL}" = x""; then
AC_MSG_ERROR([No POSIX shell interpreter found; maybe set ATF_SHELL?])
-fi
-
dnl -----------------------------------------------------------------------
 dnl Check for required tools.
dnl -----------------------------------------------------------------------
@@ -184,7 +182,7 @@ dnl ------------------------------------
 dnl Finally, generate output.
dnl -----------------------------------------------------------------------

-AC_OUTPUT([Makefile subrs/atf.config.subr])
+AC_OUTPUT([Makefile])

 if test ${enable_shared} = yes; then
AC_MSG_WARN([Shared libraries with unstable ABIs/APIs have been enabled.])
calypso:~/Projects/atf/src>
----- cut here -----

The first chunk is completely bogus.

This is what the head of the repository did on that file:

----- cut here -----
#
# patch "configure.ac"
#  from [40b0b76d69c39ea507c4c7e562658d8f47ab7e54]
#    to [14873357f8f3bd2164bd8d0bda85362c6eef4c0a]
#
============================================================
--- configure.ac        40b0b76d69c39ea507c4c7e562658d8f47ab7e54
+++ configure.ac        14873357f8f3bd2164bd8d0bda85362c6eef4c0a
@@ -174,16 +174,6 @@ fi
AC_MSG_ERROR([No POSIX shell interpreter found; maybe set ATF_SHELL?])
 fi

-AC_MSG_CHECKING([whether ${ATF_SHELL} supports trap -])
-output=`${ATF_SHELL} -c 'trap -- -' 2>&1`
-if test x"${output}" != x""; then
-    AC_SUBST([SH_TRAP_DASH], [no])
-    AC_MSG_RESULT([no])
-else
-    AC_SUBST([SH_TRAP_DASH], [yes])
-    AC_MSG_RESULT([yes])
-fi
-
dnl -----------------------------------------------------------------------
 dnl Check for required tools.
dnl -----------------------------------------------------------------------
----- cut here -----

And this is the diff of the file in the final workspace *before* the merge. As you can see, mtn confused part of the first chunk here and killed some code before it in the results:

----- cut here -----
--- configure.ac        40b0b76d69c39ea507c4c7e562658d8f47ab7e54
+++ configure.ac        ede58dacfc56401317b4637f3afda44b0757c2e7
@@ -174,16 +174,6 @@ fi
AC_MSG_ERROR([No POSIX shell interpreter found; maybe set ATF_SHELL?])
 fi

-AC_MSG_CHECKING([whether ${ATF_SHELL} supports trap -])
-output=`${ATF_SHELL} -c 'trap -- -' 2>&1`
-if test x"${output}" != x""; then
-    AC_SUBST([SH_TRAP_DASH], [no])
-    AC_MSG_RESULT([no])
-else
-    AC_SUBST([SH_TRAP_DASH], [yes])
-    AC_MSG_RESULT([yes])
-fi
-
dnl -----------------------------------------------------------------------
 dnl Check for required tools.
dnl -----------------------------------------------------------------------
@@ -194,7 +184,7 @@ dnl ------------------------------------
 dnl Finally, generate output.
dnl -----------------------------------------------------------------------

-AC_OUTPUT([Makefile subrs/atf.config.subr])
+AC_OUTPUT([Makefile])

 if test ${enable_shared} = yes; then
AC_MSG_WARN([Shared libraries with unstable ABIs/APIs have been enabled.])
----- cut here -----

Is this a known bug?  Has it already been fixed?

If you need more details to diagnose this, please let me know. The database is public, by the way.

Thank you.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]