HgBugs

(Difference between revisions)
(P2: fix will likely be wanted for continued usage)
 
(45 intermediate revisions not shown)
Line 1: Line 1:
-
==Hg Bugs/Problems==
+
=Hg Bugs/Problems=
[http://www.selenic.com/mercurial/bts/issue?actor=328&@filter=actor Jesse's issue list]
[http://www.selenic.com/mercurial/bts/issue?actor=328&@filter=actor Jesse's issue list]
-
===P1: fix is critical for migration to succeed===
+
==P1: fix is critical for migration to succeed==
The server should reject bad merges.
The server should reject bad merges.
Line 12: Line 12:
[http://www.selenic.com/mercurial/bts/issue515 Hg RFE #515]
[http://www.selenic.com/mercurial/bts/issue515 Hg RFE #515]
-
===P2: fix will likely be wanted for continued usage===
+
==P2: fix will likely be wanted for continued usage==
Hg increases storage whenever you move files.
Hg increases storage whenever you move files.
Line 23: Line 23:
yet avoid pulling them until they are really needed:
yet avoid pulling them until they are really needed:
[http://www.selenic.com/mercurial/wiki/index.cgi/TrimmingHistory TrimmingHistory]
[http://www.selenic.com/mercurial/wiki/index.cgi/TrimmingHistory TrimmingHistory]
-
 
-
<tt>hg fetch</tt> merges incorrectly when using the inotify extension.
 
-
[http://www.selenic.com/mercurial/bts/issue921 Hg bug #921]
 
-
We currently forbid usage of inotify for this reason.
 
There is no simple way to see what a merge changeset changed
There is no simple way to see what a merge changeset changed
Line 37: Line 33:
Merging a case rename on Windows can cause file deletion.
Merging a case rename on Windows can cause file deletion.
''as yet unfiled''
''as yet unfiled''
-
 
-
Transplant seems to fail on Windows.
 
-
[http://www.selenic.com/mercurial/bts/issue1077 Hg bug #1077]
 
<tt>hg clean</tt> does not work correctly on Mac OS X.
<tt>hg clean</tt> does not work correctly on Mac OS X.
Line 49: Line 42:
<tt>hg import</tt> does not work for some people.
<tt>hg import</tt> does not work for some people.
[http://www.selenic.com/mercurial/bts/issue961 Hg bug #961]
[http://www.selenic.com/mercurial/bts/issue961 Hg bug #961]
-
 
-
Slow performance claimed on Windows when using filters.
 
-
[http://www.selenic.com/mercurial/bts/issue1384 Hg bug #1384]
 
No extension in standard distro with "shelve" functionality.
No extension in standard distro with "shelve" functionality.
Line 60: Line 50:
(The warning should explain to use <tt>hg up -C</tt> to start over.)
(The warning should explain to use <tt>hg up -C</tt> to start over.)
Run by an inexperienced user, it can result in other changesets being "silently" backed out.
Run by an inexperienced user, it can result in other changesets being "silently" backed out.
-
''as yet unfiled''
+
''as yet unfiled, but see [http://mercurial.selenic.com/bts/issue2915 Hg bug #2915]''
-
===P3: should be fixed as time permits===
+
Handling of self-signed SSL certificates is unfriendly.
 +
[http://mercurial.selenic.com/bts/issue2596 Hg bug #2596]
-
When using inotify, newly created build products appear as <tt>?</tt> (unknown)
+
Bogus merge conflicts.
-
until you touch <tt>.hgignore</tt>.
+
[http://mercurial.selenic.com/bts/issue3372 Hg bug #3372]
-
[http://www.selenic.com/mercurial/bts/issue884 Hg bug #884]
+
 
 +
==P3: should be fixed as time permits==
The Windows setup wizard should offer to enable CRLF translation.
The Windows setup wizard should offer to enable CRLF translation.
Line 81: Line 73:
and also relates to
and also relates to
[http://www.selenic.com/mercurial/bts/issue219 Hg RFE #219]
[http://www.selenic.com/mercurial/bts/issue219 Hg RFE #219]
-
 
-
Tagging a server repository (with no checkout) is unnecessarily complicated.
 
-
[http://www.selenic.com/mercurial/bts/issue916 Hg bug #916]
 
You are not stopped from transplanting the same changeset twice in different clones.
You are not stopped from transplanting the same changeset twice in different clones.
Line 94: Line 83:
<tt>kdiff3</tt> does not work out of the box.
<tt>kdiff3</tt> does not work out of the box.
[http://www.selenic.com/mercurial/bts/issue1118 Hg bug #1118]
[http://www.selenic.com/mercurial/bts/issue1118 Hg bug #1118]
-
 
-
You cannot reliably ignore whitespace changes in diffs, e.g. wrapping code in a block.
 
-
[http://www.selenic.com/mercurial/bts/issue127 Hg bug #127]
 
If you forget to add new files, neither <tt>hg ci</tt> nor <tt>hg fetch</tt> will warn you.
If you forget to add new files, neither <tt>hg ci</tt> nor <tt>hg fetch</tt> will warn you.
Line 132: Line 118:
Something involving repeated merges of a backout.)
Something involving repeated merges of a backout.)
-
<tt>hg heads --active</tt> shows heads on closed branches.
+
<tt>hg ann nbbuild/build.xml</tt> fails.
-
[http://www.selenic.com/mercurial/bts/issue1893 Hg bug #1893]
+
[http://www.selenic.com/mercurial/bts/issue1924 Hg bug #1924]
-
===P4: nice to have===
+
<tt>hg push</tt> sometimes requires <tt>--force</tt> when it should not.
 +
[http://www.selenic.com/mercurial/bts/issue1974 Hg bug #1974]
-
You can download unversioned archives of a snapshot of sources from the web interface,
+
<tt>hg fetch</tt> scans the working copy too many times.
-
but you cannot download the repository (in the preferred "bundle" format ~ <tt>*.hg</tt>).
+
[http://mercurial.selenic.com/bts/issue2085 Hg bug #2085]
-
[http://www.selenic.com/mercurial/bts/issue713 Hg RFE #713]
+
-
No equivalent to INotify is available for Windows users.
+
<tt>hg pull -u</tt> scans the working copy unnecessarily.
 +
[http://mercurial.selenic.com/bts/issue2092 Hg bug #2092]
-
Per-repository configuration such as username is not copied during local clone.
+
If you include a #branchname in your paths.default, hg fetch does not work.
-
[http://www.selenic.com/mercurial/bts/issue918 Hg RFE #918]
+
[http://mercurial.selenic.com/bts/issue2982 Hg bug #2982]
 +
 
 +
Nested repositories are not handled correctly by inotify.
 +
[http://mercurial.selenic.com/bts/issue2319 Hg bug #2319]
 +
 
 +
Possible merge bug (symptoms fixed in 69dcf3fcc35d). phejl says "I removed tomcat.obsolete on branch (module and line in cluster.properties); sg-nb reverted some of his changes, mistakenly removing tomcat.obsolete line from cluster.properties on trunk (bdfefc80db7c); sg-nb added tomcat.obsolete to cluster.properties on trunk (c45b7baf4478); I merged the branch to trunk; tomcat.obsolete module removed on trunk, but still in cluster.properties". Sounds like the merge (996de2fd4b52?) somehow did not work correctly - should have either resulted in the entry being missing from cluster.properties, or a merge conflict. Maybe http://mercurial.selenic.com/bts/issue1740 or maybe something else. But ca913542dad4 (last serverplugins-next) still has tomcat.obsolete listed. (phejl says he definitely didn't readd it on the branch manually; maybe it was merged from trunk as he made couple of trunk -> branch merges.)
 +
''(as yet unfiled)''
 +
 
 +
Grafting does not record copy origins.
 +
[http://mercurial.selenic.com/bts/issue3265 Hg bug #3265]
 +
 
 +
There is no equivalent of diff --git without --text, i.e. cannot display file renames correctly without also displaying lengthy binary file adds or modifications.
 +
''(as yet unfiled)''
 +
 
 +
Irrelevant changes to file mode, e.g. in 08f1e909c26c, cannot be suppressed; about 20% of files in the main repo are g+w, for no apparent reason, and changes to such modes (perhaps only on Windows?) appear in the file log.
 +
''(as yet unfiled)''
 +
 
 +
==P4: nice to have==
 +
 
 +
No equivalent to INotify is available for Windows users.
Performance of <tt>hg convert</tt> is poor when you want to
Performance of <tt>hg convert</tt> is poor when you want to
[[HgHowTos#TransferAModuleSHistoryToAnotherRepository | HgHowTos#TransferAModuleSHistoryToAnotherRepository]].
[[HgHowTos#TransferAModuleSHistoryToAnotherRepository | HgHowTos#TransferAModuleSHistoryToAnotherRepository]].
[http://www.selenic.com/mercurial/bts/issue991 Hg RFE #991]
[http://www.selenic.com/mercurial/bts/issue991 Hg RFE #991]
-
 
-
<tt>diff --reverse</tt> does not seem to work.
 
-
''as yet unfiled''
 
<tt>hg ci visualweb.*</tt> fails if just some, but not all, <tt>visualweb.*</tt> modules are modified.
<tt>hg ci visualweb.*</tt> fails if just some, but not all, <tt>visualweb.*</tt> modules are modified.
-
''as yet unfiled''
+
[http://www.selenic.com/mercurial/bts/issue1925 Hg bug #1925]
If you update a dirty checkout and <tt>.hgignore</tt> changes as a result, it is possible for previously ignored files (e.g. build products from a renamed module) to become no longer ignored, yet there is no warning that this has happened or that it might be safe to delete these files.
If you update a dirty checkout and <tt>.hgignore</tt> changes as a result, it is possible for previously ignored files (e.g. build products from a renamed module) to become no longer ignored, yet there is no warning that this has happened or that it might be safe to delete these files.
''as yet unfiled''
''as yet unfiled''
-
===Resolved: already fixed in development versions of Hg, or no longer relevant to NB===
+
<tt>hg log --removed</tt> needed to see identical parallel changes to a file.
 +
[http://www.selenic.com/mercurial/bts/issue2604 Hg bug #2604]
 +
 
 +
Hyperlinks in hgweb dereference branch names.
 +
[http://www.selenic.com/mercurial/bts/issue2296 Hg bug #2296]
 +
 
 +
No way to query extra fields in revsets.
 +
[http://mercurial.selenic.com/bts/issue2767 Hg RFE #2767]
 +
 
 +
==Resolved: already fixed in development versions of Hg, or no longer relevant to NB==
CRLF autodetection of binary files changed unpleasantly in Hg 1.0.
CRLF autodetection of binary files changed unpleasantly in Hg 1.0.
Line 244: Line 256:
[http://www.selenic.com/mercurial/bts/issue1436 Hg bug #1436]
[http://www.selenic.com/mercurial/bts/issue1436 Hg bug #1436]
''(fixed in 1.1.1)''
''(fixed in 1.1.1)''
-
 
-
<tt>hg help templates</tt> to get immediate help on template keywords and filters.
 
-
[http://www.selenic.com/mercurial/bts/issue1486 Hg RFE #1486]
 
-
''(being fixed in dev)''
 
Should not be necessary to use a "gatekeeper" just to prevent clients from pulling changesets about to be rejected by server hooks.
Should not be necessary to use a "gatekeeper" just to prevent clients from pulling changesets about to be rejected by server hooks.
Line 276: Line 284:
[http://www.selenic.com/mercurial/bts/issue919 Hg RFE #919]
[http://www.selenic.com/mercurial/bts/issue919 Hg RFE #919]
''(new relink extension in dev)''
''(new relink extension in dev)''
 +
 +
You cannot reliably ignore whitespace changes in diffs, e.g. wrapping code in a block.
 +
[http://www.selenic.com/mercurial/bts/issue127 Hg bug #127]
 +
''(fixed in dev)''
 +
 +
Slow performance claimed on Windows when using filters.
 +
[http://www.selenic.com/mercurial/bts/issue1384 Hg bug #1384]
 +
''no longer reproducible''
 +
 +
<tt>hg fetch</tt> merges incorrectly when using the inotify extension.
 +
[http://www.selenic.com/mercurial/bts/issue921 Hg bug #921]
 +
''no longer reproducible''
 +
 +
Diff hangs on certain patches involving renames.
 +
[http://www.selenic.com/mercurial/bts/issue1947 Hg bug #1947]
 +
''(fixed in dev)''
 +
 +
<tt>hg heads --active</tt> shows heads on closed branches.
 +
[http://www.selenic.com/mercurial/bts/issue1893 Hg bug #1893]
 +
''(fixed in 1.5)''
 +
 +
Transplant seems to fail on Windows.
 +
[http://www.selenic.com/mercurial/bts/issue1077 Hg bug #1077]
 +
''(works in 1.3+ when patch.eol=crlf as is recommended)''
 +
 +
When using inotify, newly created build products appear as <tt>?</tt> (unknown)
 +
until you touch <tt>.hgignore</tt>.
 +
[http://www.selenic.com/mercurial/bts/issue884 Hg bug #884]
 +
''(fixed in 1.6.1)''
 +
 +
Revset subtraction syntax seems broken.
 +
[http://mercurial.selenic.com/bts/issue2485 Hg bug #2485]
 +
''(fixed in 1.7)''
 +
 +
<tt>hg help templates</tt> to get immediate help on template keywords and filters.
 +
[http://www.selenic.com/mercurial/bts/issue1486 Hg RFE #1486]
 +
''(fixed in dev)''
 +
 +
==Rejected: still wanted, but closed without fix==
 +
 +
You can download unversioned archives of a snapshot of sources from the web interface,
 +
but you cannot download the repository (in the preferred "bundle" format ~ <tt>*.hg</tt>).
 +
[http://www.selenic.com/mercurial/bts/issue713 Hg RFE #713]
 +
 +
Per-repository configuration such as username is not copied during local clone.
 +
[http://www.selenic.com/mercurial/bts/issue918 Hg RFE #918]
 +
 +
Revert does not clean up additions.
 +
[http://mercurial.selenic.com/bts/issue3024 Hg bug #3024]
 +
 +
Tagging a server repository (with no checkout) is unnecessarily complicated.
 +
[http://www.selenic.com/mercurial/bts/issue916 Hg bug #916]

Current revision as of 22:05, 16 April 2012

Contents

Hg Bugs/Problems

Jesse's issue list

P1: fix is critical for migration to succeed

The server should reject bad merges. Hg RFE #1038

Hg does not let you do a clone of part of the repo, or check out part of a full repo. Hg RFE #105 Hg RFE #515

P2: fix will likely be wanted for continued usage

Hg increases storage whenever you move files. Hg bug #883

Keeping binaries in the repository would mean a noticeable increase in repo size after every update to a new version of a third-party library. Currently working around; details: ExternalBinaries. But it would be much preferable to be able to logically keep binaries in the repository yet avoid pulling them until they are really needed: TrimmingHistory

There is no simple way to see what a merge changeset changed beyond what a "simple" automated merge would have done. Hg RFE #981

Frequent failures to push over HTTPS on Windows. Hg bug #1003

Merging a case rename on Windows can cause file deletion. as yet unfiled

hg clean does not work correctly on Mac OS X. Hg bug #1097

There is no command to back out a bad merge. Hg RFE #1010

hg import does not work for some people. Hg bug #961

No extension in standard distro with "shelve" functionality. hgattic seems to work well, but few developers are going to download and enable a third-party extension.

hg revert -r ... on an uncommitted merge should issue a very strict warning. (The warning should explain to use hg up -C to start over.) Run by an inexperienced user, it can result in other changesets being "silently" backed out. as yet unfiled, but see Hg bug #2915

Handling of self-signed SSL certificates is unfriendly. Hg bug #2596

Bogus merge conflicts. Hg bug #3372

P3: should be fixed as time permits

The Windows setup wizard should offer to enable CRLF translation. Hg RFE #923

Semantics of .hgignore w.r.t. directories is unclear. Hg bug #886 Various other .hgignore problems have been encountered, including Hg bug #951 (now fixed in dev)

There is no simple way to see the patch that would result from all outgoing changesets. Hg RFE #28 and also relates to Hg RFE #219

You are not stopped from transplanting the same changeset twice in different clones. Hg bug #1210

Hg will try to delete an empty dir during update, even if that is your CWD, which can result in odd errors. as yet unfiled

kdiff3 does not work out of the box. Hg bug #1118

If you forget to add new files, neither hg ci nor hg fetch will warn you. Hg bug #1318

The parents log keyword requires --debug for full output. Hg bug #1435

hg transplant -s $repo $rev failed to import http://hg.netbeans.org/jet-main/rev/d1f97dcec7ca into core-main; complained that the revision could not be found. hg in -r $rev $repo worked fine. as yet unfiled

strace hg di -r release65_base o.n.bootstrap/src/org/netbeans/TopSecurityManager.java shows every file in the checkout being stat'd, for no apparent reason. as yet unfiled

hg bisect does not work well with merges. E.g. run

hg bisect -b de345c4fe13f
hg bisect -g be85c2e1048d

and then mark any revision good if it contains nbbuild/test/unit/src/org/netbeans/nbbuild/data/Category.png and you wind up with c429f829c9f3 being blamed, though this is not a descendant of the good revision. as yet unfiled

Incorrect merge of file deletion & resurrection. Hg bug #1740 (Probably also cause of: merging produced a spurious conflict (remote changed, local deleted) for main #8041de5d29cd. Something involving repeated merges of a backout.)

hg ann nbbuild/build.xml fails. Hg bug #1924

hg push sometimes requires --force when it should not. Hg bug #1974

hg fetch scans the working copy too many times. Hg bug #2085

hg pull -u scans the working copy unnecessarily. Hg bug #2092

If you include a #branchname in your paths.default, hg fetch does not work. Hg bug #2982

Nested repositories are not handled correctly by inotify. Hg bug #2319

Possible merge bug (symptoms fixed in 69dcf3fcc35d). phejl says "I removed tomcat.obsolete on branch (module and line in cluster.properties); sg-nb reverted some of his changes, mistakenly removing tomcat.obsolete line from cluster.properties on trunk (bdfefc80db7c); sg-nb added tomcat.obsolete to cluster.properties on trunk (c45b7baf4478); I merged the branch to trunk; tomcat.obsolete module removed on trunk, but still in cluster.properties". Sounds like the merge (996de2fd4b52?) somehow did not work correctly - should have either resulted in the entry being missing from cluster.properties, or a merge conflict. Maybe http://mercurial.selenic.com/bts/issue1740 or maybe something else. But ca913542dad4 (last serverplugins-next) still has tomcat.obsolete listed. (phejl says he definitely didn't readd it on the branch manually; maybe it was merged from trunk as he made couple of trunk -> branch merges.) (as yet unfiled)

Grafting does not record copy origins. Hg bug #3265

There is no equivalent of diff --git without --text, i.e. cannot display file renames correctly without also displaying lengthy binary file adds or modifications. (as yet unfiled)

Irrelevant changes to file mode, e.g. in 08f1e909c26c, cannot be suppressed; about 20% of files in the main repo are g+w, for no apparent reason, and changes to such modes (perhaps only on Windows?) appear in the file log. (as yet unfiled)

P4: nice to have

No equivalent to INotify is available for Windows users.

Performance of hg convert is poor when you want to HgHowTos#TransferAModuleSHistoryToAnotherRepository. Hg RFE #991

hg ci visualweb.* fails if just some, but not all, visualweb.* modules are modified. Hg bug #1925

If you update a dirty checkout and .hgignore changes as a result, it is possible for previously ignored files (e.g. build products from a renamed module) to become no longer ignored, yet there is no warning that this has happened or that it might be safe to delete these files. as yet unfiled

hg log --removed needed to see identical parallel changes to a file. Hg bug #2604

Hyperlinks in hgweb dereference branch names. Hg bug #2296

No way to query extra fields in revsets. Hg RFE #2767

Resolved: already fixed in development versions of Hg, or no longer relevant to NB

CRLF autodetection of binary files changed unpleasantly in Hg 1.0. Hg bug #1066 (fixed in dev)

hg fetch can silently include your password in a commit message. Hg bug #909 Prevented using push hook. (fixed in 1.0)

While you can translate LF <-> CRLF on the client, there is no standard server hook to prevent line ending accidents. Hg RFE #882 (The associated patch can be used without being accepted into Hg proper.) Fixed in Hg 1.0 and installed as push hook on server.

Merging in the presence of named branches can be confusing. Hg bug #756 We will not use named branches for now.

Some operations are unnecessarily slow on Windows. Hg bug #952 (fixed in 1.0)

Reverting a single file in NB can be slow. Hg bug #857 (fixed in 1.0)

The exit code of hg push is unreliable. Hg bug #989 (fixed in 1.0)

Specific error messages from server pre-push hooks are not displayed to an HTTPS client. Hg bug #937 (fixed in 1.0, patch applied to live server)

The order of merge parents for hg fetch is often misleading. Hg RFE #1011 (fixed in 1.0)

Merge restores deleted files if you had locally deleted them but did not commit the delete. Hg bug #988 (fixed in 1.0, working around with server hook to prevent damage from being propagated)

Hg does not prevent you from committing only some files from a merge. Hg bug #1049 (fixed in 1.0)

INotify extension is not bundled in the standard distro. Hg RFE #809 (in 1.0, still discouraged for use)

Diffing some files can be slower in Hg 1.0 than in 0.9.5. Hg bug #1090 (fixed in dev)

Renaming SubSet.java to Subset.java might cause an error for a Windows user trying to update sources. Hg bug #750 (fixed in dev) There are other potential problems with case collisions on Windows. Hg bug #593 (fixed in 1.1)

Misleading display of execute permissions. Hg bug #1042 fixed in 1.0 or 1.0.1

Long source filenames can become even longer in the repository: Hg bug #839. Worked around by preventing store paths > 206 chars from being pushed. (fixed in 1.1)

Don't accidentally name a package beginning with con rather than com or the repo may be corrupted for Windows users: Hg bug #793 (fixed in 1.1)

Git-mode diffs (better to look at renames) are not supported in the web interface. Hg bug #1258 (fixed in 1.1)

The INotify extension breaks pulling from a bundle. Hg bug #1436 (fixed in 1.1.1)

Should not be necessary to use a "gatekeeper" just to prevent clients from pulling changesets about to be rejected by server hooks. Hg bug #1321 (fixed in 1.2)

Client certificates are not supported for HTTPS authentication. Hg RFE #643 (supposedly fixed in dev)

Pulling over HTTP can occasionally abort if a complex push is in progress. Hg bug #1320 (fixed in 1.1)

hg fetch is much slower in 1.3. Hg bug #1752 (fixed in dev)

hg verify is reporting some issues in the NB main repository in cnd.repository and etl.project (no known problems resulting from these). Seems to get corrected by HgBug47098e67a01d scripts.

HgBug47098e67a01d

Some operations, especially hg clone -r, fail to use hardlinks aggressively enough; this can result in unnecessarily large repository storage when using multiple repositories. Hg RFE #919 (new relink extension in dev)

You cannot reliably ignore whitespace changes in diffs, e.g. wrapping code in a block. Hg bug #127 (fixed in dev)

Slow performance claimed on Windows when using filters. Hg bug #1384 no longer reproducible

hg fetch merges incorrectly when using the inotify extension. Hg bug #921 no longer reproducible

Diff hangs on certain patches involving renames. Hg bug #1947 (fixed in dev)

hg heads --active shows heads on closed branches. Hg bug #1893 (fixed in 1.5)

Transplant seems to fail on Windows. Hg bug #1077 (works in 1.3+ when patch.eol=crlf as is recommended)

When using inotify, newly created build products appear as ? (unknown) until you touch .hgignore. Hg bug #884 (fixed in 1.6.1)

Revset subtraction syntax seems broken. Hg bug #2485 (fixed in 1.7)

hg help templates to get immediate help on template keywords and filters. Hg RFE #1486 (fixed in dev)

Rejected: still wanted, but closed without fix

You can download unversioned archives of a snapshot of sources from the web interface, but you cannot download the repository (in the preferred "bundle" format ~ *.hg). Hg RFE #713

Per-repository configuration such as username is not copied during local clone. Hg RFE #918

Revert does not clean up additions. Hg bug #3024

Tagging a server repository (with no checkout) is unnecessarily complicated. Hg bug #916

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo