{"thread":{"id":"13130","subject":"[PATCH 3/3] git-svn: add documentation for --add-author-from option.","startedAt":"2008-04-16T01:04:16Z","lastAt":"2008-04-17T04:36:20Z","messageCount":12,"participants":["apenwarr@gmail.com","Junio C Hamano","Avery Pennarun","Richard Quirk","Dmitry Potapov","Sam Vilain","Eric Wong"],"isPatch":true,"patchVersion":1,"patchTotal":3},"messages":[{"id":"74508","messageId":"1208307858-31039-1-git-send-email-apenwarr@gmail.com","threadId":"13130","inReplyTo":null,"subject":"[PATCH 1/3] git-svn: add documentation for --use-log-author option.","fromName":"","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T01:04:16Z","receivedAt":"2008-04-16T01:04:16Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"From: Avery Pennarun <apenwarr@versabanq.com>\n\n\nSigned-off-by: Avery Pennarun <apenwarr@gmail.com>\n---\n Documentation/git-svn.txt |    4 ++++\n 1 files changed, 4 insertions(+), 0 deletions(-)\n\ndiff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt\nindex bec9acc..4ad567a 100644\n--- a/Documentation/git-svn.txt\n+++ b/Documentation/git-svn.txt\n@@ -61,6 +61,10 @@ COMMANDS\n \tSet the 'useSvnsyncProps' option in the [svn-remote] config.\n --rewrite-root=<URL>;;\n \tSet the 'rewriteRoot' option in the [svn-remote] config.\n+--use-log-author;;\n+\tWhen retrieving svn commits into git (as part of fetch, rebase, or\n+\tdcommit operations), look for the first From: or Signed-off-by: line\n+\tin the log message and use that as the author string.\n --username=<USER>;;\n \tFor transports that SVN handles authentication for (http,\n \thttps, and plain svn), specify the username.  For other\n-- \n1.5.4.3\n"},{"id":"74509","messageId":"1208307858-31039-2-git-send-email-apenwarr@gmail.com","threadId":"13130","inReplyTo":"1208307858-31039-1-git-send-email-apenwarr@gmail.com","subject":"[PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T01:04:17Z","receivedAt":"2008-04-16T01:04:17Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"From: Avery Pennarun <apenwarr@versabanq.com>\n\nThis adds a From: line (based on the commit's author information) when\nsending to svn.  It doesn't add if a From: or Signed-off-by: header already\nexists for that commit.\n\nThis, combined with --use-log-author, can retain the author field of commits\nthrough a round trip from git to svn and back.\nSigned-off-by: Avery Pennarun <apenwarr@gmail.com>\n---\n git-svn.perl |   14 +++++++++++++-\n 1 files changed, 13 insertions(+), 1 deletions(-)\n\ndiff --git a/git-svn.perl b/git-svn.perl\nindex b864b54..b7ad898 100755\n--- a/git-svn.perl\n+++ b/git-svn.perl\n@@ -82,6 +82,7 @@ my %fc_opts = ( 'follow-parent|follow!' => \\$Git::SVN::_follow_parent,\n \t\t'repack-flags|repack-args|repack-opts=s' =>\n \t\t   \\$Git::SVN::_repack_flags,\n \t\t'use-log-author' => \\$Git::SVN::_use_log_author,\n+\t\t'add-author-from' => \\$Git::SVN::_add_author_from,\n \t\t%remote_opts );\n \n my ($_trunk, $_tags, $_branches, $_stdlayout);\n@@ -1009,17 +1010,28 @@ sub get_commit_entry {\n \t\tmy ($msg_fh, $ctx) = command_output_pipe('cat-file',\n \t\t                                         $type, $treeish);\n \t\tmy $in_msg = 0;\n+\t\tmy $author;\n+\t\tmy $saw_from = 0;\n \t\twhile (<$msg_fh>) {\n \t\t\tif (!$in_msg) {\n \t\t\t\t$in_msg = 1 if (/^\\s*$/);\n+\t\t\t\t$author = $1 if (/^author (.*>)/);\n \t\t\t} elsif (/^git-svn-id: /) {\n \t\t\t\t# skip this for now, we regenerate the\n \t\t\t\t# correct one on re-fetch anyways\n \t\t\t\t# TODO: set *:merge properties or like...\n \t\t\t} else {\n+\t\t\t\tif (/^From:/ || /^Signed-off-by:/) {\n+\t\t\t\t\t$saw_from = 1;\n+\t\t\t\t}\n \t\t\t\tprint $log_fh $_ or croak $!;\n \t\t\t}\n \t\t}\n+\t\tif ($Git::SVN::_add_author_from && defined($author)\n+\t\t    && !$saw_from) {\n+\t\t\tprint $log_fh \"\\nFrom: $author\\n\"\n+\t\t\t      or croak $!;\n+\t\t}\n \t\tcommand_close_pipe($msg_fh, $ctx);\n \t}\n \tclose $log_fh or croak $!;\n@@ -1246,7 +1258,7 @@ use constant rev_map_fmt => 'NH40';\n use vars qw/$default_repo_id $default_ref_id $_no_metadata $_follow_parent\n             $_repack $_repack_flags $_use_svm_props $_head\n             $_use_svnsync_props $no_reuse_existing $_minimize_url\n-\t    $_use_log_author/;\n+\t    $_use_log_author $_add_author_from/;\n use Carp qw/croak/;\n use File::Path qw/mkpath/;\n use File::Copy qw/copy/;\n-- \n1.5.4.3\n"},{"id":"74507","messageId":"1208307858-31039-3-git-send-email-apenwarr@gmail.com","threadId":"13130","inReplyTo":"1208307858-31039-2-git-send-email-apenwarr@gmail.com","subject":"[PATCH 3/3] git-svn: add documentation for --add-author-from option.","fromName":"","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T01:04:18Z","receivedAt":"2008-04-16T01:04:18Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"From: Avery Pennarun <apenwarr@versabanq.com>\n\n\nSigned-off-by: Avery Pennarun <apenwarr@gmail.com>\n---\n Documentation/git-svn.txt |    6 ++++++\n 1 files changed, 6 insertions(+), 0 deletions(-)\n\ndiff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt\nindex 4ad567a..acd77eb 100644\n--- a/Documentation/git-svn.txt\n+++ b/Documentation/git-svn.txt\n@@ -65,6 +65,12 @@ COMMANDS\n \tWhen retrieving svn commits into git (as part of fetch, rebase, or\n \tdcommit operations), look for the first From: or Signed-off-by: line\n \tin the log message and use that as the author string.\n+--add-author-from;;\n+\tWhen committing to svn from git (as part of commit or dcommit\n+\toperations), if the existing log message doesn't already have a\n+\tFrom: or Signed-off-by: line, append a From: line based on the\n+\tgit commit's author string.  If you use this, then --use-log-author\n+\twill retrieve a valid author string for all commits.\n --username=<USER>;;\n \tFor transports that SVN handles authentication for (http,\n \thttps, and plain svn), specify the username.  For other\n-- \n1.5.4.3\n"},{"id":"74522","messageId":"7vej96v2pk.fsf@gitster.siamese.dyndns.org","threadId":"13130","inReplyTo":"1208307858-31039-2-git-send-email-apenwarr@gmail.com","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-04-16T04:33:11Z","receivedAt":"2008-04-16T04:33:11Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"apenwarr@gmail.com writes:\n\n> From: Avery Pennarun <apenwarr@versabanq.com>\n>\n> This adds a From: line (based on the commit's author information) when\n> sending to svn.  It doesn't add if a From: or Signed-off-by: header already\n> exists for that commit.\n\nI admit that I do not use git-svn, but I am confused.  Where are you\nadding that \"From:\"?  You grab a commit log message out of git (which does\nnot have such \"From:\", add such a line at the beginning of the commit\nmessage using the authorship information and send the resulting commit log\nmessage to svn?  Why?\n"},{"id":"74565","messageId":"32541b130804160946s343d53d2l271b9391d89a7953@mail.gmail.com","threadId":"13130","inReplyTo":"7vej96v2pk.fsf@gitster.siamese.dyndns.org","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Avery Pennarun","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T16:46:08Z","receivedAt":"2008-04-16T16:46:08Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"On 4/16/08, Junio C Hamano <gitster@pobox.com> wrote:\n> apenwarr@gmail.com writes:\n>  > This adds a From: line (based on the commit's author information) when\n>  > sending to svn.  It doesn't add if a From: or Signed-off-by: header already\n>  > exists for that commit.\n>\n> I admit that I do not use git-svn, but I am confused.  Where are you\n>  adding that \"From:\"?  You grab a commit log message out of git (which does\n>  not have such \"From:\", add such a line at the beginning of the commit\n>  message using the authorship information and send the resulting commit log\n>  message to svn?  Why?\n\nWhen git-svn copies a commit from git to svn, svn eats the authorship\ninformation; it always sets the svn author field to the username of\nthe person logged into the svn server.\n\nWith the (existing) --use-log-author option, git-svn will pull From:\nand Signed-off-by: lines from svn's log entries when pulling back into\ngit, which helps with this problem.  However, it only works with\ncommits that have a Signed-off-by: or From: already included.\n\nThe new option --add-author-from makes sure that every commit going\ninto svn *does* have a From: or a Signed-off-by: by adding one based\non the git Author field if it doesn't already exist.  Combined with\n--use-log-author, this reduces the information loss in a round trip\nthrough the svn server.  (And there's always a round trip, as \"git-svn\ndcommit\" throws away your pre-svn commits and replaces them with the\ncommit it has put into, then pulled out of, svn.)\n\nDoes that make sense?\n\nThanks,\n\nAvery\n"},{"id":"74569","messageId":"7v3aplsl3p.fsf@gitster.siamese.dyndns.org","threadId":"13130","inReplyTo":"32541b130804160946s343d53d2l271b9391d89a7953@mail.gmail.com","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-04-16T18:36:26Z","receivedAt":"2008-04-16T18:36:26Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Avery Pennarun\" <apenwarr@gmail.com> writes:\n\n> On 4/16/08, Junio C Hamano <gitster@pobox.com> wrote:\n>> apenwarr@gmail.com writes:\n>>  > This adds a From: line (based on the commit's author information) when\n>>  > sending to svn.  It doesn't add if a From: or Signed-off-by: header already\n>>  > exists for that commit.\n>>\n>> I admit that I do not use git-svn, but I am confused.  Where are you\n>>  adding that \"From:\"?  You grab a commit log message out of git (which does\n>>  not have such \"From:\", add such a line at the beginning of the commit\n>>  message using the authorship information and send the resulting commit log\n>>  message to svn?  Why?\n>\n> When git-svn copies a commit from git to svn, svn eats the authorship\n> information; it always sets the svn author field to the username of\n> the person logged into the svn server.\n\nLet me rephrase that to see if I understand what you are saying.  If you\nlook at the \"svn log\" output (not \"git svn log\"), you see that the result\nof \"git-svn dcommit\" does not record the same 'author' as git side does;\ninstead it uses whoever ran git-svn to propagate the commit to the SVN\nside.\n\n> With the (existing) --use-log-author option, git-svn will pull From:\n> and Signed-off-by: lines from svn's log entries when pulling back into\n> git, which helps with this problem.  However, it only works with\n> commits that have a Signed-off-by: or From: already included.\n\nAh, that is because the way the commit is propagated is (1) you read git\ncommit; (2) you make a corresponding SVN commit using the log message you\nread in step (1); (3) you read that SVN commit back, and create a _new_\ngit commit and replace what you read in step (1).  The new git commit is\nmarked with the authorship information you obtain from the SVN side,\nunless the commit log message you read back from the SVN side has these\nspecial markers (and you are using the --use-log-author option).\n\nIs that what is happening?\n\nAnd your solution is to add these markers in step (2).\n\nIf that is the case, I understand how and why this would work around the\nissue.  A possible downside with this approach is that such a commit in\nSVN (from SVN person's point of view) has extra information that is\nunusual in the log message part (namely \"From: \").\n\nIt makes me wonder if there is a better way.\n\nFor example, CVS honors LOGNAME to allow you to \"lie\" who the author of a\nchange was, which is the behaviour inherited from RCS.  I have to wonder\nif SVN has a similar mechanism to tell it \"Excuse me, but I am just a\nsecretary recording changes for my boss.\"\n\nBut perhaps there isn't and that was why you did it this way (and that is\nwhy --use-log-author was invented 5 months ago).  And the issue that the\ncommit on the SVN side has unusual (again, from SVN person's point of\nview) information not in the original commit on the git side might not be\nso grave, so it probably is Ok.\n\nEric? Sam?\n"},{"id":"74570","messageId":"32541b130804161145y5f377d27yecfb193fc378613b@mail.gmail.com","threadId":"13130","inReplyTo":"7v3aplsl3p.fsf@gitster.siamese.dyndns.org","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Avery Pennarun","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T18:45:04Z","receivedAt":"2008-04-16T18:45:04Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"On 4/16/08, Junio C Hamano <gitster@pobox.com> wrote:\n> Let me rephrase that to see if I understand what you are saying.  If you\n> look at the \"svn log\" output (not \"git svn log\"), you see that the result\n> of \"git-svn dcommit\" does not record the same 'author' as git side does;\n> instead it uses whoever ran git-svn to propagate the commit to the SVN\n> side.\n\nYes.\n\n> Ah, that is because the way the commit is propagated is (1) you read git\n> commit; (2) you make a corresponding SVN commit using the log message you\n> read in step (1); (3) you read that SVN commit back, and create a _new_\n> git commit and replace what you read in step (1).  The new git commit is\n> marked with the authorship information you obtain from the SVN side,\n> unless the commit log message you read back from the SVN side has these\n> special markers (and you are using the --use-log-author option).\n\nCorrect.\n\n> And your solution is to add these markers in step (2).\n>\n> If that is the case, I understand how and why this would work around the\n> issue.  A possible downside with this approach is that such a commit in\n> SVN (from SVN person's point of view) has extra information that is\n> unusual in the log message part (namely \"From: \").\n\nYes, that is a downside, although it's relatively harmless to us here.\n\n> For example, CVS honors LOGNAME to allow you to \"lie\" who the author of a\n> change was, which is the behaviour inherited from RCS.  I have to wonder\n> if SVN has a similar mechanism to tell it \"Excuse me, but I am just a\n> secretary recording changes for my boss.\"\n\nI'm not sure if such an official mechanism actually exists; I do know\nthat we're writing to the svn repository via ssh and group folder\naccess, so any attempt to prevent faking of usernames is not actually\nsecure.\n\nI'd be happy to use such a method if it exists, although this patch\nsolves my problem too (as well as acknowledging the difference between\nthe \"committer\" and the \"author\" as git does; theoretically it might\nbe *better* with this separation).\n\n> But perhaps there isn't and that was why you did it this way (and that is\n> why --use-log-author was invented 5 months ago).  And the issue that the\n> commit on the SVN side has unusual (again, from SVN person's point of\n> view) information not in the original commit on the git side might not be\n> so grave, so it probably is Ok.\n\nEspecially since it's optional.\n\nThanks,\n\nAvery\n"},{"id":"74574","messageId":"cac9e4380804161211h1f49dc0bg810cfa9c0d47af5d@mail.gmail.com","threadId":"13130","inReplyTo":"7v3aplsl3p.fsf@gitster.siamese.dyndns.org","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Richard Quirk","fromEmail":"richard.quirk@gmail.com","sentAt":"2008-04-16T19:11:56Z","receivedAt":"2008-04-16T19:11:56Z","isPatch":true,"sender":{"key":"richard.quirk@gmail.com","avatar":null},"body":"On Wed, Apr 16, 2008 at 8:36 PM, Junio C Hamano <gitster@pobox.com> wrote:\n\n>  For example, CVS honors LOGNAME to allow you to \"lie\" who the author of a\n>  change was, which is the behaviour inherited from RCS.  I have to wonder\n>  if SVN has a similar mechanism to tell it \"Excuse me, but I am just a\n>  secretary recording changes for my boss.\"\n\nThe author is stored as a property of the commit, so you can set alter\nit with something like `svn propset --revprop -r N svn:author NAME\nREPO_URL` providing you have server-side revision property changes\nenabled.\n"},{"id":"74576","messageId":"20080416192312.GF3133@dpotapov.dyndns.org","threadId":"13130","inReplyTo":"7v3aplsl3p.fsf@gitster.siamese.dyndns.org","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Dmitry Potapov","fromEmail":"dpotapov@gmail.com","sentAt":"2008-04-16T19:23:12Z","receivedAt":"2008-04-16T19:23:12Z","isPatch":true,"sender":{"key":"dpotapov@gmail.com","avatar":"https://avatars.githubusercontent.com/u/6568595?v=4"},"body":"On Wed, Apr 16, 2008 at 11:36:26AM -0700, Junio C Hamano wrote:\n> \n> It makes me wonder if there is a better way.\n> \n> For example, CVS honors LOGNAME to allow you to \"lie\" who the author of a\n> change was, which is the behaviour inherited from RCS.  I have to wonder\n> if SVN has a similar mechanism to tell it \"Excuse me, but I am just a\n> secretary recording changes for my boss.\"\n\nYes, there is such a mechanism:\n====\nRevision Property (revprop)\n\nJust as files can have properties, so can each revision in the\nrepository. Some special revprops are added automatically when the\nrevision is created, namely: svn:date svn:author svn:log which represent\nthe commit date/time, the committer and the log message respectively.\nThese properties can be edited, but they are not versioned, so any\nchange is permanent and cannot be undone. \n====\n\nSo, it is possible not only set the real author but also date/time.\nUnfortunately, there is one problem with this approach -- by default,\nthese properties are disabled from modification for security reasons.\nTo enable modification of these properties, the administrator is\nrequired to change some hooks. Personally, I have never observed any\nSVN repository where anyone was granted the right to change them. So,\nwhile it is possible, it is impractical.\n\n\nDmitry\n"},{"id":"74606","messageId":"48067C83.4020209@vilain.net","threadId":"13130","inReplyTo":"20080416192312.GF3133@dpotapov.dyndns.org","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Sam Vilain","fromEmail":"sam@vilain.net","sentAt":"2008-04-16T22:24:03Z","receivedAt":"2008-04-16T22:24:03Z","isPatch":true,"sender":{"key":"sam@vilain.net","avatar":"https://gravatar.com/avatar/8fc840ca854dbf6f7065b4335e3b934951c1dca3b11db688e95e471901f8f4a8?d=mp&s=160"},"body":"Dmitry Potapov wrote:\n> On Wed, Apr 16, 2008 at 11:36:26AM -0700, Junio C Hamano wrote:\n>   \n>> It makes me wonder if there is a better way.\n>>\n>> For example, CVS honors LOGNAME to allow you to \"lie\" who the author of a\n>> change was, which is the behaviour inherited from RCS.  I have to wonder\n>> if SVN has a similar mechanism to tell it \"Excuse me, but I am just a\n>> secretary recording changes for my boss.\"\n>>     \n>\n> Yes, there is such a mechanism:\n> ====\n> Revision Property (revprop)\n>\n> Just as files can have properties, so can each revision in the\n> repository. Some special revprops are added automatically when the\n> revision is created, namely: svn:date svn:author svn:log which represent\n> the commit date/time, the committer and the log message respectively.\n> These properties can be edited, but they are not versioned, so any\n> change is permanent and cannot be undone. \n> ====\n>\n> So, it is possible not only set the real author but also date/time.\n> Unfortunately, there is one problem with this approach -- by default,\n> these properties are disabled from modification for security reasons.\n> To enable modification of these properties, the administrator is\n> required to change some hooks. Personally, I have never observed any\n> SVN repository where anyone was granted the right to change them. So,\n> while it is possible, it is impractical.\n\nYes, and in fact with most shared SVN hosting services the users are \nleft with no option to do this.\n\nWhile there doesn't seem to be a command-line way to do this, it's \npossible that a commit \"editor\" making a new commit can create revision \nproperties without being necessarily subject to those restrictions. \nPossible, but I guess unlikely as it would then be inconsistent.\n\nThe usual thing is to dump the extra information in the commit message. \nSome projects, like Perl, were quite systematic about this and a lot of \nuseful author information is available. In fact, it was saved in the \nproposed form.\n\nWhile not the main thrust of this thread, the usual convention for \nmapping svn committers to names is a project AUTHORS file. This made me \nwonder whether allowing git-svn to take its author map from the \nrepository, such as from a revision property or a directory property of \nthe root or project would be a good idea.\n\nSam\n"},{"id":"74607","messageId":"32541b130804161534y33ac9b74jfa2ab81af5ee961c@mail.gmail.com","threadId":"13130","inReplyTo":"48067C83.4020209@vilain.net","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Avery Pennarun","fromEmail":"apenwarr@gmail.com","sentAt":"2008-04-16T22:34:12Z","receivedAt":"2008-04-16T22:34:12Z","isPatch":true,"sender":{"key":"apenwarr@gmail.com","avatar":"https://avatars.githubusercontent.com/u/20592?v=4"},"body":"On 4/16/08, Sam Vilain <sam@vilain.net> wrote:\n> The usual thing is to dump the extra information in the commit message.\n> Some projects, like Perl, were quite systematic about this and a lot of\n> useful author information is available. In fact, it was saved in the\n> proposed form.\n\nSo can we say that you have no objections to my patch? :)\n\nThanks,\n\nAvery\n"},{"id":"74613","messageId":"20080417043620.GA11600@soma","threadId":"13130","inReplyTo":"1208307858-31039-2-git-send-email-apenwarr@gmail.com","subject":"Re: [PATCH 2/3] git-svn: Add --add-author-from option.","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2008-04-17T04:36:20Z","receivedAt":"2008-04-17T04:36:20Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"apenwarr@gmail.com wrote:\n> From: Avery Pennarun <apenwarr@versabanq.com>\n> \n> This adds a From: line (based on the commit's author information) when\n> sending to svn.  It doesn't add if a From: or Signed-off-by: header already\n> exists for that commit.\n> \n> This, combined with --use-log-author, can retain the author field of commits\n> through a round trip from git to svn and back.\n> Signed-off-by: Avery Pennarun <apenwarr@gmail.com>\n\nThis seems like a useful feature for SVN projects and I've sometimes\nwanted it myself.  Thanks.\n\nOne thing, can you add some tests to ensure this continues working?  I\ndon't have lots of time to work on git-svn these days and if I do, I\nwant it to be easy to ensure I'm not breaking things :)\n\nThanks.\n\n-- \nEric Wong\n"}]}