This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 269644 - Mercurial Annotate fails on files with spaces in them and files named like .hgignore
Summary: Mercurial Annotate fails on files with spaces in them and files named like .h...
Status: NEW
Alias: None
Product: versioncontrol
Classification: Unclassified
Component: Mercurial (show other bugs)
Version: 8.2
Hardware: All All
: P2 normal (vote)
Assignee: Ondrej Vrabec
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-24 20:33 UTC by SirIntellegence
Modified: 2017-08-15 20:54 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SirIntellegence 2017-01-24 20:33:21 UTC
Annotate cannot handle output lines such as:
foo 8731 foo/ba r.baz: 98: Stuff
foo 8731 .foo/bar.baz: 98: Stuff
Resulting in the annotate column containing nothing. Please fix, it is very annoying and I have to use a different program to do annotating
Comment 1 Ondrej Vrabec 2017-01-24 20:41:24 UTC
Are you on Windows?
Comment 2 SirIntellegence 2017-01-25 16:22:47 UTC
Yes. But the issue occurs on mac as well.
Comment 3 SirIntellegence 2017-01-25 16:27:16 UTC
If it helps, I looked at the code, and I do believe it is related to the regex used to parse the output from Mercurial.
Comment 4 SirIntellegence 2017-02-09 16:00:49 UTC
Just checking, is this being worked on?
Comment 5 SirIntellegence 2017-08-15 19:44:56 UTC
I propose the following regex as a replacement:
^\s*(\S+\b)\s+(\d+)\s+(\S.*?):\s*(\d+):\s(.*)$
Could you get that fixed soon please? This bug is annoying. I removed the \b from the pattern that matches files because it would fail on the files starting with punctuation.
Comment 6 SirIntellegence 2017-08-15 20:54:13 UTC
Apparently, you can pass -T json, and it will give you json output. TortoiseHg uses the pickle format. You should probably use one of those instead of relying on a regex to get you what you want.