> > ---------- Forwarded message ---------- > From: Reini Urban <[EMAIL PROTECTED]> > Date: Tue, Jul 15, 2008 at 9:52 AM > Subject: .parrot_current_rev > To: [EMAIL PROTECTED] > > > The file .parrot_current_rev is missing in the Release, and also the > revision is nowhere > mentioned in any Release Note, not the ChangeLog and not in news. > This is annoying, because you don't know if a particular bugfix is > included or not. > > Worse, the logic the set the current revision for svn updates is > wrong.
No, the logic was correct. As particle said on #parrot yesterday, ".parrot_current_rev should always reflect the last time you ran 'perl Configure.pl' successfully." > .parrot_current_rev is not updated on a svn up, Correct: feature, not bug. If you want the revision after you've run 'svn up', call 'svn info' or some other subversion command. > it is just the cache > for $Parrot::Revision::current, Correct. > but the cache is not ensured to be cleared when doing a Configure.pl. > Only a make realclean will > get you a correct revision in bugreports. > Some historical perspective is warranted here. Up until April of this year Parrot::Revision attempted to be all things to all people. It attempted to provide both the SVN revision at which you last configured. It also attempted to the SVN revision resulting from any 'svn up' run after you last ran Configure.pl. And it attempted to provide all this functionality not just for Subversion clients, but for SVK and git as well. The code was convoluted and a maintenance nightmare. The only way it could have been reasonably maintained would have been to recruit someone who was expert in all three of those VCSes. (And we weren't even aware of Win32-related problems such as those described by Tim Heckman elsewhere in this thread.) After considerable discussion, we simplified the code in Parrot::Revision: r26888 | jkeenan | 2008-04-09 21:21:42 -0400 (Wed, 09 Apr 2008) | 5 lines "Eliminate svk- and git-related code from Parrot::Revision. Repository revision number will no longer be available in 'parrot --version'. Adjustments in other files as needed; eliminate two t/postconfigure/ and two t/tools/revision tests." As part of this revision, we created .parrot_current_rev to serve, as described above, for the SVN revision number at your last run of Configure.pl. It is generated by Configure.pl and, like all files generated by Configure.pl, it was intended to be cleaned via 'make realclean' rather than 'make clean'. Since there has been a lot of confusion about this, we/I could probably have done a better job of documenting all this. But I do want to stress that the design of lib/Parrot/Revision.pm was the result of considerable thought, discussion and negotiation on this list. I haven't had a chance to fully assess the changes that have been made in the last two days, but I would be reluctant to see us return to the maintenance difficulties we formerly had. Thank you very much. kid51