{"thread":{"id":"32471","subject":"[PATCH] Remove the suggestion to use parsecvs, which is currently broken.","startedAt":"2012-12-28T16:20:25Z","lastAt":"2013-01-07T20:41:33Z","messageCount":9,"participants":["Eric S. Raymond","Junio C Hamano","Heiko Voigt","Chris Packham"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"205590","messageId":"20121228162025.8565E4413A@snark.thyrsus.com","threadId":"32471","inReplyTo":null,"subject":"[PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Eric S. Raymond","fromEmail":"esr@thyrsus.com","sentAt":"2012-12-28T16:20:25Z","receivedAt":"2012-12-28T16:20:25Z","isPatch":true,"sender":{"key":"esr@thyrsus.com","avatar":"https://avatars.githubusercontent.com/u/727961?v=4"},"body":"The parsecvs code has been neglected for a long time, and the only\npublic version does not even build correctly.  I have been handed\ncontrol of the project and intend to fix this, but until I do it\ncannot be recommended.\n\nAlso, the project URL given for Subversion needed to be updated\nto follow their site move.\n---\n Documentation/git-cvsimport.txt | 6 ++----\n 1 file changed, 2 insertions(+), 4 deletions(-)\n\ndiff --git a/Documentation/git-cvsimport.txt b/Documentation/git-cvsimport.txt\nindex 98d9881..9d5353e 100644\n--- a/Documentation/git-cvsimport.txt\n+++ b/Documentation/git-cvsimport.txt\n@@ -213,11 +213,9 @@ Problems related to tags:\n * Multiple tags on the same revision are not imported.\n \n If you suspect that any of these issues may apply to the repository you\n-want to import consider using these alternative tools which proved to be\n-more stable in practice:\n+want to imort, consider using cvs2git:\n \n-* cvs2git (part of cvs2svn), `http://cvs2svn.tigris.org`\n-* parsecvs, `http://cgit.freedesktop.org/~keithp/parsecvs`\n+* cvs2git (part of cvs2svn), `http://subversion.apache.org/`\n \n GIT\n ---\n-- \n1.8.1.rc2\n\n\n\n-- \n\t\t<a href=\"http://www.catb.org/~esr/\">Eric S. Raymond</a>\n\nA ``decay in the social contract'' is detectable; there is a growing\nfeeling, particularly among middle-income taxpayers, that they are not\ngetting back, from society and government, their money's worth for\ntaxes paid. The tendency is for taxpayers to try to take more control\nof their finances...\t-- IRS Strategic Plan, (May 1984)\n"},{"id":"205598","messageId":"7vobheht7h.fsf@alter.siamese.dyndns.org","threadId":"32471","inReplyTo":"20121228162025.8565E4413A@snark.thyrsus.com","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-12-28T19:28:34Z","receivedAt":"2012-12-28T19:28:34Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"esr@thyrsus.com (Eric S. Raymond) writes:\n\n> The parsecvs code has been neglected for a long time, and the only\n> public version does not even build correctly.  I have been handed\n> control of the project and intend to fix this, but until I do it\n> cannot be recommended.\n>\n> Also, the project URL given for Subversion needed to be updated\n> to follow their site move.\n> ---\n>  Documentation/git-cvsimport.txt | 6 ++----\n>  1 file changed, 2 insertions(+), 4 deletions(-)\n> ...\n> -- \n> \t\t<a href=\"http://www.catb.org/~esr/\">Eric S. Raymond</a>\n>\n> A ``decay in the social contract'' is detectable; there is a growing\n> feeling, particularly among middle-income taxpayers, that they are not\n> getting back, from society and government, their money's worth for\n> taxes paid. The tendency is for taxpayers to try to take more control\n> of their finances...\t-- IRS Strategic Plan, (May 1984)\n\nIt is funny that you keep forgetting to sign-off your patches and\neven send a message with no subject, but still manage to add a\npointer to your homepage and stuff at the end.\n\nPerhaps you would need to form a habit to do \"commit -s\"?\n"},{"id":"205621","messageId":"20121228230149.GA3575@book-mint","threadId":"32471","inReplyTo":"20121228162025.8565E4413A@snark.thyrsus.com","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Heiko Voigt","fromEmail":"hvoigt@hvoigt.net","sentAt":"2012-12-28T23:01:49Z","receivedAt":"2012-12-28T23:01:49Z","isPatch":true,"sender":{"key":"hvoigt@hvoigt.net","avatar":"https://avatars.githubusercontent.com/u/184958?v=4"},"body":"Hi,\n\nOn Fri, Dec 28, 2012 at 11:20:25AM -0500, Eric S. Raymond wrote:\n> The parsecvs code has been neglected for a long time, and the only\n> public version does not even build correctly.  I have been handed\n> control of the project and intend to fix this, but until I do it\n> cannot be recommended.\n\nYou mean: It does not build correctly with a current version of git?\nSince it links with the git source code it probably needs a version of\ngits source code around the time of the last commits.\n\nMaybe you could add that information to the parsecvs compile\ninstructions? I think just because it takes some effort to compile does\nnot justify to remove this useful pointer here. When I was converting a\nlegacy cvs repository this pointer would have helped me a lot.\n\nIt is the tool we were/are actively using to convert old repositories at\n$dayjob.\n\nCheers Heiko\n"},{"id":"205635","messageId":"20121229044200.GA16086@thyrsus.com","threadId":"32471","inReplyTo":"20121228230149.GA3575@book-mint","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Eric S. Raymond","fromEmail":"esr@thyrsus.com","sentAt":"2012-12-29T04:42:00Z","receivedAt":"2012-12-29T04:42:00Z","isPatch":true,"sender":{"key":"esr@thyrsus.com","avatar":"https://avatars.githubusercontent.com/u/727961?v=4"},"body":"Heiko Voigt <hvoigt@hvoigt.net>:\n> Maybe you could add that information to the parsecvs compile\n> instructions? I think just because it takes some effort to compile does\n> not justify to remove this useful pointer here. When I was converting a\n> legacy cvs repository this pointer would have helped me a lot.\n\nI'm parsecvs's maintainer now.  It's not in good shape; there is at\nleast one other known showstopper besides the build issue.  I would\nstrongly prefer to direct peoples' attention away from it until I\nhave time to fix it and cut a release.  This is not a distant \nprospect - two or three weeks out, maybe.\n\nThe priority that is between me and fixing parsecvs is getting (a)\ncvsps and git-cvsimport to a non-broken state, and (b) having a sound\ntest suite in place so I *know* it's in a non-broken state. As previously\ndiscussed, I will then apply that test suite to parsecvs.\n\nHeiko, you can speed up the process by (a) adapting your tests for\nthe new cvsps test code, and (b) merging the fix you wrote so cvsps\nwould pass the t9603 test.  \n\nThe sooner I can get that out of the way, the sooner I will be avble\nto pay serious attention to parsecvs.\n-- \n\t\t<a href=\"http://www.catb.org/~esr/\">Eric S. Raymond</a>\n"},{"id":"205763","messageId":"50E2B4CC.7050503@gmail.com","threadId":"32471","inReplyTo":"20121228162025.8565E4413A@snark.thyrsus.com","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Chris Packham","fromEmail":"judge.packham@gmail.com","sentAt":"2013-01-01T10:05:00Z","receivedAt":"2013-01-01T10:05:00Z","isPatch":true,"sender":{"key":"judge.packham@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155667?v=4"},"body":"Minor typo\n\nOn 12/29/2012 05:20 AM, Eric S. Raymond wrote:\n> The parsecvs code has been neglected for a long time, and the only\n> public version does not even build correctly.  I have been handed\n> control of the project and intend to fix this, but until I do it\n> cannot be recommended.\n> \n> Also, the project URL given for Subversion needed to be updated\n> to follow their site move.\n> ---\n>  Documentation/git-cvsimport.txt | 6 ++----\n>  1 file changed, 2 insertions(+), 4 deletions(-)\n> \n> diff --git a/Documentation/git-cvsimport.txt b/Documentation/git-cvsimport.txt\n> index 98d9881..9d5353e 100644\n> --- a/Documentation/git-cvsimport.txt\n> +++ b/Documentation/git-cvsimport.txt\n> @@ -213,11 +213,9 @@ Problems related to tags:\n>  * Multiple tags on the same revision are not imported.\n>  \n>  If you suspect that any of these issues may apply to the repository you\n> -want to import consider using these alternative tools which proved to be\n> -more stable in practice:\n> +want to imort, consider using cvs2git:\n\ns/imort/import/\n\n>  \n> -* cvs2git (part of cvs2svn), `http://cvs2svn.tigris.org`\n> -* parsecvs, `http://cgit.freedesktop.org/~keithp/parsecvs`\n> +* cvs2git (part of cvs2svn), `http://subversion.apache.org/`\n>  \n>  GIT\n>  ---\n> \n"},{"id":"206144","messageId":"20130106163420.GA3378@book-mint","threadId":"32471","inReplyTo":"20121229044200.GA16086@thyrsus.com","subject":"Re: Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Heiko Voigt","fromEmail":"hvoigt@hvoigt.net","sentAt":"2013-01-06T16:34:20Z","receivedAt":"2013-01-06T16:34:20Z","isPatch":true,"sender":{"key":"hvoigt@hvoigt.net","avatar":"https://avatars.githubusercontent.com/u/184958?v=4"},"body":"Hi,\n\nOn Fri, Dec 28, 2012 at 11:42:00PM -0500, Eric S. Raymond wrote:\n> Heiko Voigt <hvoigt@hvoigt.net>:\n> > Maybe you could add that information to the parsecvs compile\n> > instructions? I think just because it takes some effort to compile does\n> > not justify to remove this useful pointer here. When I was converting a\n> > legacy cvs repository this pointer would have helped me a lot.\n> \n> I'm parsecvs's maintainer now.  It's not in good shape; there is at\n> least one other known showstopper besides the build issue.  I would\n> strongly prefer to direct peoples' attention away from it until I\n> have time to fix it and cut a release.  This is not a distant \n> prospect - two or three weeks out, maybe.\n\nSo for this short amount of time you want to change gits documentation?\nIs this hint causing you trouble? Are there many people asking for\nsupport because of that?\n\nEven if it takes some effort to get parsecvs running I would like to\nkeep the hint to a good and proven cvs importer.\n\n> The priority that is between me and fixing parsecvs is getting (a)\n> cvsps and git-cvsimport to a non-broken state, and (b) having a sound\n> test suite in place so I *know* it's in a non-broken state. As previously\n> discussed, I will then apply that test suite to parsecvs.\n> \n> Heiko, you can speed up the process by (a) adapting your tests for\n> the new cvsps test code,\n\nI had a quick glance at your testsuite. After building cvsps with\n\tmake\nand cd'ing into test I got a lot of error messages some saying that\ncvsps was not found when issuing\n\tmake\nthere. It would be great if do not need to install cvsps into my path\njust for running the testsuite. \n\nThere is no README so I am not sure how the tests are supposed to be\nbuild in general. Due to the lack of documentation its probably easier\nfor you Eric to port my tests.\n\nThe structure of my tests is quite simple:\n\n\tt/  - All the tests\n\tt/cvsroot - A cvs module per test\n\tt/t[0-9]{4}*/expect - The expected cvsps output\n\nYou can copy the cvs repository modules and convert the expected cvsps\noutput to whatever output you want to test against. It the found\nchangeset ordering that is interesting.\n\n> and (b) merging the fix you wrote so cvsps\n> would pass the t9603 test.  \n\nThe fix was never clean and AFAIR the reason behind that was that the\nbreakage in commit ordering is not easy to fix in cvsps. That and\nbecause there are other working tools out there was the reason why I\nstopped working on fixing cvsps.\n\nCheers Heiko\n"},{"id":"206170","messageId":"20130106203252.GA9377@thyrsus.com","threadId":"32471","inReplyTo":"20130106163420.GA3378@book-mint","subject":"Re: Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Eric S. Raymond","fromEmail":"esr@thyrsus.com","sentAt":"2013-01-06T20:32:52Z","receivedAt":"2013-01-06T20:32:52Z","isPatch":true,"sender":{"key":"esr@thyrsus.com","avatar":"https://avatars.githubusercontent.com/u/727961?v=4"},"body":"Heiko Voigt <hvoigt@hvoigt.net>:\n> > I'm parsecvs's maintainer now.  It's not in good shape; there is at\n> > least one other known showstopper besides the build issue.  I would\n> > strongly prefer to direct peoples' attention away from it until I\n> > have time to fix it and cut a release.  This is not a distant \n> > prospect - two or three weeks out, maybe.\n> \n> So for this short amount of time you want to change gits documentation?\n\nYes.  We should not direct people to a tool that plain doesn't work.  \n\nI'll fix parsecvs as soon as I can.  Once I do, I will add support to the\nnew git-cvsimport to use parsecvs as a conversion engine, alongside\ncvsps and cvs2git.\n\nYou may not have seen the first version of that patch, so I'll \nexplain. The new git-cvsimport can use multiple conversion engines;\neach one is expressed as a Python class that knows how to convert\ngit-cvsimport options to engine options, and how to generate a\ncommand that ships an import stream to standard output.  There's\nan -e option that selects an engine.\n\nCurrently there are two such classes, one for cvsps and one for cvs2git.\ncvsps is the default.  When parsecvs is working, it will be the work of\na few minutes to add a parsecvs class.\n\nThe architectural goal here is to make it easy for users of\ngit-cvsimport to be able to experiment with different engines to\nget the best possible conversion, without having to fuss with \ndetails of the engine invocation.\n\n> Is this hint causing you trouble? Are there many people asking for\n> support because of that?\n\nNo.  But as a matter of principle I am against having documentation\ntell pretty lies, even temporarily. It's bad craftsmanship and bad\nfaith to do that.\n \n> There is no README so I am not sure how the tests are supposed to be\n> build in general. Due to the lack of documentation its probably easier\n> for you Eric to port my tests.\n\nAt the present state of things, I agree.  I have been so busy fighting other\naspects of this problem that I have not yet had time to separate the\ntest suite from the cvsps code and document it properly.\n\n> The structure of my tests is quite simple:\n> \n> \tt/  - All the tests\n> \tt/cvsroot - A cvs module per test\n> \tt/t[0-9]{4}*/expect - The expected cvsps output\n> \n> You can copy the cvs repository modules and convert the expected cvsps\n> output to whatever output you want to test against. It the found\n> changeset ordering that is interesting.\n\nNoted.  I have a copy and will port them.\n\n> The fix was never clean and AFAIR the reason behind that was that the\n> breakage in commit ordering is not easy to fix in cvsps.\n\nUnderstood. But it's better than no fix at all.\n\n>                                                           That and\n> because there are other working tools out there was the reason why I\n> stopped working on fixing cvsps.\n\nOnce I have all three tools working and can run them against a common\ntest suite, several interesting possibilities will open up.\n-- \n\t\t<a href=\"http://www.catb.org/~esr/\">Eric S. Raymond</a>\n"},{"id":"206246","messageId":"7vehhwiyt6.fsf@alter.siamese.dyndns.org","threadId":"32471","inReplyTo":"20130106163420.GA3378@book-mint","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-07T19:21:41Z","receivedAt":"2013-01-07T19:21:41Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Heiko Voigt <hvoigt@hvoigt.net> writes:\n\n> Hi,\n>\n> On Fri, Dec 28, 2012 at 11:42:00PM -0500, Eric S. Raymond wrote:\n>> Heiko Voigt <hvoigt@hvoigt.net>:\n>> > Maybe you could add that information to the parsecvs compile\n>> > instructions? I think just because it takes some effort to compile does\n>> > not justify to remove this useful pointer here. When I was converting a\n>> > legacy cvs repository this pointer would have helped me a lot.\n>> \n>> I'm parsecvs's maintainer now.  It's not in good shape; there is at\n>> least one other known showstopper besides the build issue.  I would\n>> strongly prefer to direct peoples' attention away from it until I\n>> have time to fix it and cut a release.  This is not a distant \n>> prospect - two or three weeks out, maybe.\n>\n> So for this short amount of time you want to change gits documentation?\n> Is this hint causing you trouble? Are there many people asking for\n> support because of that?\n>\n> Even if it takes some effort to get parsecvs running I would like to\n> keep the hint to a good and proven cvs importer.\n\nI do not mind changing the documentation, but now I re-read the\nchange, I tend to agree that dropping the last (un)maintained\nversion of parsecvs may be detrimental.  Most people will not\ndownload parsecvs from keith's page, but first will try the one\nshipped with their distros, and the recent maintainer change for\nthat tool would not have any impact to these users.\n\nBut at the same time, by the time this change reaches these users\nwho may benefit by the mention of parsecvs via the distro route, the\nsituation may be different, so I do not think it is such a big deal.\nIn the longer term, if parsecvs is revived either by Eric or\nsomebody else, we will add the mention back to the documentation,\nprobably with an updated URL.\n"},{"id":"206249","messageId":"20130107204132.GA23867@thyrsus.com","threadId":"32471","inReplyTo":"7vehhwiyt6.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] Remove the suggestion to use parsecvs, which is currently broken.","fromName":"Eric S. Raymond","fromEmail":"esr@thyrsus.com","sentAt":"2013-01-07T20:41:33Z","receivedAt":"2013-01-07T20:41:33Z","isPatch":true,"sender":{"key":"esr@thyrsus.com","avatar":"https://avatars.githubusercontent.com/u/727961?v=4"},"body":"Junio C Hamano <gitster@pobox.com>:\n> In the longer term, if parsecvs is revived either by Eric or\n> somebody else, we will add the mention back to the documentation,\n> probably with an updated URL.\n\nI'm working on the revival right now. Repository generation is still\nbroken, and likely to remain so until I can make the export-stream stage\nwork, but just a few minutes ago I coaxed it into generating what looks \nlike graphviz markup describing a commit graph on standard output.\n\nEven though dot(1) barfs on the markup, this is encouraging. It almost\ncertainly means that the analysis and parsing stages aren't broken, and\nby stubbing out enough functions I can figure out what is being passed\nto the broken repository-maker well enough for my purposes.\n\nActually, I've already figured out how to generate blob and commit-header\nmarkup.  The hard part is generating fileops; I don't quite understand\nthe generated data structures well enough to do that yet.  But I'm\nmaking progress, and feeling more optimistic than I was yesterday.\n\nIn related news, I've sent Michael Haggerty patches that fix the visible\nproblems with cvs2git that I enumerated in previous mail.\n-- \n\t\t<a href=\"http://www.catb.org/~esr/\">Eric S. Raymond</a>\n"}]}