[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Peg revision support for svn:externals

From: Hyrum K. Wright <hyrum_wright_at_mail.utexas.edu>
Date: 2007-02-20 21:15:21 CET

Vlad Georgescu wrote:
> Hi,
>
> Hyrum K. Wright wrote:
>> I've added support for peg revision syntax to svn:externals. It seemed
>> pretty straight forward, I just want to make sure that I haven't missed
>> anything. I'd appreciate any review.
>>
>> If I don't hear anything, I'll commit it in a day or two.
>>
> ...
>> + SVN_ERR(svn_opt_parse_path(&item->peg_revision, &item->url, item->url,
>> + pool));
>> + svn_opt_resolve_revisions(&item->peg_revision, &item->revision, TRUE,
>> + FALSE);
>> +
>> item->url = svn_path_canonicalize(item->url, pool);
>>
>> if (externals_p)
>> - APR_ARRAY_PUSH(*externals_p, svn_wc_external_item_t *) = item;
>> + APR_ARRAY_PUSH(*externals_p, svn_wc_external_item2_t *) = item;
>> }
>>
> ...
>> /* ... Hello, new hotness. */
>> - SVN_ERR(svn_client__checkout_internal(NULL, url, path, revision, revision,
>> + SVN_ERR(svn_client__checkout_internal(NULL, url, path, peg_revision, revision,
>> TRUE, FALSE, FALSE, timestamp_sleep,
>> ctx, pool));
>>
>
> The old code used the revision specified by -r as both a peg rev and an
> op rev, but now svn_opt_resolve_revisions will set the peg rev to HEAD
> for all existing externals definitions, which I think is a
> backward-incompatible change.

That is correct. There is precedent for doing this, though. We made
the same change when adding peg revision syntax to commands, such as
'svn copy' and 'svn log'.

-Hyrum

Received on Tue Feb 20 21:15:35 2007

This is an archived mail posted to the Subversion Dev mailing list.