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

Re: [PATCH] Issue 2646: Perl bindings for more client functions

From: Hyrum K. Wright <hyrum_wright_at_mail.utexas.edu>
Date: 2006-12-11 15:08:56 CET

Mattias Engdegård wrote:
> This patch exports more client API functions to Perl users. Please apply.
> This is issue 2646.
>
> (Generally, when an issue has an attached patch fixing it, should I
> change the issue type from DEFECT to PATCH? Would doing so increase
> the probability that someone actually applied it?)

Ping...

Has a committer familiar with the perl bindings had a chance to look at
Mattias's patch? If nobody comments in the next few days, I'll file an
issue.

-Hyrum

> [[
> Make many functions added since version 1.0 in the Client API visible
> to users of the Perl bindings. They are already swig-wrapped, just not
> exported. (issue 2646)
>
> * subversion/bindings/swig/perl/native/Client.pm
> Export more API functions, and refactor to avoid unnecessary repetition.
> ]]
>
> Index: subversion/bindings/swig/perl/native/Client.pm
> ===================================================================
> --- subversion/bindings/swig/perl/native/Client.pm (revision 22204)
> +++ subversion/bindings/swig/perl/native/Client.pm (working copy)
> @@ -5,12 +5,22 @@
> use SVN::Wc;
>
> package SVN::Client;
> -use SVN::Base qw(Client svn_client_ checkout update switch add mkdir delete
> - commit status log blame diff merge cleanup relocate
> - revert resolved copy move revprop_set propset
> - proplist revvprop_list export ls cat import propget
> - uuid_from_url uuid_from_path url_from_path revprop_get
> - revprop_list info);
> +my @_all_fns;
> +BEGIN {
> + @_all_fns = qw(add add3 blame blame3 cat cat2 checkout checkout2 cleanup
> + commit commit3 commit_item2_dup copy copy3 delete delete2
> + diff diff3 diff_peg3 diff_summarize diff_summarize_peg
> + export export3 import import2 info info_dup list lock
> + log log2 log3 ls ls3
> + merge merge2 merge_peg2 mkdir mkdir2 move move4
> + propget propget2 proplist proplist2 proplist_item_dup
> + propset propset2 relocate resolved revert
> + revprop_get revprop_list revprop_set
> + status status2 switch unlock update update2
> + url_from_path uuid_from_path uuid_from_url);
> + require SVN::Base;
> + import SVN::Base (qw(Client svn_client_), @_all_fns);
> +}
>
> =head1 NAME
>
> @@ -820,13 +830,7 @@
>
> # import methods into our name space and wrap them in a closure
> # to support method calling style $ctx->log()
> -foreach my $function (qw(checkout update switch add mkdir delete commit
> - status log blame diff merge cleanup relocate
> - revert resolved copy move revprop_set propset
> - proplist revvprop_list export ls cat import
> - propget uuid_from_url uuid_from_path
> - url_from_path revprop_get revprop_list
> - info))
> +foreach my $function (@_all_fns)
> {
> no strict 'refs';
> my $real_function = \&{"SVN::_Client::svn_client_$function"};

Received on Mon Dec 11 15:09:31 2006

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