[ 
https://issues.apache.org/jira/browse/SVN-3679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17504244#comment-17504244
 ] 

Daniel Sahlberg commented on SVN-3679:
--------------------------------------

Ok, thanks for clarifying. I've found the source for the manpage now. If it is 
indeed as simple as suggested by Jun, then we sould just remove the "undef" in 
the man page.

I've not found where get_commit_editor function is defined (in the bindings). 
The parameters doesn't match the C api so I guess there is some glue logic. 
[~jun66j5] or [~jamessan]?

[~mkuhn] Does your use case work if you remove the undef?

> Perl API SVN::Ra get_commit_editor* functions broken, missing, untested
> -----------------------------------------------------------------------
>
>                 Key: SVN-3679
>                 URL: https://issues.apache.org/jira/browse/SVN-3679
>             Project: Subversion
>          Issue Type: Bug
>          Components: bindings_swig_perl, docs
>    Affects Versions: 1.6.x
>            Reporter: Markus Kuhn
>            Priority: Minor
>             Fix For: unscheduled
>
>
> {noformat:nopanel=true}
> The test cases for the Perl API SVN::Ra at
>   bindings/swig/perl/native/t/6ra.t
> currently (as of 1.6.12) lack tests for functions needed to commit a change to
> the repository via the remote-access API layer. For starters, there are no 
> tests
> for get_commit_editor, get_commit_editor2, get_commit_editor3. (The SVN::Ra 
> man
> page even says that the author did not succeed in testing get_commit_editor,
> get_commit_editor2; get_commit_editor3 is not even listed.)
> When I try to use e.g. get_commit_editor2 as suggested in the SVN::Ra
> man page, I just get an error message like
>   TypeError in method 'svn_ra_get_commit_editor2', argument 5 of type
> 'svn_commit_callback2_t'
> A short example Perl script that reproduces this is attached below.
> Motivation: The remote-access layer API is very useful for applications (such 
> as
> Web CGI editors) that want to commit changes without the overhead and 
> disk-state
> involved with having to checkout a working directory first. Perl remains a
> popular CGI scripting language, which makes a well-tested, production-quality
> Perl SWIG binding for svn_ra.h highly desirable.
> See also:
> http://mail-archives.apache.org/mod_mbox/subversion-users/201007.mbox/browser
> http://svn.haxx.se/dev/archive-2010-07/0272.shtml
> How to reproduce TypeError:
> #!/usr/bin/perl
> use SVN::Core;
> use SVN::Ra;
> use SVN::Delta;
> my $ra = SVN::Ra->new('http://svn.apache.org/repos/asf/subversion/');
> my $path = 'trunk/BUGS';
> open($fh, '>', \$text) || die;
> my ($revnum, $props) = $ra->get_file($path, $SVN::Core::INVALID_REVNUM, $fh);
> close $fh || die;
> print "Revision: $revnum\n\n$text\n";
> my $logmsg = "test commit via the SVN:Ra Perl API";
> sub commit_callback {
>     my ($arg) = @_;
>     use Data::Dumper;
>     print STDERR "commit_callback(".Dumper($arg).")\n";
> }
> my $editor = SVN::Delta::Editor->new(
>     $ra->get_commit_editor2($logmsg, \&commit_callback, undef, {}, 0));
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to