Your message dated Tue, 15 Apr 2008 22:14:52 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#452385: fixed in mercurial 1.0-1
has caused the Debian Bug report #452385,
regarding Recording mtime after recording commit message leads to hidden (lost)
changes
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)
--
452385: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=452385
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: mercurial
Version: 0.9.5-2
Severity: normal
>From #mercurial on irc.freenode.net (I am twb):
twb> I found a bug. Follow my logic:
twb>
twb> 1. I run hg ci.
twb> 2. it starts up an editor to add a commit message
twb> 3. WITHOUT closing that editor, I make additional edits to the
twb> file being committed, then close the editor.
twb>
twb> Now, hg ci has not committed these extra changes, but
twb> subsequent hg ci and hg st ignore them, because the
twb> original hg ci has decided that it has checked in all
twb> changes up to the time it FINISHED running
twb> I did `touch *' and suddenly hg st reported a whole bunch
twb> of changes that would have been LOST COMPLETELY if I had
twb> not been a paranoid bastard
pmezard> did you add the file in same commit ?
pmezard> or just modified it ?
twb> I just modified it.
pmezard> ok
twb> I may have used hg record rather than hg ci initially, but I
twb> don't think so.
It looks to me (without examining the code) like hg ci is doing
1. collecting changes;
2. using $EDITOR to get a commit message; and
3. note the mtime of each file in .hg somewhere.
hg st then only examines files with newer mtimes than hg ci noted.
Because changes were made between steps (1) and (3), hg decides they
do not exist until the mtime is changed (by more edits of by
touch(1)). It tells the user that there are no uncommitted changes.
Since (1) and (3) are very quick, but (2) waits for the user and could
thus take minutes or hours, I suggest that the order of (2) and (3) be
reversed. This would mean that this race condition has a much
narrower window in which to occur.
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (990, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.22-3-amd64 (SMP w/1 CPU core)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages mercurial depends on:
ii libc6 2.6.1-6 GNU C Library: Shared libraries
ii python 2.4.4-6 An interactive high-level object-o
ii python-support 0.7.5 automated rebuilding support for p
ii python2.5 2.5.1-5 An interactive high-level object-o
Versions of packages mercurial recommends:
ii meld 1.1.5.1-2 graphical tool to diff and merge f
ii rcs 5.7-21 The GNU Revision Control System
ii tk8.4 [wish] 8.4.16-2 Tk toolkit for Tcl and X11, v8.4 -
-- no debconf information
--- End Message ---
--- Begin Message ---
Source: mercurial
Source-Version: 1.0-1
We believe that the bug you reported is fixed in the latest version of
mercurial, which is due to be installed in the Debian FTP archive:
mercurial-common_1.0-1_all.deb
to pool/main/m/mercurial/mercurial-common_1.0-1_all.deb
mercurial_1.0-1.diff.gz
to pool/main/m/mercurial/mercurial_1.0-1.diff.gz
mercurial_1.0-1.dsc
to pool/main/m/mercurial/mercurial_1.0-1.dsc
mercurial_1.0-1_i386.deb
to pool/main/m/mercurial/mercurial_1.0-1_i386.deb
mercurial_1.0.orig.tar.gz
to pool/main/m/mercurial/mercurial_1.0.orig.tar.gz
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Vincent Danjean <[EMAIL PROTECTED]> (supplier of updated mercurial package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Mon, 07 Apr 2008 00:11:40 +0200
Source: mercurial
Binary: mercurial mercurial-common
Architecture: all i386 source
Version: 1.0-1
Distribution: unstable
Urgency: low
Maintainer: Python Applications Packaging Team <[EMAIL PROTECTED]>
Changed-By: Vincent Danjean <[EMAIL PROTECTED]>
Closes: 443428 447094 452385 454326 466006 466731 469326 472185 472583 472943
Description:
mercurial-common - Scalable distributed version control system (Common files)
mercurial - Scalable distributed version control system
Changes:
mercurial (1.0-1) unstable; urgency=low
.
* new upstream version
Closes several Debian bugs:
* "hg convert broken" (Closes: #472185)
* "hgmerge: uses non-POSIX syntax `type' in /bin/sh script" (Closes:
#447094)
* "hgmerge: --help option gives a message that ends strangely" (Closes:
#443428)
* "mercurial: hg/editor interaction leaves a lot of temp files around"
(Closes: #472943)
* "mercurial: Mercurial merge with meld needs hint" (Closes: #466006)
* "glog: tries to close closed fd" (Closes: #454326)
* "mercurial: `hg diff` can break UTF-8 encoding" (Closes: #469326)
* "Recording mtime after recording commit message leads to hidden (lost)
changes" (Closes: #452385)
General:
* greatly improved merge tool configuration, see "hgrc.5.txt" for details
* improved copy/rename handling in diffs, status, and merge
* files in .hg inherit permissions from .hg/store
* infer --repository when possible, so commands may be run from anywhere.
* easy-installable
* new "droplet" logo
.
Commands:
* archive: disable ".hg_archival.txt" file addition with "ui.archivemeta"
* bisect: now built-in with greatly improved performance and usability
* bundle: new --all option to bundle the whole repository more easily.
* cat: apply decode filters with --decode
* clone: can clone from a full-history bundle
* commit: warn when creating a new head
* debugancestor: index argument is now optional
* diff: set the number of context line to show with -U/--unified
* grep: display matched revisions commit date with --date
* import: new --no-commit and --user options
* incoming/outgoing: add --limit option
* log: use -b/--only-branch to show revisions of a single branch
* remove: improve handling for --after
* revert: major speedup
* serve: prefix the served path with --prefix (also in [web] section)
* status: unknown files are skipped by --quiet
* tag: allow multiple tags to be added or removed
* tags: --verbose flags local tags
* update: switch between named branches without -C
.
Extensions:
* churn: promoted to an official extension (previously in contrib)
* color: new extension coloring "status" and "qseries" command outputs
* convert:
* allow synthetic history to be spliced in with --splicemap
* support GNU Arch and Monotone sources
* svn: allow shallow conversions of single branches with
convert.svn.startrev option.
* svn: make trunk/branches/tags layout detection more flexible by
allowing either of them to be skipped.
* svn: preliminary support as a conversion target
* hgk: configuration file changed from .gitk to .hgk
* highlight: new extension enabling syntax highlighting in hgweb file view
(requires pygments)
* inotify: new extension using Linux 2.6 inotify API for instant status
checking
* keyword: new extension for filewise RCS-keyword expansion in working
directory
* mq: new --currentdate, --date, --currentuser, and
--user options
* record: add "qrecord" command when used with mq
.
Web interface:
* improved WSGI integration and compatibility
* follow symlinks in hgwebdir collections
* show branches in most of gitweb templates
* add line anchors to annotate, changeset, diff and file views
* support web.baseurl in hgwebdir, overriding SCRIPT_NAME
.
Hooks:
* standard hook to reject text files with CRLF in win32text extension
* redirect stdout to stderr for ssh and http servers
.
[ Gerardo Curiel ]
* Split package to fix lintian warnings:
+ mercurial - main package
+ mercurial-common - Arch-indep bits
* Fix clean target
* Dropped patches:
patches/proposed_upstream__check_hgmerge_args.patch
patches/proposed_upstream__type_is_not_posix.patch
* patches/deb_specific__use_sensible-editor.patch:
Rediff against mercurial 1.0
* Added patch:
patches/proposed_upstream__fix_man_warnings.patch
* hgmerge shell script is not provided anymore
* contrib/favicon.ico is not provided anymore
* Deleted obsolete link_hgit target from debian/rules
* Added mergetools.hgrc to the examples
directory
* Added logo-droplets.svg to /usr/share/mercurial
* Added new extensions to the hgext.rc file
+ hgext.color (not enabled by default)
+ hgext.highlight (enabled)
+ hgext.inotify (enabled, Closes: #472583)
+ hgext.keyword (not enabled by default)
* Removed extensions from the hgext.rc file
+ hgext.hbisect (now provided as a built-in command)
* Added new dependency :
+ python-pygments (needed for hgext/highlight.py)
+ python-elementtree (was a suggested dependency, but we're shipping
the 'convert' extension enabled by default)
.
[ Vincent Danjean ]
* import mercurial in the Python Application Packaging Team project
* debian/control:
+ add PAPT in the Uploaders field
+ add Vcs-* fields
+ add conflicts/replaces fields to ensure proper upgrade for
mercurial-common
* cleanup debian/ files
+ remove unneeded debian/*.{dirs} files
* move examples/ in usr/share/doc/mercurial (in the mercurial-common
package)
* manage hgext.rc with ucf. Enabling some extensions only if their
dependencies are present
* put all usr/share/python-support/* in mercurial-common instead of
mercurial. This trigger a lintian warning but this is an error (see
#473428)
.
[ Piotr Ożarowski ]
* New recommended packages:
+ python-mysqldb (hgext/bugzilla.py)
+ python-openssl (hgweb/server.py)
* New suggested packages:
+ python-flup (contrib/hgwebdir.fcgi, Closes: #466731)
.
[ William Pitcock ]
* patches/deb_specific__use_sensible-editor.patch:
+Rediff against 1.0 branch.
Files:
72cdaa6dc995b887ab8c40ae45d6dd6b 471476 devel optional
mercurial-common_1.0-1_all.deb
8093f2a4f0d7d313ee6866308ef04bf8 1016 devel optional mercurial_1.0-1.dsc
9f8dd7fa6f8886f77be9b923f008504c 803187 devel optional
mercurial_1.0.orig.tar.gz
cd93616cfff00aff2b7fea594b5868a9 85660 devel optional mercurial_1.0-1_i386.deb
f199f1fe802512cd58fff9d25e64dfe3 22543 devel optional mercurial_1.0-1.diff.gz
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFH+U3SC/d4Z50CXocRAhtRAJwNkVupmC5izWE0UMJp6PJ0eLXT5ACbBUP3
X2wW9VrZKsy1IB7lNTiNZl0=
=k133
-----END PGP SIGNATURE-----
--- End Message ---